Inventory支持对主机进行分组,每个组内可以定义多个主机,每个主机都可以定义在任何一个或多个主机组内。
如果是名称类似的主机,可以使用列表的方式标识各个主机。
vim /etc/ansible/hosts
[webservers]
192.168.80.11:2222 #冒号后定义远程连接端口,默认是 ssh 的 22 端口
192.168.80.1[2:5] #[ ]中指定连续的范围
[dbservers]
db-[a:f].example.org #支持匹配 a~f
inventory 中的变量
Inventory变量名 含义
ansible_host ansible连接节点时的IP地址
ansible_port 连接对方的端口号,ssh连接时默认为22
ansible_user 连接对方主机时使用的用户名。不指定时,将使用执行ansible或ansible-playbook命令的用户
ansible_password 连接时的用户的ssh密码,仅在未使用密钥对验证的情况下有效
ansible_ssh_private_key_file 指定密钥认证ssh连接时的私钥文件
ansible_ssh_common_args 提供给ssh、sftp、scp命令的额外参数
ansible_become 允许进行权限提升
ansible_become_method 指定提升权限的方式,例如可使用sudo/su/runas等方式
ansible_become_user 提升为哪个用户的权限,默认提升为root
ansible_become_password 提升为指定用户权限时的密码
1)主机变量(横向表示)
[webservers]
192.168.20.11 ansible_port=22 ansible_user=root ansible_password=abc1234
(2)组变量(纵向表示)
[webservers:vars] #表示为 webservers 组内所有主机定义变量
ansible_user=root
ansible_password=abc1234
[all:vars] #表示为所有组内的所有主机定义变量
ansible_port=22
(3)组嵌套
[nginx]
192.168.20.20
192.168.20.21
192.168.20.22
[apache]
192.168.20.3[0:3]文章来源:https://www.toymoban.com/news/detail-831295.html
[webs:children] #表示为 webs 主机组中包含了 nginx 组和 apache 组内的所有主机
nginx
apache文章来源地址https://www.toymoban.com/news/detail-831295.html
到了这里,关于ansible inventory 主机清单的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!