我有两个箱子:
-CentOS 7.2.x.x流浪箱
和
-Debian/Ubuntu14.04可信的流浪箱
在这两者上,我都安装了Ansible(使用他们首选的包管理器方法),Ansible/Ansible playbook命令在这两个框上都工作得很好。
在CentOS box上,安装的Ansible版本为:
$ ansible --version
ansible 2.1.2.0
config file = /etc/ansible/ansible.cfg
configured module search path = Default w/o overrides
在Ubuntu box上,安装的ansibe版本是:
ansible 2.2.0.0
在Ubuntu和CentOS的vagrant框中,当我运行以下命令时,它都能工作!也就是说,它吐出了很多JSON格式的输出散列/值,很好:
[vagrant@ip-10-11-12-13 ~/aks/workspace] $ ansible all -m setup -i "`hostname`," --connection=local
现在,由于我正在特别地寻找'facter_someVar'变量(它可以给我一些关于本地框的有意义的信息),所以我试图从上一个命令的输出中grep-->“facter_”这个词。
[vagrant@ip-10-11-12-13 ~/aks/workspace] $ ansible all -m setup -i "`hostname`," --connection=local | grep "facter_"
[vagrant@ip-10-11-12-13 ~/aks/workspace] $
我发现在Ubuntu box上,它显示了很多facter-xxxx匹配变量(大约71+),但是在CentOS box上,我没有在输出中得到facter-xxxx变量?
我记得,在过去,我用过CentOS盒子(流浪者提供),它们都显示了factor_u变量。
我知道有一些类似的“ansible_someVar”变量,但我很好奇为什么facter_uuxxxxx变量没有出现在这里。
最佳答案
好吧,我的另一个盒子上的facter包不见了。以下解决了问题(您可能需要获得相应的EPEL repo)。
sudo yum install facter
factor是一个小型程序,它收集系统信息,如硬件详细信息、网络设置、虚拟化类型和内核/操作系统信息。似乎factor是为Puppet创建的,用于收集系统信息(但也可以作为独立命令使用),因此它不是免费安装在我使用的特定的vagrant CentOS映像上的。