首页 > 其他 > 详细

ansiblie命令基础

时间:2021-05-15 20:26:25      阅读:42      评论:0      收藏:0      [点我收藏+]

参数用途

        ansible -i   /home/admin/hosts

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

        ansible -f  10

          -f 指的是并发数,表示同时返回10台受控主机命令的结果 需要根据实际情况调整参数值提高ansible执行命令的并发度

        ansible -m yum -a "name=httpd state=latest"

          -m 指定调用的ansible模块

          -a 表示给调用的模块传递的参数

       主机别名

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

  ansible模块解释 

       命令模块 
           command shell 模块本质上执行的都是基础命令 默认是执行command模块
           command模块 不支持管道类型的命令
           shell模块 支持管道shell命令

           理论上ansible -m shell 可以执行任何远程命令操作,但是多次调用ansible -m shell命令的时候,ansible并不会判断是否重复在执行.而其他模块是可以先判断是否在重复操作。

       安装模块

            yum模块

              state字段

                absent        移除卸载指定包

                present       正常安装包

                latest           安装最新版本的包

       配置模块

             copy模块

                受控端主机必须存在相应的目录和文件,并且可以设置相应的文件权限和属主和属组.

               1.把控制端的一个被修改的文件推送到所有被控端的主机上
                   ansible appserver -m copy -a "src=/home/admin/a.conf dest=/etc/a.conf owner=root group=root mode=777 backup=yes"
               2.copy模块写入内容到远程主机的一个文件中
                  ansible appserver -m copy -a "content=helloword dest=/etc/a.conf"

             file模块

                 file模块和copy模块最大的不同是,copy模块只能拷贝和创建文件.file模块是为了创建和递归授权远程目录,而不是拷贝文件

                 ansible apperserver -m file -a "path=/etc/ owner=admin group=admin mode=777 recurse=yes"

                 state字段

                      touch          表示创建一个新文件

                      directory     表示创建一个新的目录

             get_url模块

                从网络上下载对应的文件下载到被控端的主机上

                 ansible appserver -m get_url -a "url=http://www.baidu/index.html dest=/etc/index.html  checksum=md5:7be4568"

                 url参数可以使用http,https,ftp等协议

                checksum参数可以检查网络文件是否被修改过

       服务管理模块

               service模块

               ansible appserver -m service -a "name=httpd state=started enabled=yes"

       用户管理模块

              user模块

                   创建和删除用户

              group模块

                   创建和删除用户组

        技术分享图片

       定时任务模块

      技术分享图片

       挂载模块

          mount

       技术分享图片

      防火墙模块

          selinux

          firewalld

       技术分享图片

ansiblie命令基础

原文:https://www.cnblogs.com/yxh168/p/14771069.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!