Ansible_01_inventory

Ansible的inventory文件用于管理服务器信息,包括SSH可达的服务器、别名设定和hosts文件。群组通过[]进行管理,允许定向任务执行。组变量允许为特定群组设置变量,可应用于主机或所有群组。行为参数如ansible_ssh_host、ansible_ssh_port等控制SSH连接配置。这些参数可在ansible.cfg中预设,默认值如22端口、root用户等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Ansible_01_inventory

inventory

inventory:提供管理服务器信息的文件

1)Ansible只能管理能够成功连接SSH的服务器

2)每台服务器都需设置别名,以便Ansible识别和管理

3)常在playbook的同级目录下创建hosts文件充当inventory文件


inventory文件需知:

1)inventory文件为.ini文件格式

2)inventory文件的默认值是/etc/ansible/hosts

3)Ansible默认将localhost添加到inventor文件中

4)inventory文件中至少含有一个服务器信息,否则会因异常终止

//显示添加localhost格式:localhost ansible_connection=local

//会直接与本机通信,但不会与本机建立SSH连接


群组

inventory文件通过“[]”以群组管理各个服务器

1)中括号中的字符串作为组名,task可仅针对特定组执行;

2)可定义由群组和服务器组成的群组(指定群组名);

3)all*代表inventory文件中所有群组;

//也可通过“[]”正则表达式的范围指定多个服务器


组变量:仅能适用于特定群组的变量(主机变量可适用于所有组)

1)变量值仅可设置为布尔型和字符串;

2)Ansible会在host_varsgroup_vars目录分别查找主机变量和组变量;

3)需将host_vars和group_vars目录创建在inventory文件的同级目录下;

//主机变量和组变量也可直接定义在inventory文件中


组变量的定义格式:

[组名:vars]
变量名1=值1
变量名N=值N

1)[all:vars]代表主机变量(所有群组);

2)若使用YAML的字典格式定义,则使用方式也需改变;


行为参数

行为参数:指定通过SSH连接服务器的配置信息

1)行为参数的默认值由ansible.cfg文件指定;

常用行为参数如下:

行为参数含义
ansible_ssh_host指定主机IP/域名
ansible_ssh_port指定SSH连接的端口号 (默认值22)
ansible_ssh_user指定使用SSH连接的用户名 (默认值root)
ansible_ssh_pass指定SSH连接所使用的密码
ansible_private_key_file指定SSH连接所使用的密钥
ansible_connection指定连接模式 (默认值smart)
ansible_shell_type指定SSH连接后所使用的Shell解释器 (默认值sh)
ansible_python_interpreter指定服务器的Python解释器路径 (默认值/usr/bin/python)
ansible_*_interpreter指定服务器的其他语言编译器路径
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值