У меня проблемы с получением марионеточного агента для аутентификации мастера.
Что касается агента, я сначала сделал sudo puppet agent --test
info: Creating a new SSL key for m-agent-2
info: Caching certificate for ca
info: Creating a new SSL certificate request for m-agent-2
info: Certificate Request fingerprint (md5): 43:30:57:53:5B:20:F7:12:CD:94:59:17:12:28:68:A4
Затем на мастере я сделал sudo puppet cert list
и получил
"m-agent-2" (43:30:57:53:5B:20:F7:12:CD:94:59:17:12:28:68:A4)
Тогда я сделал sudo puppet cert sign m-agent-2
, который вернулся
notice: Signed certificate request for m-agent-2
notice: Removing file Puppet::SSL::CertificateRequest m-agent-2 at
'/var/lib/puppet/ssl/ca/requests/m-agent-2.pem'
Тогда я сделал sudo puppet agent --test
, который вернулся
info: Caching certificate for m-agent-2
err: Could not retrieve catalog from remote server: Server hostname 'puppet' did not match server certificate; expected master-node-1
warning: Not using cache on failed catalog
err: Could not retrieve catalog; skipping run
err: Could not send report: Server hostname 'puppet' did not match server certificate; expected master-node-1
Файл conf содержит строку как в certname = master-node-1
в обоих [main]
и [master]
разделы. Я восстановил диплом мастера, выполнив
sudo find $(puppet master --configprint ssldir) -name "$(puppet master --configprint certname).pem" -delete
sudo puppet master --no-daemonize --verbose
Кроме того, мой файл / etc / hosts содержит строки 10.20.32.10 learn.localdomain learn puppet.localdomain puppet
и я могу пинговать и марионетку, и марионетку. узнать у агента.
Однако у меня все еще такая же проблема. Есть ли способ исправить это. Или вообще отключите аутентификацию в марионетке. И главный, и подчиненный узлы работают под управлением Ubuntu 12.04, а я использую марионетку 2.7.11. Любая помощь приветствуется.
Ваш клиент ожидает, что у мастера будет имя хоста puppet
, по его server
конфигурация в puppet.conf
- это значение по умолчанию, поэтому, если у вас нет server
настроен, затем он использует puppet
. SSL-сертификат мастера должен быть действителен для этого имени, иначе клиент откажется подключаться.
Обычно мастер генерирует сертификат, действительный для его собственного имени хоста и puppet
имя хоста с использованием альтернативных имен субъектов .. но с явным certname
в магистратуре puppet.conf
может переопределить это. Проверить, проверив puppet cert --list master-node-1
- должно быть что-то вроде (alt names: "puppet")
отображается после отпечатка сертификата.
Исправьте это, указав клиенту на настоящее имя хоста, используя его server
config или имея сертификат сервера, действительный для имени хоста puppet
.