前情提要:管理清单(Iventory)配置文件/etc/ansible/hosts。通过修改该配置文件以达到管理受控主机的目的。

       在我的实验平台上有3台主机:192.168.232.181(ansible控制中心)、192.168.232.182(受控主机)、192.168.232.100(受控主机)

1.ping命令初探

  现在想通过ansible控制中心管理182和100两台主机,只需要在管理清单中添加主机记录(IP地址)就行。

修改配置信息后,可通过之前的命令进行验证,示例如下:

[root@ansible-control /]# ansible 192.168.232.182 -m ping

[root@ansible-control /]# ansible 192.168.232.100 -m ping

以上是使用命令分别去ping管理清单中的主机IP,这样在实际生产中操作会比较麻烦,所以可以使用字段“all”来一次性ping管理清单中的所有IP地址。示例如下:

[root@ansible-control /]# ansible all -m ping

2.通过IP地址配置受控主机

  2.1自定义字段(分组管理主机)

  修改管理清单配置文件(/etc/ansible/hosts),示例如下(这是一个错误的示范):组名不要使用特殊字符!

由于我在组名的命名使用了特殊字符,导致系统报错,如下:

经过重新修改管理清单配置文件,示例如下:

上述配置我定义了2个组(A组和B组),A组内拥有主机192.168.232.182的IP地址,B组内拥有主机192.168.232.100的IP地址,可以根据实际生产需要随意往组内添加主机IP。此时我们可以通过“组名”去批量管理组内的主机,示例如下:

[root@ansible-control /]# ansible A -m ping

[root@ansible-control /]# ansible B -m ping

如果组内的主机IP地址是连续的,可以这样操作,效果和以上的一样,修改管理清单配置文件,示例如下:

[A]
192.168.232.[182:200]   #表示A组内有主机IP地址从192.168.232.182~192.168.232.200

[B]
192.168.232.100

3.通过主机名配置受控主机

  前提是ansible控制主机可以正确解析出受控主机的主机名。通过主机名配置受控主机,修改管理清单配置文件,示例如下:

优化管理清单配置文件,由于A组中Oneplus-后是按字母顺序排列的,所以,精简配置,示例如下:

4.使用关键字children灵活管理主机

  在实际生产中,服务器环境一般存在“生产环境”和“测试环境”,所以很自然地把主机分成了两组,生产组和测试组,在生产组中又会有很多模块,例如A生产组模块、B生产组模块等,同理测试组也是如此。组别合理划分,有利于我们有针对性的操作,需要哪些组就调用哪些组,这样比较精准。

[proA]
192.168.232.182

[proB]
192.168.232.100

[pro:children]  #组名为pro,关键字段children表示pro组中的是组。

proA

proB

以上配置信息等效于,示例如下:

[proA]
192.168.232.182

[proB]
192.168.232.100

[pro]
192.168.232.182
192.168.232.100

ansible笔记(2):管理清单配置详解的更多相关文章

  1. 缓存varnish的管理及配置详解

    一 工作原理 在当前主流的Web服务架构体系中,Cache担任着越来越重要的作用.常见的基于浏览器的C/S架构,Web Cache更是节约服务器资源的关键.而最近几年由FreeBSD创始人之一Kamp ...

  2. ansible笔记(2):清单配置详解

    上一篇文章介绍了ansible的基本概念,以及相关的基础配置,我们已经知道,如果想要管理受管主机,则需要将受管主机添加到ansible的管理清单中,当安装ansible以后,会提供一个默认的管理清单, ...

  3. ansible学习(二)- 清单配置详解

    出处:http://www.zsythink.net/archives/2509 上一篇文章介绍了ansible的基本概念,以及相关的基础配置,我们已经知道,如果想要管理受管主机,则需要将受管主机添加 ...

  4. 学习笔记——Maven settings.xml 配置详解

    文件存放位置 全局配置: ${M2_HOME}/conf/settings.xml 用户配置: ${user.home}/.m2/settings.xml note:用户配置优先于全局配置.${use ...

  5. 学习笔记——Maven pom.xml配置详解

    POM的全称是“ProjectObjectModel(项目对象模型)”. pom.xml详解 声明规范 <projectxmlns="http://maven.apache.org/P ...

  6. Spring声明式事务管理与配置详解

    转载:http://www.cnblogs.com/hellojava/archive/2012/11/21/2780694.html 1.Spring声明式事务配置的五种方式 前段时间对Spring ...

  7. 笔记:MyBatis XML配置详解

    MyBatis 的配置文件包含了影响 MyBatis 行为甚深的设置(settings)和属性(properties)信息.文档的顶层结构如下: configuration 配置 properties ...

  8. 笔记:Spring Boot 配置详解

    Spring Boot 针对常用的开发场景提供了一系列自动化配置来减少原本复杂而又几乎很少改动的模板配置内容,但是,我们还是需要了解如何在Spring Boot中修改这些自动化的配置,以应对一些特殊场 ...

  9. commons-logging和Log4j 日志管理/log4j.properties配置详解

    commons-logging和Log4j 日志管理 (zz) 什么要用日志(Log)? 这个……就不必说了吧. 为什么不用System.out.println()? 功能太弱:不易于控制.如果暂时不 ...

随机推荐

  1. eclipse配置文件出现小红叉,Referenced file contains errors (xml文件第一行小红叉错误)

    原文链接:https://blog.csdn.net/zlj1217/article/details/61432437                                          ...

  2. script标签引入脚本的引入位置与效果

    用script标签引入脚本的引入位置大致有两种情况: 1,在head中引入: 2,在body末尾引入: 浏览器由上到下解析代码,正常情况下,先解析head中的代码,在解析body中的代码:放在head ...

  3. vue必须掌握之组件通信(7种方法)

    方法一:$emit / props 父组件通过props的方式向子组件传递,子组件通过$emit触发父组件中v-on绑定的自定义事件 <!--父组件--> <template> ...

  4. Switch The LED Holiday Light To Illuminate The Cheerful Holidays

    I like how LED holiday lights add a little magic to the holidays. Want an easy way to reduce your va ...

  5. 机器学习笔记(十一)OCR技术的应用

    1.介绍OCR: OCR(Photo optical character recognition 照片光学字符识别) 应用于读取电子照片中的文字. 2.算法思路: ① 识别文字区域: ② 字符切分: ...

  6. Wannafly Camp 2020 Day 5A Alternative Accounts

    There are n different accounts on the website, and some of them competed in the recent k contests. H ...

  7. Ubutu安装oracle jdk1.8

    环境: Ubuntu 18.04 LTS x64位 系统用户  hou 工具: jdk-8u171-linux-x64.tar.gz 实验的心 步骤: 第一步: 查看有没有装jdk,按住  ctr+a ...

  8. Jmeter-功能概要

    1.Jmeter工具组成部分 (1)资源生成器:用于生成测试过程中服务器.负载机的资源代码.(LR中的VuGen) (2)用户运行器:通常是一个脚本运行引擎,根据脚本要求模拟指定的用户行为.(LR中的 ...

  9. 解决ASP.Net第一次访问慢的处理 IIS 7.5

    1.先安装ApplicationInitialization Module for IIS 7.5(微软发布的针对针对前期的IIS单独模块),再安装ApplicationInitialization ...

  10. Codeforces Round #601 (Div. 2) D Feeding Chicken

    //为了连贯,采取一条路形式,从第一行开始 也就是s型 #include <bits/stdc++.h> using namespace std; ; char str[MAXN][MAX ...