Ansible部署
一,Ansible配置文件
1,Ansible配置文件位置
- /etc/ansible/ansible.cfg
- ~/.ansible.cfg
- ./ansible.cfg
使用执行ansible命令的目录中存在ansible.cfg文件 - 还可以使用ANSIBLE_CONFIG环境变量,自定义配置文件位置
2,Ansible配置文件优先级及规则
2.1,优先级由大到小为:
ANSIBLE_CONFIG>./ansible.cfg>~/.ansible.cfg>/etc/ansible/ansible.cfg
2.2,配置文件优先级规则
- 使用/etc/ansible/ansible.cfg
ansible软件包提供一个基本的配置文件,它位于/etc/ansible/ansible.cfg。如果找不到其他配置文件,则使用此文件。
- 使用~/.ansible.cfg
Ansible在用户的家目录中查找.ansible.cfg文件。如果存在此配置文件并且当前工作目录中也没有ansible.cfg文件,则使用此配置取代/etc/ansible/ansible.cfg。
- 使用./ansible.cfg
如果执行ansible命令的目录中存在ansible.cfg文件,则使用它,而不使用全局文件或用户的个人文件。这样,管理员可以创建一种目录结构,将不同的环境或项目存储在单独的目录中,并且每个目录包含为独特的一组设置而定制的配置文件。
推荐的做法是在需要运行Ansible命令的目录中创建ansible.cfg文件。此目录中也将包含任何供Ansible项目使用的文件,如清单和playbook。这是用于Ansible配置文件的最常用位置。实践中不常使用~/.ansible.cfg或/etc/ansible/ansible.cfg文件
- 使用ANSIBLE_CONFIG环境变量
我们可以通过将不同的配置文件放在不同的目录中,然后从适当的目录执行Ansible命令,以此利用配置文件。但是,随着配置文件数量的增加,这种方法存在局限性并且难以管理。有一个更加灵活的选项,即通过ANSIBLE_CONFIG环境变量定义配置文件的位置。定义了此变量时,Ansible将使用变量所指定的配置文件,而不用上面提到的任何配置文件。
二,查看帮助文档
查看帮助文档:ansible-doc -l
[root@lry ~]# ansible-doc -l
a10_server Manage A10 Networks AX/SoftAX/Thunder/vThun...
a10_server_axapi3 Manage A10 Networks AX/SoftAX/Thunder/vThun...
a10_service_group Manage A10 Networks AX/SoftAX/Thunder/vThun...
a10_virtual_server Manage A10 Networks AX/SoftAX/Thunder/vThun...
aci_aaa_user Manage AAA users (aaa:User)
aci_aaa_user_certificate Manage AAA user certificates (aaa:UserCert)
aci_access_port_block_to_access_port Manage port blocks of Fabric interface poli...
aci_access_port_to_interface_policy_leaf_profile Manage Fabric interface policy leaf profile...
可以使用grep进行过滤