ansible--02

一。目录结构:

       

二。配置文件解析

      1. Inventory:主机列表配置文档

      2.ansible.cfg:可存放多地

        2.1 ansible读取此conf的顺序:当前命令执行目录-- >用户家目录-- >/etc/ansible.cfg

        2.2该文件遵循INI格式

        2.3 参数详解。。。

三。ansible常规两种命令用法详解

     (一)命令类型:

        1. Ad-Hoc:用于临时命令的执行

        2.Ansible-playbook:Ad-Hoc命令的集合

        with_items,failed_when,changed_when,until,ignore_error等逻辑条件,及Checkmode(模拟执行,不会对生产环境产生任何影响)

     (二)命令使用格式:'<>'必填,'[]'可选

        1.  ansible   <hotst-pattern>  [option]

            1.1 <hotst-pattern> :Inventory里的主机或主机组名称

            1.2 [option]:参数选项,有很多,列举常用的几个

                 -m 指定执行的模块

                 -u 指定远程主机以 -u的用户执行命令

                 -b 指定变换命令执行的账号,如果后面不接用户,即默认变换为root,如果后面接 -become-user,按此参数的账号执行

                 -become-user 指定变换的账号

                  eg: ansible all -m ping -u bruce -b -become-user derek

                         对all主机调用ping模块,用bruce的账号调sudo derek的权限执行

        2. ansible-playbook <playbook.yml> [option] 

            2.1 <playbook.yml> 事先编辑好的yml文件

            2.2 [option]:参数选项,有很多,列举常用的几个

                  -e 在playbook中引入外部变量

                  -i  指定要读取的inventory文件

                 --skip-tags=xx跳过指定的tags任务

                 --syntax-check 检查playbook中的语法书写

                 -t 指定执行某个tags任务 

        3. ansible-doc:模块文档说明,类似man

            ansible-doc -l 列出支持的模块

            ansible-doc ping ping模块的使用格式

四。ansible系列命令用法:

      。。。

五。Inventory配置及详解

      1.  默认/etc/ansible/hosts,可以有多个,用-i调取,且支持动态生成

      2. ini的文件风格,[xxx], 组名

      3. 可以为ip,也可以为能解析的hostname

      4. 如果主机ssh不是22端口,可以在ip或hostname后加:port

      5. 其他:相对比较复杂些

          5.1 主机和主机组变量

          5.2 嵌套组

      

 

posted on 2017-11-07 09:47  晓风残梦  阅读(226)  评论(0编辑  收藏  举报

导航