ansible facts
facts
组件是ansible
用于采集被管理机器设备信息的一个功能,我们可以用setup
模块查看机器的所有fasct
信息,可以使用filter
来查看指定信息。整个 facts
信息被包装在一个JSON
格式的数据结构中。
简单了解fscts结构
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| $ ansible centos -m setup //输出内容过多,自行尝试 $ ansible centos -m setup -a 'filter=ansible_all_ipv4_addresses' //查看指定信息 192.168.56.102 | SUCCESS => { "ansible_facts": { "ansible_all_ipv4_addresses": [ "192.168.56.102", "10.0.2.15", "192.168.31.14" ] }, "changed": false } 192.168.56.101 | SUCCESS => { "ansible_facts": { "ansible_all_ipv4_addresses": [ "192.168.56.101", "10.0.2.15", "192.168.31.95" ] }, "changed": false }
|
使用facter扩展facts信息
ansible
的facts
组件会判断被控制主机上是否安装有facter
和ruby-json|rubygem-json
包,如果存在,会自动采集信息。
centos7 facter 下载地址
facter官网下载
1 2 3 4 5 6 7 8 9
| $ ansible centos -m shell -a 'rpm -aq rubygem-json facter' 192.168.56.102 | SUCCESS | rc=0 >> rubygem-json-1.7.7-29.el7.x86_64 facter-2.4.1-1.el7.x86_64 192.168.56.101 | SUCCESS | rc=0 >> rubygem-json-1.7.7-29.el7.x86_64 facter-2.4.1-1.el7.x86_64
|
运行facter
模块查看facter
信息
1
| $ ansible 192.168.56.102 -m facter //显示内容过多,自行尝试
|
使用ohai扩展facts信息
ohai
是chef
配置管理工具中检测节点属性的工具,ansible
的facts
也支持ohai
信息的采集,需要在被管理主机上安装ohai
包。
安装ohai
国内服务器需要更换地址RubyGems镜像-Ruby-China
更换gem sources地址为国内
1 2 3 4 5 6 7 8
| $ ansible centos -m shell -a 'gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/' 192.168.56.101 | SUCCESS | rc=0 >> https://gems.ruby-china.org/ added to sources https://rubygems.org/ removed from sources 192.168.56.102 | SUCCESS | rc=0 >> https://gems.ruby-china.org/ added to sources https://rubygems.org/ removed from sources
|
查看gem sources地址
1 2 3 4 5 6 7 8 9 10
| $ ansible centos -m shell -a 'gem sources -l' 192.168.56.102 | SUCCESS | rc=0 >> *** CURRENT SOURCES *** https://gems.ruby-china.org/ 192.168.56.101 | SUCCESS | rc=0 >> *** CURRENT SOURCES *** https://gems.ruby-china.org/
|
安装ohai
1
| ansible centos -m shell -a 'gem install ohai'
|
使用ohai
上一篇:ansible速度优化
下一篇:ansible配置文件解析