Inventory
说明
Inventory类管理资产的一个东西,会定义一些主机、主机组等,然后通过Ansible去匹配相应的主机执行命令,是通用ini格式
目录
- inventory
- vars_plugins
- init.py 描述inventory,主要是通过脚本、文件、文件夹、自定义的方式去解析inventory
- dir.py 通过目录解析配置,即变成主机组变量这些玩意儿
- expand_hosts.py # 解析主机名中 [a-z] [1-3] 这种
- group.py 组类,包含主机信息变量等信息
- host.py 主机类
- ini.py 解析配置类 通过文件,这里是自己写的方法,没用那种ini解析
- script.py 这里是解析SheBang(#!)即我们说的外部方式从CMDB从脚本方式等
group 字典型
group_name = {
"depth" : depth,
"name" : name,
"hosts" : [host, host, host], # 这里的host为host类的实例,看host类分析
"vars" : {
"key1" : "value1",
"key2" : "value2",
},
"child_groups" : [
group, # 这里的group就是我们自己,一种深度的方式
group,
group,
],
"parent_group" : [
group, # 这里的group就是我们自己
group,
group ,
],
# 这里的host为所有的子组子组的host的集合,
# 代表这个组包含的所有主机
"_hosts_cache" : [host, host, host]
}
host 字典型
host_name = {
"name" : name,
"port" : port,
"vars" : {
"key", "value",
},
"groups" : [group, group, group]
}