Ansible facter - CentOS - 不显示任何 facter_ 变量

Ansible facter - CentOS - not showing any facter_ variables

我有两个盒子:
- CentOS 7.2.x.x vagrant box

- Debian/Ubuntu 14.04 trusty vagrant box

我在两者上都安装了 Ansible(使用他们首选的包管理器方法)并且 ansible/ansible-playbook 命令在两个机器上都运行良好。

在 CentOS 机器上,安装的 Ansible 版本是:

$ ansible --version
ansible 2.1.2.0
  config file = /etc/ansible/ansible.cfg
  configured module search path = Default w/o overrides

在 Ubuntu 框中,安装的 Ansible 版本是:

ansible 2.2.0.0

在 Ubuntu 和 CentOS vagrant boxes 上,当我 运行 以下命令时,它有效!也就是说,它吐出了很多 JSON 格式的输出 hash/values,太棒了:

[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 上,我 NOT 在输出中得到 ANY facter_ 变量?

记得以前用过CentOS boxes(vagrant provisioned),都显示facter_变量。

我知道有类似的 'ansible_someVar' 变量,但我很好奇为什么 facter_xxxxx 变量没有出现在这里.

好的,我的另一个盒子上缺少 facter 包裹。以下解决了问题(您可能需要获取相应的 EPEL 存储库)。

sudo yum install facter

Facter 是一个收集系统信息的小程序,例如硬件详细信息、网络设置、虚拟化类型和 kernel/OS 信息。似乎 Facter 是为 Puppet 创建的以收集系统信息(但也可作为独立命令使用),因此它不是免费安装在我使用的特定 vagrant CentOS 映像上。