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

Требуются ограничения размера и масштаба марионеточного сервера

Моя компания рассматривает возможность использования Puppet для управления нашей инфраструктурой. Мы слышали, что Puppet не так эффективен, как другие решения, такие как CFEngine. Есть ли у кого-нибудь точные данные о том, сколько узлов может поддерживать сервер Puppet? Есть ли по этому поводу документ по калибровке или передовой практике? Пока я ничего не могу найти по Puppet 3.

Редактирование для уточнения деталей. Мы планируем начать с 4000 узлов, распределенных в 3 физических местах, и планируем распространить до 10 000 узлов в этих местах и ​​охватить поставщиков общедоступного облака. Мы используем CentOS 5 и 6 для этих узлов. Подходит ли для этого марионетка? Сколько кукловодов мне нужно запланировать, чтобы управлять 4000 узлами?

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

Следующие различия в окружающей среде влияют на соотношение главных узлов и узлов:

  • Количество файлов, извлеченных за цикл
  • Частота обновления данных каталога Агентом
  • Частота включения неустановленных узлов (рационализация существующего узла выполняется быстро, установка нового узла стоит дорого)
  • Сложность применяемых модулей
  • Любые плагины, которые могут использоваться сверх того, что есть в наличии.

Получите неправильную смесь, и даже 500: 1 будет слишком много. Сделайте это правильно, и вы сможете получить четыре или даже пять цифр к одному.

Я бы посоветовал вам добавить несколько цифр по этому вопросу.

Я видел большие марионеточные среды (1200+ серверов).

хотя бы попробуйте ответить на эти:

  • количество узлов, которые вы хотите обслуживать?
  • один DC или несколько DC # (здесь важен дизайн архитектуры)?
  • сколько разных ОС вы используете? (какие дистрибутивы linux + версии)?

Думаю, тогда картина яснее ответить.

Puppetmaster по умолчанию поставляется с сервером, работающим на WebBrick - это простое решение, которое будет работать (в зависимости от сложности манифестов) на 50-60 хостах. Для всего, что выходит за рамки этого, вам нужно будет масштабировать его. Самый простой способ масштабировать один мастер - использовать apache и mod_passanger - http://projects.puppetlabs.com/projects/1/wiki/using_passenger

Существуют разные решения, и в основном это зависит от того, как вы планируете использовать кукловода. В простой настройке вы можете просто добавить несколько кукловодов с балансировкой нагрузки. Единственная проблема в этом случае будет заключаться в синхронизации сертификатов и манифестов. Чтобы «исправить» сертификаты, вы можете переместить часть CA с марионеточных серверов на выделенные серверы (два с ha).

Чтобы ответить на ваш вопрос относительно Cfengine, у Puppet есть больше возможностей для масштабирования.