首页 > 其他分享 >三、主机清单

三、主机清单

时间:2023-12-13 17:33:07浏览次数:18  
标签:-- 主机 list 192.168 ansible hosts 清单

三、主机清单

​ 在使用Ansible来批量管理主机的时候,通常我们需要先定义要管理哪些主机或者主机组而这个用于管理主机与主机组的文件就叫做Inventory,也叫主机清单。该文件默认位于/etc/ansible/hosts。当然我们也可以通过修改ansible配置文件的Inventory配置项来修改默认inventory的位置。

3.1 定义主机和组

  • 主机:可以使用域名、主机名、ip地址方式来表示
  • 组:使用[groupname]表示,中括号内的标识为组名
  1. 普通方式定义

    web01
    web02
    [webservers]
    node1
    node2
    node3
    192.168.1.100
    [db]
    db1.example.com
    db2.example.com
    192.168.1.101
    

    在上面的例子中,定义了一个webservers组,组中有node1、node2、node3和192.168.1.100四台主机;还定义了一个db组,组中有db1.example.com、db2.example.com、192.168.1.101三台主机;web01、web02不属于任何组。

可以使用ansible all --list-hosts来查看主机

[redhat@master ansible]$ ansible all --list-hosts
  hosts (9):
    web01
    web02
    node1
    node2
    node3
    192.168.1.100
    db1.example.com
    db2.example.com
    192.168.1.101
  1. 定义主机范围

    当需要添加的主机数量特别多,且具有连续特征,可以按范围进行定义:如

    [webservers]
    web[01:50]
    [db]
    db[1:50].example.com
    [cache]
    192.168.1.[100:120]
    [backup]
    backup-[a:z].example.com
    
  • web[01:50]:表示web01-web50共50台主机
  • db[1:50].example.com:表示db1.example.com到db50.example.com共50台主机
  • 192.168.1.[100:120]:表示192.168.1.100到192.168.1.120共20台主机
  • backup-[a:z].example.com:表示backup-a.example.com到backup-z.example.com共26台主机
[redhat@master ansible]$ ansible cache --list-hosts
  hosts (21):
    192.168.1.100
    192.168.1.101
    192.168.1.102
    192.168.1.103
    192.168.1.104
    192.168.1.105
    192.168.1.106
    192.168.1.107
    192.168.1.108
    192.168.1.109
    192.168.1.110
    192.168.1.111
    192.168.1.112
    192.168.1.113
    192.168.1.114
    192.168.1.115
    192.168.1.116
    192.168.1.117
    192.168.1.118
    192.168.1.119
    192.168.1.120
  1. 定义嵌套组

    组的嵌套,需要在组名后边加上children关键字。

    [redhat@master ansible]$ cat hosts 
    [webserver]
    web01
    web02
    [db]
    db1
    db2
    [servers:children]
    webserver
    db
    [servers]
    node1
    [redhat@master ansible]$ ansible servers --list-hosts
      hosts (4):
        node1
        web01
        web02
        db1
        db2
    

3.2 选择主机与组

  1. 匹配所有主机

    ansible all --list-hosts
    
  2. 匹配指定的主机或组

    # 匹配webserver组
    ansible webserver --list-hosts
    
    # 匹配node1主机
    ansible node1 --list-hosts
    
    # 匹配不属于任何组的主机
    ansible ungrouped --list-hosts
    
  3. 通配符匹配

    ansible node* --list-hosts
    ansible 192.168.1.* --list-hosts
    ansible db*.example.com --list-hosts
    
  4. 组合条件匹配

  • ,:条件连接符,连接多个规则

  • &:前面的条件还必须满足当前条件才能被选择

  • !:此规则匹配到的主机或组,将不被选择

    # 匹配多个主机多个组
    ansible node*,webserver,server[a:c] --list-hosts
    
    # 匹配主机db1,web01并且还在db组中
    ansible 'db1,web01,&db' --list-hosts
    
    # 匹配webserver组中的所有主机,将server5排除
    ansible 'webserver,!server5' --list-hosts
    

由于有特殊字符,所以需要将表达式用单引号引起来。

  1. 正则表达式匹配

    正则表达式匹配需要用单引号引起来,且需要在正则表达式前面加~符号。

    [redhat@master ansible]$ ansible '~^(db|ser).*2' --list-hosts
      hosts (2):
        server2
        db2
    

标签:--,主机,list,192.168,ansible,hosts,清单
From: https://www.cnblogs.com/xxth/p/17899566.html

相关文章

  • k8s资源清单
    k8s资源清单再安装好k8s之后,本章开始学习k8s的具体使用玩法。重点介绍如何使用Workload管理业务应用的生命周期,实现服务不中断的滚动更新,通过服务发现和集群内负载均衡来实现集群内部的服务间访问,并通过ingress实现外部使用域名访问集群内部的服务。学习过程中会逐步对Djang......
  • 配置VMware令主机与虚拟机位于局域网同一网段
    1.VMWare版本2.宿主机信息3.虚拟机信息很顺利,没有遇到问题。参考:https://blog.csdn.net/weixin_45467056/article/details/112930163......
  • 金翅雀相关画作金翅雀书中名画清单
    金翅雀相关画作金翅雀书中名画清单,2023-1211b``````````````````````````````````````网址链接--BeyondtheBird:ADefinitiveListoftheArtworksin‘TheGoldfinch’https://themillions.com/2015/08/beyond-the-bird-art-in-the-goldfinch.html金翅雀中出现过的画作https......
  • 通过宿主机查看K8S或者是容器内的Java程序的简单方法
    通过宿主机查看K8S或者是容器内的Java程序的简单方法背景最近一个项目的环境出现了cannotcreatenativeprocess的错误提示出现这个错误提示时,dockerexec或者是kubeexec进入容器/POD内部后,无法使用jstack等的命令.然后想简单查看一下问题原因都无从下手.这次......
  • RCU补丁审查清单 【ChatGPT】
    https://www.kernel.org/doc/html/v6.6/RCU/checklist.htmlRCU补丁审查清单本文档包含了一个用于生成和审查使用RCU的补丁的清单。违反以下列出的任何规则都会导致与省略锁原语相同类型的问题。这份清单基于审查这类补丁的经验,经历了相当长的一段时间,但总是欢迎改进!RCU是否......
  • kali中使用nmap命令扫描网段主机
        Nmap(“NetworkMapper”)是一个免费的开源(许可)实用程序,用于网络发现和安全审计。许多系统和网络管理员还发现它对网络清单、管理服务升级计划以及监控主机或服务正常运行时间等任务很有用。Nmap以新颖的方式使用原始IP数据包来确定网络上可用的主机、这些主机提供的......
  • Linux 内核补丁提交的清单 【ChatGPT】
    https://www.kernel.org/doc/html/v6.6/process/submit-checklist.html这是一个关于Linux内核补丁提交的清单,开发者如果想要更快地看到他们的内核补丁被接受,应该做一些基本的事情。这些事情都超出了《Documentation/process/submitting-patches.rst》和其他关于提交Linux......
  • 2199元起 铭凡新款迷你主机UN1270上市:i7-12700H、支持PD供电
    铭凡迷你主机UN1270目前已上市开售,到手仅需2199元。设计上,这款迷你主机的体积仅为0.9升,为标准台式机的1/40,采用静音风扇,满载43db,待机32db。处理器采用的是i7-12700H,拥有6性能核+8能效核的混合CPU架构,14核心20线程。睿频可达4.7GHz,可实现55W性能释放。此外,这款迷你主机支持3屏......
  • vSAN集群添加宿主机报错问题处理
    背景:1、新增宿主机到vsan集群,服务器网口只有4个,所以规划vsan和管理关联到标准交换机(vsan的适配器MTU-9000、管理的适配器MTU-1500)--使用两个网口、vmotion和业务vlan关联到分布式交换机---使用两个网口;2、在往vsan集群添加宿主机的时候,新的宿主机HA状态一直停留在选举阶段;且vsan......
  • 1、zabbix通过函数实现多个主机宕机告警
    在用云厂商+idc机房的时候,网络环境比较复杂,会出现一些未知的网络上的波动造成一些影响。我们通过监控可以去监控主机是不是可用的,网络如果出现问题可能会出现批量的告警。这个时候我们需要电话告警来升级,可以实现的方式有很多。下面我们通过zabbix的函数来实现zabbix6.0.1的实现......