ansibls Playbooks

Playbooks

顧名思義,playbooks就像劇本同樣,將你要作的事情先定義好,而後經過它來執行。這也是ansible一個強大的地方,能夠經過它來作些複雜的應用部署。html

舉個例子:apache


[root@test-201 ~]# cat test-playbook
服務器

- hosts: test  tasks:ide

- name: 確認apache是否在運行service: name=httpd state=started12345spa

這是個很簡單的playbooks,首先它指定了要操做的主機組是test,定義了一個名稱:確認apache是否在運行,執行pkg=httpd state=latest動做。 
執行以下命令ansible-playbook test-playbook,效果以下:debug



[root@test-201 ~]# ansible-playbook test-playbook orm


PLAY [test] ********************************************************************TASK [setup] *******************************************************************htm

ok: [10.2.31.203]ip


TASK [確認apache是否在運行] ***********************************************************文檔

ok: [10.2.31.203]


PLAY RECAP *********************************************************************

10.2.31.203                : ok=2    changed=0    unreachable=0    failed=0123456789101112



playbooks中文文檔: http://ansible-tran.readthedocs.io/en/latest/docs/playbooks.html


小技巧:

1.有時候若是想直接操做某臺服務器,但又沒有在hosts裏定義這臺服務器時,能夠使用以下命令:

ansible all -i ‘服務器ip,’ 
注意服務器ip後面要加個,

如 
ansible all -i ‘10.2.31.201,’ -u test -k -a ‘uptime’

2.有時候我忘記配了哪些主機和組,我又不想看配置文件,有沒有什麼命令查看?

顯示全部的組

ansible localhost -m debug -a 'var=groups.keys()'1

顯示全部的組和主機

ansible localhost -m debug -a 'var=groups'
相關文章
相關標籤/搜索