ansible-playbook 修改主機的host解析
注:ansible 主機同被控主機的互信配置忽略,不在本次討論的范圍內。
1、增加ansible host被控主機信息
[root@ansible-server ansible_playbook_temple]# more ansiblehosts [ansible_hosts] 192.168.1.10 192.168.1.11 192.168.1.12 192.168.1.13 192.168.1.14
2、測試是否正常
[root@ansible-server ansible_playbook_temple]#ansible ansible_hosts -i ansiblehosts -m ping 192.168.1.10 | SUCCESS => { "changed": false, "ping": "pong" } 192.168.1.11 | SUCCESS => { "changed": false, "ping": "pong" } 192.168.1.12 | SUCCESS => { "changed": false, "ping": "pong" } 192.168.1.13 | SUCCESS => { "changed": false, "ping": "pong" } 192.168.1.14 | SUCCESS => { "changed": false, "ping": "pong" }
3、操作被控主機的host解析,通過ansible-playbook
增加host解析腳本
[root@ansible-server ansible_playbook_temple]# more add_hosts.yaml --- - hosts: ansible_hosts remote_user: root tasks: - name: add hosts lineinfile: path: /etc/hosts state: present line: "10.10.10.100 www.wanghengzhi.com" - name: test hosts shell: ping -c2 www.wanghengzhi.com register: result failed_when: false - name: "show result" debug: msg: "{{result.stdout_lines}}"
運行方式
[root@ansible-server ansible_playbook_temple]#ansible-playbook add_hosts.yaml -i ansiblehosts
回顯內容略過
修改host解析腳本
[root@ansible-server ansible_playbook_temple]# more replace_hosts.yaml --- - hosts: ansible_hosts remote_user: root tasks: - name: replace hosts lineinfile: path: /etc/hosts regexp: "10.10.10.100 www.wanghengzhi.com" line: "#10.10.10.100 www.wanghengzhi.com" - name: test hosts shell: ping -c2 www.wanghengzhi.com register: result failed_when: false - name: "show result" debug: msg: "{{result.stdout_lines}}"
運行方式
[root@ansible-server ansible_playbook_temple]#ansible-playbook replace_hosts.yaml -i ansiblehosts
回顯內容略過
刪除host解析腳本
[root@ansible-server ansible_playbook_temple]# more del_hosts.yaml --- - hosts: ansible_hosts remote_user: root tasks: - name: del hosts lineinfile: path: /etc/hosts state: absent line: "10.10.10.100 www.wanghengzhi.com" - name: test hosts shell: ping -c2 www.wanghengzhi.com register: result failed_when: false - name: "show result" debug: msg: "{{result.stdout_lines}}"
運行方式
[root@ansible-server ansible_playbook_temple]#ansible-playbook del_hosts.yaml -i ansiblehosts
回顯內容略過