Product SiteDocumentation Site

1.6. Настройка модуля ENC для взаимодействия с Puppetserver

Создать файл /etc/puppet/foreman.yaml:
---
# Update for your Foreman and Puppet master hostname(s)
:url: "https://foreman.test.alt:2345"
:ssl_ca: "/etc/puppet/ssl/certs/ca.pem"
:ssl_cert: "/etc/puppet/ssl/certs/foreman.test.alt.pem"
:ssl_key: "/etc/puppet/ssl/private_keys/foreman.test.alt.pem"
# Advanced settings
#:puppetdir: "/opt/puppetlabs/server/data/puppetserver"
:puppetdir: "/var/lib/puppetserver"
:puppetuser: "puppet"
:facts: true
:timeout: 10
:threads: null
После того как Foreman установлен и к нему подключен(-ы) Smart_Proxy, необходимо внести изменения в файл /etc/puppet/puppet.conf.
В файл /etc/puppet/puppet.conf необходимо добавить/раскомментировать строки:
[master]
   ...
   external_nodes = /usr/lib/puppet-modules/theforeman-puppetserver-foreman/files/enc.rb
   node_terminus = exec
После внесения изменений в конфигурационный файл Puppet необходимо перезапустить службы puppetserver и puppet:
# systemctl restart puppetserver
# systemctl restart puppet
В результате запуска сервиса puppet, текущий сервер будет добавлен в список управляемых.

Примечание

Для добавления серверной ноды в список управляемых узлов можно выполнить команду:
# /usr/lib/puppet-modules/theforeman-puppetserver-foreman/files/enc.rb foreman.test.alt

Примечание

Если при запуске ENC-скрипта выводится сообщение об ошибке:
foreman.test.alt: During the fact upload the server responded with: 403 Forbidden. Error is ignored and the execution continues.
{
  "error": {"message":"Access denied","details":"Missing one of the required permissions: upload_facts","missing_permissions":["upload_facts"]}
}
Serving cached ENC: Error retrieving node foreman.test.alt: Net::HTTPNotFound
Check Foreman's /var/log/foreman/production.log for more information.
Unable to read from Cache file: No such file or directory @ rb_sysopen - /var/lib/puppetserver/yaml/foreman/foreman.test.alt.yaml
Необходимо в файле /etc/foreman/settings.yml установить параметр:
:restrict_registered_smart_proxies: false
И перезапустить Foreman:
# systemctl restart foreman
Проверка работы агента:
# puppet agent -t
Info: Using environment 'production'
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Caching catalog for foreman.test.alt
Info: Applying configuration version '1691592405'
Notice: Applied catalog in 0.02 seconds