Ansible的Inventory管理
Ansible将可管理的服务器集合成为Inventory,Inventory的管理便是服务器的管理。
hosts文件的位置:
- /etc/ansible/hosts
- 在命令行通过-i参数指定
- 通过/etc/ansible/ansible.cfg中的Inventory参数指定
另外Ansible还支持从云服务器获取服务器列表,还可以从CMDB获取服务器列表,
列出服务器 --list-hosts
[root@zydev01 ~]# ansible all --list-hosts
hosts (3):
192.168.1.105
120.77.85.77
192.168.1.101
单独为主机定义参数
[dbsrvs]
10.10.1.101 mysql_port=3306
10.10.1.102 mysql_port=3307
组中组,和组参数
加上children的方式声明组中包含其它组
[atlanta]
host1
host2 [raleigh]
host2
host3 [southeast:children]
atlanta
raleigh [southeast:vars] #定义组的主机的参数
ansible_port=3235
some_server=foo.southeast.example.com
halon_system_timeout=30
self_destruct_countdown=60
escape_pods=2
mysql_port=3307
Inventory的参数分为行为参数(ansible默认的,如ansible_port)和自定义变量(mysql_port)
打印参数:

一些重要的行为参数:
- ansible_host SSH目的主机名或者IP
- ansible_port
- ansible_user SSH连接的用户名,默认当前用户
- ansible_ssh_pass
- ansible_ssh_private_key_file
- ansible_become 类似Linux的sudo
- ansible_become_user 切换到哪个用户下执行命令
使用正则表达式定义组和匹配组
定义组
[webservers]
www[01:50].example.com
[databases]
db-[a:f].example.com
匹配组
ansible web* -m ping
使用单独的目录管理服务器和群组的变量
如果服务器特变多,还用一个hosts管理服务器和变量将会很困难。
Ansible可以为每个服务器和群组创建独立的变量文件。
Ansible将依次从Playbook目录下,hosts文件所在目录和/etc/ansible目录下寻找group_varls和host_varsx下寻找变量文件。

192.168.1.106.yaml的内容如下:

需要注意的是hosts定义ini的格式,即“var = value”,使用独立的文件是“var:value”
Ansible的Inventory管理的更多相关文章
- 002.Ansible之Inventory文件
一 简介 在使用Ansible来批量管理主机的时候,通常我们需要先定义要管理哪些主机或者主机组,而这个用于管理主机与主机组的文件就叫做Inventory,也叫主机清单.该文件默认位于/etc/ansi ...
- Linux 运维工作中的经典应用ansible(批量管理)Docker容器技术(环境的快速搭建)
一 Ansible自动化运维工具 Python 在运维工作中的经典应用 ansible(批量管理操作) .安装ansible(需要bese epel 2种源) wget -O /etc/yum.rep ...
- Ansible实现批量管理服务器
Ansible介绍: a. ansible是一个基于Python开发的自动化运维工具b. ansible是一个基于ssh协议实现远程管理的工具c. ansible软件可以实现多种批量管理操作(批量系统 ...
- Ansible批量自动化管理工具
一,工具与环境介绍 1.1 ansible简介 批量管理服务器的工具 无需部署agent,通过ssh进行管理 流行的自动化运维工具:https://github.com/ansible/ansible ...
- Ansible批量自动化管理工具(二)
Ansible批量自动化管理工具(二) 链接:https://pan.baidu.com/s/1A3Iq3gGkGS27L_Gt37_I0g 提取码:ncy2 复制这段内容后打开百度网盘手机App,操 ...
- Ansible之 Inventory 资源清单介绍
一.Inventory 库存清单文件 1.Inventory 作用 Ansible 可以在同一时间针对多个系统设施进行管理工作.它通过选择Ansible 资源清单文件中列出的系统,该清单文件默认是在/ ...
- [转帖]Ansible批量远程管理Windows主机(部署与配置)
2018-09-12 12:04:42 https://blog.51cto.com/7424593/2174156 一.测试环境介绍 Ansible管理主机: 系统: CentOS6.8 IP ...
- ansible 开源批量管理服务器工具
Ansible 是一款基于 Python 开发的自动化运维工具,可以进行配置管理.批量部署等功能.对于机器较多的场景,可以使用 Ansible 来免去重复敲命令的烦恼. 安装ansibleyum -y ...
- Ansible 使用 Playbook 管理 Nginx 配置文件
前面我们已经安装完 Nginx,但是在日常维护中经常需要修改配置文件,并重新加载配置文件,因此来写一个管理 Nginx 配置文件的 Playbook: [root@localhost ~]$ mkdi ...
随机推荐
- Git安装遇到的问题fatal: Could not read from remote repository.的解决办法
转自:https://blog.csdn.net/huahua78/article/details/52330792 查看远端地址 git remote –v 查看配置 git config --li ...
- yizhihx ubuntu config
install shadowsocks:http://www.cnblogs.com/huangshiyu13/p/8973967.html download: https://pan.baidu.c ...
- Data truncation: Out of range value for column 'Quality' at row 1
Q: Data truncation: Out of range value for column 'Quality' at row 1 com.mysql.jdbc.MysqlDataTruncat ...
- e814. 创建一个可监听选择状态的菜单项
A menu item can receive notification of selection changes by overriding its menuSelectionChanged() m ...
- Ubuntu Server对OpenStack的支持
关于Ubuntu上OpenStack版本选择的问题, 就看这里. 从12.04 LTS起, Ubuntu云存档允许用户在下一个LTS版的Ubuntu发布前安装更新的OpenStack. 就拿Ubunt ...
- Keystone-all 命令
本文档介绍Icehouse版keystone-all命令 keystone-all命令在一个进程中同时启动服务和管理API,为openstack提供服务目录,授权和身份认证服务. 用法 $ keyst ...
- windows下Nginx与tomcat组合简单使用
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 项目中瓦片资源越来越多,如果提高瓦片的访问效率是一个需要解决的 ...
- 运行 Shell 脚本有两种方法:
1.作为可执行程序 将上面的代码保存为 test.sh,并 cd 到相应目录: chmod +x ./test.sh #使脚本具有执行权限 ./test.sh #执行脚本 注意,一定要写成 ./tes ...
- php + crontab 执行定时任务
1.yii2中的console <?php /** * @link http://www.yiiframework.com/ * @copyright Copyright (c) 2008 Yi ...
- Objective-C语法之指针型参数
main.m #import <Foundation/Foundation.h> /** * 测试指针型参数和普通参数的区别 * * @param a 指针型参数 * @param b 普 ...