例項學習ansible系列(16)playbook中自定義環境變數的使用
阿新 • • 發佈:2018-12-24
在前面的文章中我們使用過環境變數, 但是使用者自定義或者隨時export出來的環境變數卻無法直接引用,而這種方式卻是實際工作中用到的最多的情況,使用ansible提供的lookup便可解決這個問題.
定義一個環境變數並export:# export MESSAGE="hello world information"
- 1
準備一個簡單的playbook用於使用此環境變數
[root@host31 ~]# cat hello.playbook
- hosts: host31
gather_facts: false
tasks:
- name: say hello task
shell: echo ${HOSTNAME} {{ lookup('env','MESSAGE') }} `date` by `hostname` >/tmp/hello.log
[root@host31 ~]#
- 1
- 2
- 3
- 4
- 5
- 6
- 7
執行
[[email protected] ~]# ansible-playbook hello.playbook
PLAY [host31] ********************************************* *********************
TASK [say hello task] **********************************************************
changed: [host31]
PLAY RECAP *********************************************************************
host31 : ok=1 changed=1 unreachable=0 failed=0
[[email protected] ~]#
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
結果確認:可以看到環境變數MESSAGE的內容已被替換
[root@host31 ~]# cat /tmp/hello.log
host31 hello world information Sun Aug 28 19:52:06 EDT 2016 by host31
[root@host31 ~]#
- 1
- 2
- 3
再分享一下我老師大神的人工智慧教程吧。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到我們人工智慧的隊伍中來!https://www.cnblogs.com/captainbed