Ansible管理动态清单

文章目录

管理动态清单

受控主机比较少的情况下,建议是使用静态主机清单的,但当我们处于一个大型的环境下,受控主机非常非常多的时候,而且受控主机更替非常快的时候,我们使用静态主机清单就很难来管理了,我们使用动态的主机清单更便于我们管理了。

Ansible支持动态清单脚本,这些脚本在每当ansible执行时从这些类型的来源检索当前的信息,使清单能够实时得到更新。这些清单脚本是可执行的程序,能够从一些外部来源收集信息,并以JSON格式输出清单。

可以通过ansible-inventory -i 主机清单文件 --list 命令,将主机清单以JSON的格式显示出来

[student@ansible ansible]$ vim inventory
node1 myvar=111

[net]
node2

[webserver:children]
net

[student@ansible ansible]$ ansible-inventory -i inventory --list
    "_meta": {                           //_meta下记录着我们主机中是否定义变量
        "hostvars": {
            "node1": {
                "myvar": "111"
            }
        }
    },
    "all": {                             // all:列出我们所有的主机组
        "children": [                      
            "ungrouped",                
            "webserver"                  
        ]                                
    },
    "net": {                            //net主机组下的成员
        "hosts": [
            "node2"
        ]
    },
    "ungrouped": {                      //ungrouped主机组就是不属于任何主机组的主机的
        "hosts": [                        
            "node1"
        ]
    },
    "webserver": {
        "children": [
            "net"
        ]
    }
}

例:

[student@ansible ansible]$ vim  inventory.py
#!/usr/bin/env python3

'''
Example custom dynamic inventory script for Ansible, in Python.
'''

import os
import sys
import argparse
import json

class ExampleInventory(object):

    def __init__(self):
        self.inventory = {}
        self.read_cli_args()

        # Called with `--list`.
        if self.args.list:
            self.inventory = self.example_inventory()
        # Called with `--host [hostname]`.
        elif self.args.host:
            
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值