ansible inventory 主机清单

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]

[webs:children] #表示为 webs 主机组中包含了 nginx 组和 apache 组内的所有主机

nginx

apache

相关推荐
w_outlier12 分钟前
UDP_TCP
linux·c++·网络协议·udp·tcp
豆是浪个24 分钟前
Linux(Centos 7.6)命令详解:ls
linux·运维·服务器
Mr.kanglong26 分钟前
【Linux】传输层协议UDP
linux·运维·udp
cui_win42 分钟前
Linux性能优化-系列文章-汇总
linux·网络·安全·性能优化
新知图书44 分钟前
Linux C/C++编程-获得套接字地址、主机名称和主机信息
linux·运维·服务器
猫猫的小茶馆1 小时前
【数据结构】栈与队列(FIFO)
linux·c语言·数据结构·算法·链表
丁总学Java1 小时前
在 macOS 上,你可以使用系统自带的 终端(Terminal) 工具,通过 SSH 协议远程连接服务器
服务器·macos·ssh
XWXnb62 小时前
Makefile介绍
linux·运维·服务器
撸码到无法自拔2 小时前
72 mysql 的客户端和服务器交互 returnGeneratedKeys
运维·服务器·数据库·mysql
JavaPub-rodert2 小时前
项目48:简易语言学习助手【源代码】 --- 《跟着小王学Python·新手》
服务器·开发语言·python·学习·microsoft