参考链接:https://www.cnblogs.com/iois/p/6403761.html

ansible主机组的使用,我们在对一个集群进行管理的时候集群会有很多角色,在执行统一命令操作的时候我们需要对所有组进行批量操作,这个时候就需要我们的主机组了

1)主机组怎么配置呢?

Inventory文件遵循ini文件风格,[]标记分组,方便对机器列表的管理

vim /etc/ansible/hosts文件

#inventory file例子,可在这里添加主机名hostname或者ip地址

#未分组的主机,添加在最前面

122.19.45.201

hostname1

122.19.45.[1:10] #[1:10]表示所有1~10之间的数字,表示一组ip地址45.1、45.2、... #分组管理的主机,以便对不同主机进行不同的管理,同一主机可同时属于不同组

[test0] #组名

122.28.13.100

122.19.61.68:5030 #如果主机ssh端口不是22,可在地址后加:指定

[targets1]

localhost ansible_connection=local 122.28.13.10 ansible_connection=ssh ansible_ssh_user=user #指定连接类型和连接用户名

[targets2] #可配置主机变量

host1 http_port=80 host2 http_port=80 var2=xxx var3=xxx

[targets2:var] #添加关键字var,配置组变量,对属于该组的所有主机都适用

var4=xxx

var5=xxx

[targets3:children] #添加关键字children,把组作为其他组的子成员

targets1

targets2

2)主机组配置后怎么使用呢?

定义好inventory(资产)文件后,通过

1. 命令行: ansible <host-pattern> [options]

2. playbook: - hosts <host-pattern>

其中<host-pattern>部分指定对哪些机器或分组执行任务

ansible targets1 -m shell -a "hostname"

3)主机类别的正则匹配有哪些呢?

ansible支持主机列表的正则匹配

  • 全量: all/*
  • 逻辑或: :
  • 逻辑非: !
  • 逻辑与: &
  • 切片: []
  • 正则匹配: 以~开头

ansible all -m ping #所有默认inventory文件中的机器

ansible "*" -m ping #同上

ansible 121.28.13.* -m ping #所有122.28.13.X机器

ansible web1:web2 -m ping #所有属于组web1或属于web2的机器

ansible web1:!web2 -m ping #属于组web1,但不属于web2的机器

ansible web1&web2 -m ping #属于组web1又属于web2的机器

ansible webserver[0] -m ping #属于组webserver的第1台机器

ansible webserver[0:5] -m ping #属于组webserver的第1到4台机器

ansible "~(beta|web)\.example\.(com|org)" -m ping

ansible资产配置的更多相关文章

  1. Python调用ansible API系列(二)执行adhoc和playbook

    执行adhoc #!/usr/bin/env python # -*- coding: utf-8 -*- import sys from collections import namedtuple ...

  2. 如何利用ansible callback插件对执行结果进行解析

    最近在写一个批量巡检工具,利用ansible将脚本推到各个机器上执行,然后将执行的结果以json格式返回来. 如下所示: # ansible node2 -m script -a /root/pyth ...

  3. 《Ansible权威指南》笔记(2)——Inventory配置

    四.Inventory配置ansible通过Inventory来定义主机和组,使用时通过-i指定读取,默认/etc/ansible/hosts.可以存在多个Inventory,支持动态生成.1.定义主 ...

  4. useful Ansible commands

    This article includes some useful Ansible commands. I will try to write blogs by English. You may wa ...

  5. 《Ansible权威指南》笔记(4)——Playbook

    七.Playbook1.语法特性如下:(1)"---"首行顶格开始(2)#号注释(3)缩进统一,不同的缩进代表不同的级别,缩进要对齐,空格和tab不能混用(4)区别大小写,键值对k ...

  6. 《Ansible权威指南》笔记(3)——Ad-Hoc命令集,常用模块

    五.Ad-Hoc命令集1.Ad-Hoc命令集通过/usr/bin/ansible命令实现:ansible <host-pattern> [options]    -v,--verbose  ...

  7. 《Ansible权威指南》笔记(1)——安装,ssh密钥登陆,命令

    2016-12-23 读这本<Ansible权威指南>学习ansible,根据本书内容和网上的各种文档,以及经过自己测试,写出以下笔记.另,这本书内容很好,但印刷错误比较多,作者说第二版会 ...

  8. 自动化运维工具ansible部署以及使用

    测试环境master 192.168.16.74webserver1 192.168.16.70webserver2 192.168.16.72安装ansiblerpm -Uvh http://ftp ...

  9. Ansible Ubuntu 安装部署

    一.安装: $ sudo apt-get install ansible 二.配置: a.基本配置 $ cd /etc/ansible/ $ sudo cp hosts hosts_back 备份一个 ...

随机推荐

  1. 调参贝叶斯优化(BayesianOptimization)

    from sklearn.datasets import make_classification from sklearn.model_selection import cross_val_score ...

  2. WindowsService(Windows服务)开发步骤

    https://www.cnblogs.com/moretry/p/4149489.html

  3. strcmp()字符串比较函数用法

    函数原型: int strcmp(const char *s1, const char *s2); 头文件: #include <string.h> 功能: 用来比较两个字符串 参数: s ...

  4. 内网环境使用ansible安装software 需要外网时,如何绑定代理呢

    内网环境使用ansible安装software 需要外网时,如何绑定代理呢? 方法一: 在ansible 的脚本里,yum install 的地方,添加语句: environment: https_p ...

  5. python学习记录-机器学习

    首先安装了anaconda3软件,安装的是最新版,安装时勾选了写入环境变量,支持的是python3.7.3版本. 然后设置了清华大学的镜像,主要是用管理员身份运行 anaconda prompt命令行 ...

  6. 学习笔记77—Iphone集

    ****************************************************** 如有谬误,请联系指正.转载请注明出处. 联系方式: e-mail: heyi9069@gm ...

  7. suse源

    zypper addrepo -f http://mirrors.vbi.vt.edu/mirrors/linux/opensuse/discontinued/distribution/11.4/re ...

  8. Servlet之Filter

    一 .过滤器(filter) 处于客户端与服务器资源文件之间的一道过滤网,在访问资源文件之前,通过一系列的过滤器对请求进行修改.判断等,把不符合规则的请求在中途拦截或修改.也可以对响应进行过滤,拦截或 ...

  9. 雷林鹏分享:jQuery EasyUI 数据网格 - 创建复杂工具栏

    jQuery EasyUI 数据网格 - 创建复杂工具栏 数据网格(datagrid)的工具栏(toolbar)可以包含按钮及其他组件. 您可以通个一个已存在的 DIV 标签来简单地定义工具栏布局,该 ...

  10. locust启动命令

    locust运行测试脚本 locust -f .\load_test.py --host=https://www.baidu.com -f 指定性能测试脚本文件. --host 指定被测试应用的URL ...