zoukankan      html  css  js  c++  java
  • ansible基础理论

    ansible架构

            ansible是一个IT自动化配置管理工具。能够实现安装  配置 管理 多个主机上的服务

            ansible只能在python2.7环境下执行 系统默认的python2.7不能升级为python3.否则ansible的模块不能正常执行
             控制端和受控端主机上都必须安装python2.7
            ansible的运行原理是把指定的python模块通过ssh协议从主控端拷贝到受控端执行

            ansible是一个无中心节点的架构 主节点和从节点没有心跳连接检查 主节点上只保存了一个受控端的主机清单 只有在执行ansible命令的时候才会通过ssh协议对被控端进行连接
            即使主节点宕机,只要把主机清单拷贝到其他主机同时新主节点和被控节点能够进行ssh连接即可正常运行

           ssh传输协议

                ssh协议是基于tcp连接的协议

                tcp 保存模块文件传输的可靠性

                 ssh协议保证传输数据的安全性

    ansible术语解释

            ansible inventory   主机清单    主机清单可以是静态的文件 也可以是动态生成的json数据

            ansible Ad-hoc      ansible的模块

            ansible playbook   ansible剧本

          

    ansible使用公钥认证授权

            主控端的public SSH key必须在这些受控端系统中的``authorized_keys``中
            必须要把主控端生成的公钥分发到各个受控端节点

             

              

             

              

    ansible主机清单

             静态主机清单方式

                192.168.1.1
                192.168.1.1:9200
                 jumper ansible_ssh_port=5555 ansible_ssh_host=192.168.1.50 通过"jumper"别名,会连接192.168.1.50:5555
                 www[01:50].example.com
                 db-[a:f].example.com

                  

             动态主机清单方式

               使用配置管理系统经常有一种需求,可能要在其他的软件系统中保存自己的inventory配置信息

               

              ansible -i /home/admin/hosts -m ping webserver
              -i 指定本地的hosts主机清单文件
             如果不使用 -i 指定hosts 默认会去用 /etc/ansible/hosts清单文件

             [webserver]
               web01 192.168.1.1
               mysql 192.168.1.2
              ansible以别名的方式来对受控端进行区分,IP地址太多的时候分不清各个IP的用途

               

     ansible正则匹配

          在Ansible中,Patterns 是指我们怎样确定主控端机器和哪些受控端主机进行交互

           ansible webservers -m service -a "name=httpd state=restarted"
           ansible <pattern_goes_here> -m <module_name> -a <arguments>
           ansible webservers:dbservers:&staging:!phoenix -m service -a "name=httpd state=restarted"
           ansible-playbook site.yml --limit datacenter2

    ansible取消ssh认证

            

  • 相关阅读:
    [原创] 为Visio添加公式编辑器工具栏按钮
    Matlab 图论最短路问题模型代码
    「SCOI2011」「LOJ #2441」 棘手的操作
    「APIO2012」「Luogu P1552」派遣
    「JLOI2015」「LOJ #2107」城池攻占
    「Wallace 笔记」LOJ 「数列分块入门」 9 题题解
    「Codeforces 235C」Cyclical Quest
    「Codeforces 1037H」Security
    「UVA 11468」Substring
    「LOJ #2102」「TJOI2015」弦论
  • 原文地址:https://www.cnblogs.com/yxh168/p/14763176.html
Copyright © 2011-2022 走看看