一、ansible 命令集
`/usr/bin/ansible` Ansibe AD-Hoc 临时命令执行工具,常用于临时命令的执行
`/usr/bin/ansible-doc` Ansible 模块功能查看工具
`/usr/bin/ansible-galaxy` 下载/上传优秀代码或Roles模块 的官网平台,基于网络的
`/usr/bin/ansible-playbook` Ansible 定制自动化的任务集编排工具
`/usr/bin/ansible-vault` Ansible 文件加密工具
`/usr/bin/ansible-console` Ansible基于Linux Consoble界面可与用户交互的命令执行工具
`/etc/ansible/roles` 角色存放处
`/usr/bin/ansible-pull` Ansible远程执行命令的工具,拉取配置而非推送配置(使用较少,海量机器时使用,对运维的架构能力要求较高)
二、ansible-doc 命令常用于获取模块信息及其使用帮助,一般用法如下:
ansible-doc -l #获取全部模块的信息
ansible-doc -s MOD_NAME #获取指定模块的使用帮助
三、ansible 命令详解
命令的具体格式如下:
ansible <host-pattern> [-f forks] [-m module_name] [-a args]
`-a MODULE_ARGS` #模块的参数,如果执行默认COMMAND的模块,即是命令参数,如: “date”,“pwd”等等
`-k`,`--ask-pass` #ask for SSH password # 登录密码,提示输入SSH密码而不是假设基于密钥的验证
`--ask-su-pass` #ask for su password。 # su切换密码
`-K`,`--ask-sudo-pass` #ask for sudo password。 # 提示密码使用sudo,sudo表示提权操作
`--ask-vault-pass` #ask for vault password。 # 假设我们设定了加密的密码,则用该选项进行访问
`-B SECONDS` #后台运行超时时间
`-C` #模拟运行环境并进行预运行,可以进行查错测试
`-c CONNECTION` #连接类型使用
`-f FORKS` #并行任务数,默认为5
`-i INVENTORY` #指定主机清单的路径,默认为`/etc/ansible/hosts`
`--list-hosts` #查看有哪些主机组
`-m MODULE_NAME` #执行模块的名字,默认使用 command 模块,所以如果是只执行单一命令可以不用 -m参数
`-o` #压缩输出,尝试将所有结果在一行输出,一般针对收集工具使用
`-S` #用 su 命令
`-R SU_USER` #指定 su 的用户,默认为 root 用户
`-s` #用 sudo 命令
`-U SUDO_USER` #指定 sudo 到哪个用户,默认为 root 用户
`-T TIMEOUT` #指定 ssh 默认超时时间,默认为10s,也可在配置文件中修改
`-u REMOTE_USER` #远程用户,默认为 root 用户
`-v` #查看详细信息,同时支持`-vvv`,`-vvvv`可查看更详细信息