Я пытаюсь использовать puppetmaster для серверов, находящихся как в локальной сети, так и за ее пределами. Вот настройка: у меня есть 3 сервера за маршрутизатором и виртуальная машина в Google Cloud. Марионеточные агенты подключаются к мастеру, используя «марионеточное» имя хоста, в то время как виртуальная машина GCP должна использовать полное доменное имя, и именно здесь мои проблемы.
Всякий раз, когда я пытаюсь запустить марионетку на виртуальной машине Google, я получаю следующую ошибку:
Ошибка: /File[/opt/puppetlabs/puppet/cache/facts.d]: Невозможно оценить: Не удалось получить метаданные файла для puppet: /// pluginfacts: Имя хоста сервера 'FQDN_OF_MY_LAN' не соответствует сертификату сервера; ожидается один из марионеток, DNS: puppet
Все сертификаты подписаны, даже виртуальные машины (что означает, что первоначальный обмен сертификатами SSL работал правильно).
Как я могу заставить виртуальную машину извлекать свой каталог, когда она ожидает от центра сертификации другое имя хоста / fqdn, чем то, которое использует puppetmaster?
ИСПРАВЛЕНО: я поместил dns_alt_names в раздел [master], как упоминалось, а затем удалил сертификат puppetmaster, перезапустил puppetserver и подписал новый сертификат. Этого было достаточно, чтобы исправить мою проблему.