Puppet 我不懂希拉。亚马尔和希拉

Puppet 我不懂希拉。亚马尔和希拉,puppet,hiera,Puppet,Hiera,我似乎不知道如何访问我的hiera数据 我把它放进我的yaml文件 这是我的hiera.yaml: [root@vxx-osc4-ppt-001 puppetmaster]# cat /etc/puppetlabs/puppet/hiera.yaml --- :backends: - yaml :hierarchy: - "%{pod_prefix}" - defaults - "%{clientcert}" - "%{environment}" - global :y

我似乎不知道如何访问我的hiera数据 我把它放进我的yaml文件

这是我的hiera.yaml:

[root@vxx-osc4-ppt-001 puppetmaster]# cat /etc/puppetlabs/puppet/hiera.yaml
---
:backends:
  - yaml
:hierarchy:
  - "%{pod_prefix}"
  - defaults
  - "%{clientcert}"
  - "%{environment}"
  - global

:yaml:
# datadir is empty here, so hiera uses its defaults:
# - /var/lib/hiera on *nix
# - %CommonAppData%\PuppetLabs\hiera\var on Windows
# When specifying a datadir, make sure the directory exists.
  :datadir:
在我更改了上面的文件后,我重新启动了我的3.7 PE傀儡主机 像这样:

[root@vxx-osc4-ppt-001 puppetmaster]# systemctl restart pe-httpd
我还有两个yaml文件,其中包含 一个类参数,controller\u vip\u name。所以我有这个

[root@vxx-osc4-ppt-001 puppetmaster]# grep "^controller_vip_name:" /var/lib/hiera/*yaml
/var/lib/hiera/defaults.yaml:controller_vip_name: VXX-osc4.example.com
/var/lib/hiera/vxx-osc4.yaml:controller_vip_name: vxx-osc4.example.com
。。。请注意,在文件
vxx-osc4.yaml
中,
controller\u vip\u name
的值为
vxx-osc4.example.com
所有小写字母和defaults.yaml文件中
controller\u vip\u name
的值为
VXX-osc4.example.com
其中VXX为大写。我正在尝试对我的设置进行QA,如下所示:

[root@vxx-osc4-ppt-001 puppetmaster]# systemctl restart pe-httpd
[root@vxx-osc4-ppt-001 puppetmaster]# hiera controller_vip_name
VXX-osc4.example.com
上述命令起作用,hiera从
defaults.yaml
文件检索数据 但此命令不起作用:

[root@vxx-osc4-ppt-001 puppetmaster]# hiera "pod_prefix=vxx-osc4" controller_vip_name
controller_vip_name
我认为hiera完全忽略了我的
vxx-osc4.yaml
文件


我做错了什么?

您的hiera命令错误:

Usage: hiera [options] key [default value] [variable='text'...]

请注意,变量位于键之后。

谢谢!我应该注意到这一点。嘿,你介意看看我贴的这个问题吗。这有点关系。这是另一个希拉问题