4

Я начал читать о марионетках и вижу, что есть два основных способа, как вы распространяете свой манифест; один из них - использование мастера марионеток, а второй - использование git для их распространения.

Каковы плюсы и минусы между двумя разными версиями. Что рекомендуется для среды, использующей серверы Windows и Linux?

1 ответ1

9

Два способа распространения манифестов - использование мастера марионеток или в конфигурации без мастера. Они не являются взаимоисключающими, и мы используем оба подхода в моей работе.

властный

С мастерской настройкой у вас есть мастер кукол, который содержит коллекцию всех модулей в вашей инфраструктуре. Затем узлы отправляют отчеты (каждые 30 минут по умолчанию) и запрашивают каталог того, какое программное обеспечение следует установить.

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

Преимущества:

  • Простое, масштабируемое управление распределенной конфигурацией
  • Автоматически отменяет случайные изменения при каждом запуске кукол
  • Puppet Dashboard дает обратную связь в режиме реального времени и отчеты

Недостатки:

  • Кукольный агент не может легко масштабироваться до десятков тысяч узлов. (Крупные компании, такие как PayPal, на самом деле используют cron для отчетов)
  • Если вы часто добавляете или удаляете узлы, управление сертификатами становится утомительным.

не имеющий владельца

Masterless по-прежнему использует преимущества Puppet, но делает это вручную, вызывая модули. В основном, просто запустите puppet apply foo --modulepath=bar на вашем сервере. Я написал гораздо более подробное объяснение этой модели здесь: https://unix.stackexchange.com/questions/129318/can-we-install-puppet-without-touching-the-servers/130695#130695

Преимущества:

  • Простое предоставление ноутбуков и рабочих станций, которым не требуется централизованное управление
  • Нет необходимости разбирать ковбойские ноутбуки, которые часто уходят и входят в инфраструктуру
  • Кукольные модули Masterless примерно так же просты, как написание сценариев bash, однако они более удобны в обслуживании, их легко сделать кроссплатформенными.
  • Тем не менее дает вам преимущество уровня абстракции, предоставляемого puppet (попробуйте написать сценарий bash для установки пакетов с разными именами. Например, openssl-devel на всех машинах CentOS, но openssl-dev на машинах с Ubuntu, чёрт).

Недостатки:

  • Сложнее распределить по узлам, нужна мякоть, мерзавец или другая техника распределения

Я настоятельно рекомендую вам взглянуть на следующие ресурсы

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .