Различное расположение манифеста на Puppet Server/Agent
Моя настройка среды сервера Puppet выглядит следующим образом
[master]
vardir = /opt/puppetlabs/server/data/puppetserver
logdir = /data/log/puppetlabs/puppetserver
rundir = /var/run/puppetlabs/puppetserver
pidfile = /var/run/puppetlabs/puppetserver/puppetserver.pid
codedir = /data/puppetlabs/code
# puppet master --configprint manifest
/data/puppetlabs/code/environments/production/manifests
На агентах это выглядит следующим образом
server = jw-host
environment = production
Но --configprint показывает другое расположение на узлах агента
# puppet master --configprint manifest
/etc/puppetlabs/code/environments/production/manifests
Он не изменяется на /data, из-за чего мои манифесты не применяются.
Версии следующие
# puppetserver --version
puppetserver version: 2.4.0
# puppet --version
4.5.2
В чем здесь проблема?
1 ответ
Решение
Из того, что я понимаю puppet master --configprint
локально проверяет, какие настройки будет использовать марионеточный сервер.
Он не подключается к настроенному мастеру и не получает значение от него.
Поскольку вы не запускаете марионеточный сервер на агенте, этот параметр не имеет значения.
Это просто по умолчанию /etc/puppetlabs/code/environments/production/manifests
когда он вообще не установлен.
Но это все равно не используется агентом.