У меня есть сервер puppetmaster и четыре клиента марионеточного агента. Здесь я прикрепляю свои файлы puppet.conf и хосты ко всем узлам. Когда я вызываю «список марионеточных сертификатов», он ничего не возвращает.
Но при вызове с флагами --all он возвращает собственный сертификат.
Я могу пинговать марионетку, кукловода со всех агентов. 'puppet agent --test' на агентах дает следующее: Exiting; сертификат не найден, а waitforcert отключен
Как я могу получить запросы сертификатов к мастеру от агентов. Может ли кто-нибудь дать мне решение этой проблемы? [1] puppet.conf https://drive.google.com/file/d/0ByrsDKrxH15uaThvQm9VRHBtaTg/view?usp=sharing
[2] хоста https://drive.google.com/file/d/0ByrsDKrxH15uVktSYmhDN1NHaGc/view?usp=sharing
При первом запуске:
puppet agent -t
на новом клиенте марионетки он создает запрос сертификата, который отправляется мастеру марионетки (как настроено в файле /etc/puppet/puppet.conf).
Затем на мастере марионеток вы должны запустить:
puppet cert list
Определите соответствующий сертификат и подпишите его:
puppet cert sign hostname_of_puppet_client
Убедитесь, что запрос сертификата, который создается в мастере марионетки, идентифицируется именем хоста марионеточного клиента, а не IP-адресом, иначе это может вызвать проблемы в будущем.
Также убедитесь, что время на мастере марионетки и на клиенте синхронизировано.
После того, как сертификат будет правильно подписан в мастере марионетки, вы должны снова запустить на клиенте:
puppet agent -t
Затем клиент должен загрузить каталог марионеток и запустить задачи.
Когда я столкнулся с этим, мне пришлось перезапустить мастер марионеток (пришлось убить процесс). Я пока не знаю, почему это помогло, но, возможно, в мастере есть какой-то кеш для хостов, которые уже были подписаны (в моем случае это произошло, когда я хотел восстановить сертификат для хоста)