ansible inventory 主机清单

Inventory支持对主机进行分组,每个组内可以定义多个主机,每个主机都可以定义在任何一个或多个主机组内。

如果是名称类似的主机,可以使用列表的方式标识各个主机。

vim /etc/ansible/hosts

webservers

192.168.80.11:2222 #冒号后定义远程连接端口,默认是 ssh 的 22 端口

192.168.80.12: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.30:3

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

nginx

apache

相关推荐
HideF9 小时前
Linux sudo
linux
FlightYe10 小时前
视界原理之3D视频(四):裸眼、眼镜和头显
android·linux·c++·3d·ffmpeg·音视频
蹊黎10 小时前
Linux 下用 C 语言实现进度条
linux·c语言·单片机
知已难寻11 小时前
03 · OpenStack的计算管理 Nova
运维·服务器·开发语言·云原生·云计算·openstack·开源软件
huainingning12 小时前
Windows syslog日志服务器搭建与模拟器对接
运维·服务器·智能路由器
牛马鸡niumasi12 小时前
【Linux】C语言文件操作
linux
say_fall12 小时前
【Linux系统编程】Ext 文件系统:磁盘与存储、文件与目录、现代计算机究竟如何寻找文件
linux·运维·服务器·数据库·c++
wacsii13 小时前
【Linux进程(一)】Linux 进程初探:操作系统如何管理进程?fork() 为什么返回两次?
linux·运维·服务器
共享家952713 小时前
408 操作系统第一章
服务器·数据库·windows
AI+程序员在路上13 小时前
RV1126B 上支持的模型及全流程应用--从CNN及语音到 LLMVLM 与跨平台选型
linux·c语言·人工智能