Puppet: различия между версиями
Sirmax (обсуждение | вклад) (→Клиент) |
Sirmax (обсуждение | вклад) (→Клиент) |
||
Строка 11: | Строка 11: | ||
<PRE> |
<PRE> |
||
[main] |
[main] |
||
+ | server = mmaxur-pc.kha.domain.net |
||
− | logdir=/var/log/puppet |
||
− | vardir=/var/lib/puppet |
||
− | ssldir=/var/lib/puppet/ssl |
||
− | rundir=/var/run/puppet |
||
− | factpath=$vardir/lib/facter |
||
− | pluginsync=true |
||
− | templatedir=$confdir/templates |
||
− | prerun_command=/etc/puppet/etckeeper-commit-pre |
||
− | postrun_command=/etc/puppet/etckeeper-commit-post |
||
− | server = 172.18.196.7 |
||
node_name = cert |
node_name = cert |
||
certname = workstation |
certname = workstation |
||
</PRE> |
</PRE> |
||
− | server = |
+ | server = mmaxur-pc.kha.domain.net - Тут все ясно <BR> |
certname = workstation - это имя сертефиката <BR> |
certname = workstation - это имя сертефиката <BR> |
||
− | node_name = cert - уточнить <BR> |
+ | node_name = cert - уточнить? это тип авторизации<BR> |
Запускать для теста удобно так: |
Запускать для теста удобно так: |
Версия 13:15, 28 августа 2012
Puppet
Начал изучать Puppet - здесь шаги и проблемы. Заметки для себя.
Установка
Пробую на убунте, мастер 11.10 клиент 10.04
sudo apt-get install puppet sudo apt-get install puppet puppetmaster
Натройка
Клиент
[main] server = mmaxur-pc.kha.domain.net node_name = cert certname = workstation
server = mmaxur-pc.kha.domain.net - Тут все ясно
certname = workstation - это имя сертефиката
node_name = cert - уточнить? это тип авторизации
Запускать для теста удобно так:
puppetd --server mmaxur-pc.kha.domain.net --verbose --test --no-daemonize info: Caching certificate_revocation_list for ca err: Could not retrieve catalog from remote server: Error 400 on SERVER: Could not find class passwd1 for maverick at /etc/puppet/manifests/site.pp:10 on node maverick warning: Not using cache on failed catalog err: Could not retrieve catalog; skipping run
Тут выше ошибка в конфиге, потому - не отработало Важно что бы сервер был такой же как в имени сертефиката. Т.е. указать IP вместо mmaxur-pc.kha.domain.net без дополнительных телодвижений нельзя (уточнить КАК)
Сервер (Мастер)
[main] logdir=/var/log/puppet vardir=/var/lib/puppet ssldir=/var/lib/puppet/ssl rundir=/var/run/puppet factpath=$vardir/lib/facter templatedir=$confdir/templates prerun_command=/etc/puppet/etckeeper-commit-pre postrun_command=/etc/puppet/etckeeper-commit-post [master] # These are needed when the puppetmaster is run by passenger # and can safely be removed if webrick is used. ssl_client_header = SSL_CLIENT_S_DN ssl_client_verify_header = SSL_CLIENT_VERIFY
В первой попытке соединиться с мастером клиенту будет отказано по причине отсутствия подписанного SSL сертификата, поэтому, получив отказ, клиент оставит запрос на его получение. Посмотреть список запросов можно с помощью команды:
puppetca --list
# puppetca --list "workstation" (D9:72:3F:95:76:C8:42:B2:C6:4A:78:71:F6:BF:9B:47)
Имя - то что вписано на клиенте.
Подписать сертификат и, соответственно, разрешить доступ клиенту можно командой:
puppetca --sign puppet-client.domain
где "puppet-client.domain" - имя клиента.
puppetca --sign workstation notice: Signed certificate request for workstation notice: Removing file Puppet::SSL::CertificateRequest workstation at '/var/lib/puppet/ssl/ca/requests/workstation.pem'
Удалить сертификат с сервера:
puppetca --clean puppet-client.domain
При этом puppet позволяет пользоваться своими утилитами через подкоманды, т.е. puppet cert = puppetca
Проблема 1
При первом запуске в логах:
Aug 28 12:05:39 maverick puppetd[3464]: (/File[/var/lib/puppet/lib]) Failed to generate additional resources using 'eval_generate': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed Aug 28 12:05:44 maverick puppetd[3464]: (/File[/var/lib/puppet/lib]) Failed to retrieve current state of resource: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed Could not retrieve file metadata for puppet://172.18.196.7/plugins: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed Aug 28 12:15:17 maverick puppetd[3850]: (/File[/var/lib/puppet/lib]) Failed to generate additional resources using 'eval_generate': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed Aug 28 12:15:23 maverick puppetd[3850]: (/File[/var/lib/puppet/lib]) Failed to retrieve current state of resource: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed Could not retrieve file metadata for puppet://172.18.196.7/plugins: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
Для новой чистой ноды лечится удалением сертефикатов. Похоже что проблема в том что на клиенте я устанавливал и мастер-пакет тоже:
find /var/lib/puppet -type f -print0 |xargs -0r rm
Полезные ссылки
- Описание ошибок http://bitcube.co.uk/content/puppet-errors-explained