ansible动态inventory获取主机列表
来源:互联网 发布:thug life软件下载 编辑:程序博客网 时间:2024/05/28 15:08
ansible,默认是调用/etc/ansible/hosts配置的主机组,同时我们也可以通过 -i 参数指定我们自己的hosts文件配置
hosts配置文件如下:
{ "zbxpython": { "host":['SV0390','SSBSV00116','SV0379'] } "zbxadd":['10.12.19.80','10.12.19.82','10.12.19.83']}上面的hosts文件对应的json字符串就是这样的,zbxpython为组名,下面[ ] 内为机器列表
简单例子:
脚本文件:inv.py
#!/usr/bin/python# encoding:utf-8import jsonaa={ "zbxpython": { "host":['SV0390','SSBSV00116','SV0379'] }, "zbxadd":['10.12.19.80','10.12.19.82','10.12.19.83']}print json.dumps(aa)#!/usr/bin/python 表示指定/usr/bin/python来执行此程序,而不需用python inv.py 这种方式执行,有了这句直接可以用./inv.py就可以运行该文件,但必须赋予该文件可执行权限
其实主要就是拼接好指定的字符串,然后在用json.dumps(aa)输出就行,
ansible执行命令:
[autorun@monitor001 ansible]$ ansible -i inv.py abxadd -m shell -a "hostname"其中zbxadd指定我们的组名
结果:
附:我自己遇到的一个问题,在windos下写好的脚本传到linux上面,执行提示找不到文件或目录,其实这个问题是文件编码的问题
vi inv.py 输入:set ff 可以查看该文件的编码
可以看到fileformat=dos 我们需要通过 :set ff =unix 或set fileformat = unix 改变文件的编码就可以解决该问题
1 0
- ansible动态inventory获取主机列表
- ansible 动态生成Inventory
- ansible动态inventory
- [ansible] Ansible Inventory Manager
- ansible之inventory文件
- ansible inventory.py 脚本
- ansible inventory文件 定义host
- ansible的inventory文件含义
- ansible——inventory文件
- ansible获取主机信息并存入mysql数据库
- ansible小结(三)Inventory与Patterns
- ansible小结(五)Dynamic Inventory
- Ansible之 Inventory 资源清单介绍
- Ansible之 Inventory 资源清单介绍
- Ansible之 Inventory 资源清单介绍
- Ansible之 Inventory 资源清单介绍
- Ansible之 Inventory 资源清单介绍
- Ansible之 Inventory 资源清单介绍
- CAP理论十二年回顾:"规则"变了
- curl设置http头Authentication实现http基本认证
- Hadoop学习笔记(十一)思维导图整理(附源文件)
- nagios 监控 mysql 主从同步状态
- iOS 的 APP 如何适应 iPhone 5s/6/6Plus 三种屏幕的尺寸?
- ansible动态inventory获取主机列表
- QML
- struts2拦截器中 如果获取当前请求action 和请求的方法
- zeromq退出与linger值的设置
- Failed to instantiate the default view controller for UIMainStoryboardFile 'Main'
- 三层架构及生活实例
- 简单动画
- 利用lucene对文件内容进行关键字检索
- JavaEE maven 综合实践