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认证

            

  • 相关阅读:
    常用正则表达式
    java中的异或运算
    Eclipse 中,web项目在Tomcat运行时填写不了Server name
    错误: 找不到或无法加载主类 tomcat-juli.jar
    Hadoop学习之Ubuntu12.04 Hadoop 环境搭建笔记
    ubuntu安装 cober 笔记
    Ubuntu中安装JDK
    对象调用很容易忽视的地址问题
    2018.09.27_练习时的tips
    网页的组成(一)
  • 原文地址:https://www.cnblogs.com/yxh168/p/14763176.html
Copyright © 2011-2022 走看看