主机清单
文件位置
- 默认位置:
/etc/ansible/hosts
- 自定义主机清单位置:
- 在
/etc/ansible/ansible.cfg
配置文件中修改
···
inventory = /etc/ansible/hosts
···
- 在Ansible执行命令时,使用参数指定主机清单的位置:
ansible-playbook -i hosts site.yml
ansible-playbook --inventory-file hosts site.yml
远程主机分组
- 使用
[]
对远程主机进行分组 - 使用
[父组:子组]
的方式创建嵌套组 - [all]代表所有组
设置连接参数
- 可以在inventory文件中配置每一个链接的连接参数
- 连接参数包含:密码、端口、用户名、连接方式等
变量
配置单台主机的变量
- 在inventory文件中,每一个主机名的后面配置单独的变量
配置组变量
- 使用[组名:vars]为一个或者多个组(all配置所有组)配置变量
存储变量
- 变量文件可以放在主机组inventory文件的同目录下的
host_vars
或者group_vars
中 - 变量文件的文件名可以是:
- 变量文件内容需要符合yaml或者是json的命名规范
- 变量文件的文件夹可以放在inventory或者playbook对应的文件夹下
- 如果inventory和playbook两个目录下都存在变量文件夹,playbook目录下的值是优先读取的