zoukankan      html  css  js  c++  java
  • ansible-playbook 修改主机的host解析

    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 

    回显内容略过

  • 相关阅读:
    linux下的exec命令
    jenkins+gitlab+maven+docker部署项目之jenkins用户权限管理
    油候插件grant的使用
    python deepcopy的替代方案
    starletter代码示例
    mac使用pytorch
    Mac ERROR:root:code for hash md5 was not found.
    scrapy-redis分布式爬虫实战
    mac进行redis5.0单机集群笔记
    合并两个有序的链表Python和Go代码
  • 原文地址:https://www.cnblogs.com/xzlive/p/14086438.html
Copyright © 2011-2022 走看看