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 ...
随机推荐
- 【转】Memcached之缓存雪崩,缓存穿透,缓存预热,缓存算法
缓存雪崩 缓存雪崩可能是因为数据未加载到缓存中,或者缓存同一时间大面积的失效,从而导致所有请求都去查数据库,导致数据库CPU和内存负载过高,甚至宕机. 解决思路: 1,采用加锁计数,或者使用合理的队列 ...
- Sword STL仿函数示例
一元函数 unary_function .有返回值. .只有一个参数. template <class Arg, class Result> struct unary_function { ...
- imx6 lvds0 lvds1 display
最近调试imx6的屏幕显示,笔记记录于此. 官方文档关于uboot参数的介绍: sin和dul参数已经测试过,sep和spl还没有验证成功. 1 单屏显示 说明:输入命令并按确定键, 观察系统启动过程 ...
- linux系统下的缺失 libstdc++.so.6: version’GLIBCXX_3.4.20’的问题:
在linux下遇到了一个这样的问题,使用anaconda时,它的安装库里的文件被提示:缺失 libstdc++.so.6: version’GLIBCXX_3.4.20’.后来经过查看资料知道了原来是 ...
- Bind 和 ScaffoldColumn
今天看了music MVC源码看到这么一段代码 Bind 和 ScaffoldColumn [MetadataType(typeof(FormMetaData))] public partial cl ...
- gradle 的安装
前言: 我不是一个勤奋好学的人,奔着新技术就跑去尝试学习.但是在工作或者学习的过程中,遇到了的技术,还是得一个坎一个坎的迈过去.把今天遇到的坎变成明天的垫脚石. 想学习一下 spring 的源码,然后 ...
- jquery 实现 Json 的一些转换方法
有一个json 字符串 1)要判断该字符串是否是 json 格式 方法:将其转换成json对象,如果报异常,则不是,否则就是json格式 function isJsonFormat(str) { tr ...
- css 手机适配
手淘H5移动端适配方案flexible源码分析 移动端适配一直是一个值得探讨的问题,在业余时间我找了一些页面,查看了一些厂商对于移动端H5页面的适配方案,看到了几个典型的例子,今天就来记录一下我看 ...
- VS2012:升级Update2和Update3均告损坏,重装方法
My steps (after backing up everything before deleting it): 1. Uninstalled VS2012 Pro from Windows 8 ...
- gtest运行小析
Gtest是google推出的C++测试框架,本篇文档,从整体上对Gtest的运行过程中的关键路径进行分析和梳理. 分析入口 新建一个最简单的测试工程,取名为source_analyse_proj,建 ...