PuppetDB: невозможно получить сертификат локального эмитента

Я пытаюсь использовать puppetdb, но сталкиваюсь с некоторыми проблемами.

У меня есть узел с именем puppet, Это мастер, а также где я установил puppetdb. Это также узел, которым управляет кукла.

Когда я бегу puppet -t на марионеточном узле я получаю:

Warning: Unable to fetch my node definition, but the agent run will continue:
Warning: Error 400 on SERVER: Could not retrieve facts for puppet.example.com: 
Failed to submit 'replace facts' command for puppet.example.com to PuppetDB at
puppet:8081: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate
B: certificate verify failed: [unable to get local issuer certificate for
/CN=puppet.example.com]

Я предполагаю, что что-то не так с SSL, но я не уверен, что изменить или где искать.

1 ответ

Похоже, проблема с именем хоста на сервере PuppetDB (master). Удостоверься что hostname -f выводит адрес, который разрешается со всех узлов, где puppet agent пробеги.

Из журнала ошибок кажется, что имя хоста просто puppet:

Failed to submit 'replace facts' command for puppet.example.com to PuppetDB at
puppet:8081

Затем перенесите старые сертификаты

  • для PuppetDB 2.x:

    mv /etc/puppet/puppetdb/ssl/ /etc/puppet/puppetdb/ssl-old
    puppetdb-ssl-setup -f
    
  • для PuppetDB 3.x и новее:

    mv /etc/puppetlabs/puppetdb/ssl/ /etc/puppetlabs/puppetdb/ssl-old
    puppetdb ssl-setup -f
    

Наконец перезапустите сервис:

service puppetdb restart
Другие вопросы по тегам