【一篇非常好的ansible參考博文】
初識Ansible http://liumissyou.blog.51cto.com/4828343/1616462
-------------------------------------------------------------------
練習ansible的playbook配置,血淚斑斑啊,yaml的語法真挑戰老程序員的常規思維,整個兒各種角度破壞性顛覆。
列出一路艱辛踩過和遇到的坑窪:
- 1)此貨嚴格按左對齊的層次區分上下級;
舉個例子--此例子目標用playbook配置的key變量值替換掉 hosts中指定的變量。
hosts主機配置,注意key
-------------------
[local] 192.168.52.102 key=ansible-host 192.168.52.101 key=ansible-node
variable.yaml文件,錯格式
- hosts: local gather_facts: False vars: key: Ansible tasks: - name: display Host Variable from hostfile debug: msg=" The {{ inventory_hostname }} Value is {{ key }}"
執行后,江山一片紅叉叉的顏色。。。

以上是報錯截圖,直接報出來 hosts有錯(大騙子!!!),在對hosts各種角度摧殘調整無效后,各種資料查找和翻書才知道,被一個空格給坑了。
正確的代碼
- hosts: local gather_facts: False vars: key: Ansible tasks: - name: display Host Variable from hostfile debug: msg=" The {{ inventory_hostname }} Value is {{ key }}"

[root@localhost ansible_playbook]# ansible-playbook variable.yaml PLAY [local] ******************************************************************* TASK [display Host Variable from hostfile] ************************************* ok: [192.168.52.102] => { "msg": " The 192.168.52.102 Value is Ansible" } ok: [192.168.52.101] => { "msg": " The 192.168.52.101 Value is Ansible" } PLAY RECAP ********************************************************************* 192.168.52.101 : ok=1 changed=0 unreachable=0 failed=0 192.168.52.102 : ok=1 changed=0 unreachable=0 failed=0
