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

Время от времени происходит сбой Puppet Agent: тайм-аут или ошибка «Не удалось найти класс».

у меня есть puppet master работает на Xen dom0, и 3 domU синхронизируются с ним через ежечасный crontab puppet agent --test.

Примерно в 80% случаев puppet agent --test завершается успешно:

info: Retrieving plugin
info: Caching catalog for test3
info: Applying configuration version '1333319732'
notice: Finished catalog run in 5.08 seconds

В остальных 20% случаев он выходит из строя на полпути с такими ошибками, как:

err: Could not retrieve catalog from remote server: Error 400 on SERVER:
     Could not find class iptables for test1 at /etc/puppet/manifests/site.pp:1 on node test1
warning: Not using cache on failed catalog
err: Could not retrieve catalog; skipping run

или

info: Retrieving plugin
info: Caching catalog for test2
info: Applying configuration version '1333319732'
notice: Finished catalog run in 24.73 seconds
err: Could not send report: Error 500 on SERVER: 

Internal Server Error

private method `gsub' called for WEBrick::HTTPStatus::RequestTimeout:Class

 WEBrick/1.3.1 (Ruby/1.8.5/2006-08-25) OpenSSL/0.9.8e-rhel5 at
 puppet:8140

или

info: Retrieving plugin
err: Could not retrieve catalog from remote server: execution expired
warning: Not using cache on failed catalog
err: Could not retrieve catalog; skipping run

или

info: Retrieving plugin
info: Caching catalog for test3
info: Applying configuration version '1333319732'
notice: Finished catalog run in 9.47 seconds
err: Could not send report: Error 408 on SERVER: Request Timeout 

За это время я не вносил никаких изменений в конфигурацию Puppet - она ​​просто периодически дает сбой.

Я запускаю puppet-2.7.12 на CentOS и следую инструкциям по установке, описанным на http://docs.puppetlabs.com/learning/agent_master_basic.html.

Есть идеи о том, как я могу решить эту проблему?

Несколько недель назад я увеличил объем памяти для запущенной виртуальной машины. puppet master на пару сотен мегабайт, и с тех пор сбоев не было.

(Это странный способ указать, что памяти недостаточно ...)

Webrick однопоточный и с плохой производительностью. За пределами 20 серверов относительно небольшое количество элементов конфигурации (около 200), вам нужно изменить на что-то другое. Используйте Puppet Rack - это намного лучше.