配置文件优先级(由高到低)
ansible的配置文件名为ansible.cfg
,默认会在四个地方(根据高/低优先级排序——从1到4):
ANSIBLE_CONFIG
:Ansible命令会优先检查该环境变量以及这个环境变量指向的配置文件./ansible.cfg
:当前工作目录,即当前执行ansible指令的目录,如果ANSIBEL_CONFIG环境变量(上一优先级配置文件)未定义,则优先使
用该配置文件~/.ansible.cfg
:用户家目录下的隐藏文件,若当前工作目录下不存在ansible.cfg配置文件(上一优先级目录中的文件),则会查找用户家目录下的该隐藏文件/etc/ansible/ansible.cfg
:默认配置文件,如果上面两个路径下的ansible.cfg都不存在,则使用该文件
Export 环境变量
:设置环境变量
Unset 环境变量
: 取消环境变量
文件管理层级
配置文件中设定清单文件路径
清单文件中设定组/用户
层层递进
ansible.cfg的配置默认分为十段:
[defaults];通用配置项
[inventory]:与主机清单相关的配置项
[privilege_escalation]:特权升级相关的配置项
[paramiko_connection]:使用paramiko连接的相关配置项,Paramiko在RHEL6以及更早的版本中默认使用的ssh连接方式
[ssh_connection]:使用OpenSSH连接的相关配置项,OpenSSH是Ansible在RHEL6之后默认使用的ssh连接方式
[persistant_connection]:持久连接的配置项
[accelerate]:加速模式配置项
[selinux]:selinux相关的配置项
[colors]:ansible命令输出的颜色相关的配置项
[diff]:定义是否在运行时打印diff(变更前与变更后的差异)