Настройка Hiera на Puppet Enterprise

Я новичок в 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

Конфигурация агента Windows из puppet.conf:

[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

Должно быть, я что-то неправильно настроил, но я не уверен, где. Любая помощь будет оценена по достоинству.


person grefly    schedule 12.05.2015    source источник
comment
покажи мне файл puppet.conf в агенте Windows.   -  person BMW    schedule 13.05.2015
comment
какая версия ПЭ. если вы используете pe-puppetserver, перезапускали ли вы его? или если вы используете пассажирского мастера марионеток, вы перезапустили его? я обнаружил, что при внесении изменений в конфигурационный файл hiera вам, как правило, нужно сбрасывать свой мастер.   -  person ptierno    schedule 13.05.2015
comment
@BMW, я добавил puppet.conf из агента Windows.   -  person grefly    schedule 13.05.2015
comment
@ptierno, вы правы, перезапуск pe-puppetserver решил проблему. Если вы ответите, я отмечу принятый ответ. Спасибо!   -  person grefly    schedule 13.05.2015


Ответы (1)


Чтобы изменения в конфигурации hiera вступили в силу, необходимо обязательно перезапустить puppet master. Если вы используете puppetserver, который работает в JVM, перезапустите службу pe-puppetserver. Если вы используете старый мастер ruby, работающий на passenger, перезапустите pe-httpd.

Взято из документов Hiera:

Примечание мастера Puppet: если вы измените файл hiera.yaml между запусками агента, вам придется перезапустить мастер марионеток, чтобы изменения вступили в силу.

person ptierno    schedule 13.05.2015