知识点:Ansible中通过多层次的ansible.cfg的设定,利用不同目录结构下的配置文件的作用域,还可以结合ANSIBLE_CONFIG环境变量进行自行指定,较为方便和灵活。
环境准备
[root@host131 ~]# ansible --version
ansible 2.4.2.0
config file = /etc/ansible/ansible.cfg
configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python2.7/site-packages/ansible
executable location = /usr/bin/ansible
python version = 2.7.5 (default, Oct 30 2018, 23:45:53) [GCC 4.8.5 20150623 (Red Hat 4.8.5-36)]
[root@host131 ~]#
注:从这篇文章开始Ansible的版本为2.4.2.0,一般来说版本影响不大。
配置文件:ansible.cfg
配置文件 | 路径 | 作用域说明 | 优先度 |
---|---|---|---|
系统级配置文件 | /etc/ansible/ansible.cfg | 为系统级别的设定文件,对所有用户起效 | 最低 |
用户级配置文件 | ~/ansible.cfg | 为用户级设定文件,对当前用户起效 | 高于系统级配置文件 |
当前运行应用级配置文件 | ./ansible.cfg | 当前运行的playbook等所指定的配置文件,对当前执行操作起效 | 高于用户级配置文件 |
ANSIBLE_CONFIG环境变量指定配置文件 | export ANSIBLE_CONFIG=配置文件路径 | 当前运行的playbook等所指定的配置文件,对当前执行操作起效 | 高于当前路径下的ansible.cfg配置文件 |