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 指定服务器的其他语言编译器路径
posted @ 2022-04-19 08:59  爱和可乐的w  阅读(38)  评论(0编辑  收藏  举报