我是Puppet和Hiera的新手,在尝试应用包含Hiera查找的模块时遇到配置问题。
来自/etc/puppetlabs/puppet/hiera.yaml:
---
:backends:
- yaml
:hierarchy:
- defaults
- "%{clientcert}"
- "%{environment}"
- global
:yaml:
:datadir: '/etc/puppetlabs/puppet/hiera'
来自/etc/puppetlabs/puppet/hiera/develop.yaml:
git_client:
file_content:here
运行Hiera进行调试时:
/ opt / puppet / bin / hiera git_client environment = develop -c /etc/puppetlabs/puppet/hiera.yaml --debug
DEBUG: 2015-05-12 12:40:27 -0400: Hiera YAML backend starting
DEBUG: 2015-05-12 12:40:27 -0400: Looking up git_client in YAML backend
DEBUG: 2015-05-12 12:40:27 -0400: Looking for data source defaults
DEBUG: 2015-05-12 12:40:27 -0400: Cannot find datafile /etc/puppetlabs/puppet/hiera/defaults.yaml, skipping
DEBUG: 2015-05-12 12:40:27 -0400: Looking for data source develop
DEBUG: 2015-05-12 12:40:27 -0400: Found git_client in develop
file_content:here
puppet.conf中的Windows代理配置:
[main]
server=[REDACTED]
pluginsync=true
autoflush=true
archive_files=true
archive_file_server=[REDACTED]
graph=true
environment=develop
但是从Windows代理运行时:
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Loading facts
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Could not find data item git_client in any Hiera data file and no default supplied at /etc/puppetlabs/puppet/environments/develop/modules/[REDACTED PATH TO .pp FILE]:24 on node [REDACTED]
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
我必须有一些错误的配置,但我不知道在哪里。任何帮助将不胜感激。
答案 0 :(得分:1)
要使hiera
配置的更改生效,您需要确保重新启动puppet master
。如果您使用的是puppetserver
中运行的JVM
,请重新启动pe-puppetserver
服务。如果您使用的是ruby
上运行的旧版passenger
,请重新启动pe-httpd
。
取自hiera docs:
Puppet master note:如果您在代理程序运行之间修改hiera.yaml,则必须重新启动puppet master才能使更改生效。