Назад | Перейти на главную страницу

Переход от одного кукловода к другому

У меня есть марионеточный хост, который получал данные от удаленного марионеточного мастера, и теперь я хочу превратить этот хост в марионеточного мастера. Хост (как марионеточный агент) уже был настроен, и сертификаты SSL обменены.

Теперь есть новый кукловод (на том же хосте), и я ничего не могу его настроить. Я уже настроил puppet.conf так, чтобы он указывал на новый сервер (тот же хост, но с использованием имени DNS), но еще не настроил fileserver.conf. Кукольник использует пассажира и Apache.

Система представляет собой Ubuntu Lucid Lynx с Puppet 2.6.3, и при попытке запустить puppetmaster выдается следующий ответ:

# service puppetmaster start
 * Starting puppet master
Could not prepare for execution: Retrieved certificate does not match private key; please remove certificate from server and regenerate it with the current key
   ...fail!

Конфигурация марионетки-пассажира из пакета дает такую ​​ошибку:

# dpkg --configure puppetmaster-passenger
Setting up puppetmaster-passenger (2.6.3-0ubuntu1~lucid1) ...
Module ssl already enabled
Site puppetmaster already enabled
 * Restarting web server apache2
Syntax error on line 16 of /etc/apache2/sites-enabled/puppetmaster:
SSLCARevocationFile: file '/var/lib/puppet/ssl/ca/ca_crl.pem' does not exist or is empty
   ...fail!
invoke-rc.d: initscript apache2, action "restart" failed.
dpkg: error processing puppetmaster-passenger (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 puppetmaster-passenger

Я заглянул в / var / lib / puppet / ssl, но не знаю, с чего начать - какие сертификаты удалить или изменить, а какие оставить в покое. Я не видел описания SSL-сертификатов. Я не понимаю, как сделать /var/lib/puppet/ssl/ca/ca_crl.pem.

Этот процесс является частью настройки конфигурации с двумя мастерами марионеток. Оба будут активными и будут представлять одни и те же данные в двух разных областях (связанных ссылкой, которая считается «дорогой»). Таким образом, оба мастера марионеток будут иметь одинаковую информацию (возможно, скопированную с помощью rsync) и выступать в качестве мастера марионеток для хостов на их стороне «дорогостоящего» канала, обмениваясь данными нечасто или по запросу.

я нашел это нить в марионеточных пользователях, но не описывает, как все настраивать, и не описывает, какие сертификаты SSL какие.

ДОБАВЛЕНО Дополнительная информация: работает puppet master дает эту информацию:

# puppet master
Could not prepare for execution: Retrieved certificate does not match private key; please remove certificate from server and regenerate it with the current key

Если бы я только знал, где был этот сертификат. Я уверен, что старая конфигурация сервера мешает новой установке, но не знаю, как удалить конфигурацию.

Я не хочу преуменьшать чьи-либо возможные ответы - возможно, есть более чистый способ достичь моих целей.

Вот что я сделал: удалил все в / var / lib / puppet:

cd /var/lib/puppet
rm -rf *

Поскольку я использовал диспетчер пакетов, я искал файлы, принадлежащие любому пакету в этом каталоге, но их не было. Для Debian и dpkg это делается следующим образом:

dpkg -S * */* */*/*

Поскольку не было обнаружено пакетов, которые владеют этими файлами, это говорит о том, что файлы были созданы «на лету», а поскольку / var / lib / puppet принадлежал пакету (puppet-common), я оставил пустой каталог на месте.

Затем я запустил puppetmaster (на самом деле ошибка, поскольку должен использоваться пассажир), и все соответствующие файлы были воссозданы. После остановки puppetmaster, настройки пассажира, настройки / etc / default / puppetmaster и "перезапуска" puppetmaster (что тихо провалилось) - все снова стало хорошо.

Бег puppet agent против сервера снял соответствующие сертификаты и все сделал хорошо.

Если вы не заботитесь о сохранении сертификатов для аудита или других целей, вполне допустимо удалить каталог / var / lib / puppet / ssl, поскольку puppet воссоздает все, что ему нужно.

Если вам нужно поддерживать и вы хотите переключиться, вам нужно погрузиться в мир pki и отказаться от сертификатов, повторно развернуть общедоступные сертификаты и т. Д. В вашем случае удаления только cacert для вашего старого кукловода должно быть достаточно, чтобы отключить новый, когда вы говорите на новый сервер.