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
回显内容略过