zoukankan      html  css  js  c++  java
  • ansible 主机正则

    ansible <pattern> -m <module_name> -a <arguments>

    该功能主要针对Inventory的主机列表,案例如下:

    1、ALL(全量匹配)

    说明:匹配所有主机,all或者*号,两个功能相同,只是*号需要使用双引号引起来。

    // 匹配所有主机
    ansible all -m ping
    ansible "*" -m ping

    // 匹配某个网段
    ansible 192.168.4.* -m ping

    2、逻辑或(or)匹配

    如希望对多个主机或者多个组进行执行,相互之间用冒号分割。

    ansible  192.168.4.46:192.168.4.50 -m ping

    3、逻辑非(!)匹配

    主要针对多重条件的匹配规则。

    //所有在zookeeper里面的机器,但不在hadoop里面的机器被匹配到。需要使用单引号。
    ansible 'zookeeper:!hadoop' -m ping
    不使用引号或者使用单引号会报错。

    [root@manager1 data 10:51:57]#ansible 'zookeeper:!hadoop' -m ping
    192.168.4.46 | SUCCESS => {
    "ansible_facts": {
    "discovered_interpreter_python": "/usr/bin/python"
    },
    "changed": false,
    "ping": "pong"
    }
    [root@manager1 data 10:52:41]#ansible "zookeeper:!hadoop" -m ping
    -bash: !hadoop": event not found
    [root@manager1 data 10:53:45]#ansible zookeeper:!hadoop -m ping
    -bash: !hadoop: event not found

    4、逻辑与(&)匹配

    针对多重条件的匹配。

    //zookeeper组和hadoop组中同时存在的机器。需要引号(单引号,双引号都行。)
    ansible "zookeeper:&hadoop" -m ping

    5、多条件组合

    //webservers和dbservers两个组中的所有机器在staging组中存在,但不存在与phoenix。
    ansible 'webservers:dbservers:&staging:!phoenix' -m ping

    6、模糊匹配

    *通配符表示0个或者多个任意字符,主要用于一些模糊匹配。

    //所有以192.168开头的主机
    ansible 192.168.* -m ping

    7、域切割或者索引

    Ansible底层基于Python,因此也支持域切割,eg:

    //主机清单配置如下:
    [webservers]
    cobweb
    webbing
    weber
    通过截取数组下标可以获得对应的变量值
    webservers[0] # ==cobwb
    webservers[-1] #==weber

    8、正则匹配

    //~开始表示正则匹配。
    ~(web|db).*.example.com
    检测以192.168开头的主机
    ansible ~192.168.[0-9].[0-9]{2} -m ping
  • 相关阅读:
    windows笔记进程的句柄
    windows笔记创建线程的函数CreateThread
    c#实现从其他网站抓取imei码信息,手工输入验证码
    Linux下自动修改用户密码的方法(直接通过命令而不是在终端输入密码)
    Redis学习笔记List数据类型
    在Linux(centos)上安装PHP的mongodb扩展
    CI(codeigniter)如何防止sql注入
    MongoDB增加用户认证: 增加用户、删除用户、修改用户密码、读写权限、只读权限
    Sublime Text编辑器如何显示顶部的菜单栏
    C#图片选择器
  • 原文地址:https://www.cnblogs.com/yjt1993/p/10966421.html
Copyright © 2011-2022 走看看