Я настраиваю Puppetdb с SSL, и у меня проблемы с сертификатами.
Я использую Nginx в качестве SSL-прокси для Puppet, поэтому мой центр сертификации управляется сервером mongrel на этом прокси-сервере Nginx.
Если я сгенерирую сертификат для своего URI Puppetdb с помощью CA на машине Nginx, я смогу настроить Puppetdb с помощью puppetlabs-puppetdb
модуль (поскольку агент Puppet использует CA прокси), но тогда Puppetmaster не может подключиться к нему, потому что у него есть собственный сертификат CA, который генерируется сам.
Если я сгенерирую сертификат для URI Puppetdb с помощью одного из Puppetmasters, я не смогу развернуть Puppetdb с помощью puppetlabs-puppetdb
модуль, поскольку агент Puppet не использует тот же сертификат CA.
Что я мог сделать, чтобы все это примирить? Могу ли я полностью отключить SSL на моих мастерах марионеток (поскольку SSL управляется прокси-сервером Nginx) и заставить их использовать CA прокси для подключения к Puppetdb?
Я использовал неправильную настройку своих марионеточных мастеров, а именно позволял им создавать свой собственный центр сертификации в отдельном каталоге. Эта ссылка прояснил это. Я сейчас:
/var/lib/puppet/ssl
каталог). Это гарантирует, что он использует один и тот же CA для обоих режимов;ca=false
на кукловода (раздел master
) так что кукловод не будет жаловаться на использование другого CA, кроме его собственного;certname=
для мастеров марионеток и разрешите им использовать имя машины, как это сделано в режиме агента.