在这整个ansible配置中,最值得我们关注的是配置文件、主机列表文件,
Ansible 配置
/etc/ansible/ansible.cfg ##ansible 配置文件,保留默认即可
[defaults]
#inventory = /etc/ansible/hosts #主机列表配置文件
#library = /usr/share/my_modules/ #库文件存放目录
#remote_tmp = $HOME/.ansible/tmp #生成的临时py命令文件存放在远程主机的目录
#local_tmp = $HOME/.ansible/tmp #本机的临时命令执行日志
#forks = 5 #默认的并发数
#poll_interval = 15 #默认的线程池
#sudo_user = root #默认sudo用户
#ask_sudo_pass = True
#ask_pass = True
#transport = smart
#remote_port = 22
#module_lang = C
#module_set_locale = False
#host_key_checking = False 检查对应服务器的host_key,建议改成False,
#log_path = /var/log/ansible.log ansible 日志路径
[defaults] 默认配置
[privilege_escalation] 秘钥配置
[paramiko_connection] 通讯 连接配置
[ssh_connection] ssh 连接配置
[accelerate] 加速选项
[selinux] 安全上下文配置
[colors]
/etc/ansible/hosts #主机清单配置文件
#直接使用IP地址
192.168.134.37
#使用主机名+主机变量
saltstack-node1.example.com ansible_ssh_host=192.168.134.37
#使用主机分组
[test]
saltstack-node1.example.com ansible_ssh_host=192.168.134.37
saltstack-node2.example.com ansible_ssh_host=192.168.134.38
#test组指定变量
[test:vars]
ansible_ssh_port=22
ansible_ssh_user=admin
#ansible_become_pass=redhat
#ansible_become_method=su
#ansible_become_user=root
#使用基础正则匹配
[filter]
saltstack-node[1:2].example.com
变量文件目录
/etc/ansible/host_vars 【存放变量文件】
/etc/ansible/group_vars 【存放变量文件】
提示:当对应的名字为目录,则ansible会读取该目录下的所有文件
文件样例:
变量内容:
ntp_server: ntp.example.com
目录类型:
/etc/ansible/gropu_vars/db_settings
/etc/ansible/host_vars/web_settings
ansible 配置文件生效的优先级
* ANSIBLE_CONFIG
* ansible.cfg
* .ansible.cfg
* /etc/ansible/ansible.cfg
2.7 14:00