簡體   English   中英

我不明白hiera.yaml和hiera

[英]I do not understand hiera.yaml and hiera

我似乎無法弄清楚如何訪問放置在yaml文件中的hiera數據。

這是我的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 Puppet主文件:

[root@vxx-osc4-ppt-001 puppetmaster]# systemctl restart pe-httpd

我也有這兩個yaml文件,其中包含類參數controller_vip_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_vip_name值為vxx-osc4.example.com ,在defaults.yaml文件中, controller_vip_name值為VXX-osc4.example.com ,其中VXX為大寫。 我正在嘗試對我的設置進行質量檢查,如下所示:

[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'...]

請注意,變量鍵之后。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM