Каковы плюсы и минусы в использовании мастера кукол против распределения манифестов кукол с помощью git?
Я начал читать о марионетках и вижу, что есть два основных способа, как вы распространяете свой манифест марионеток; один из них - использование мастера марионеток, а второй - использование git для их распространения.
Каковы плюсы и минусы между двумя разными версиями. Что рекомендуется для среды, использующей серверы Windows и Linux?
1 ответ
Два способа распространения манифестов - это использование мастера марионеток или в конфигурации без мастера. Они не являются взаимоисключающими, и мы используем оба подхода в моей работе.
властный
С мастерской настройкой у вас есть мастер кукол, который содержит коллекцию всех модулей в вашей инфраструктуре. Затем узлы отправляют отчеты (каждые 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
Преимущества:
- Простое предоставление ноутбуков и рабочих станций, которым не требуется централизованное управление
- Нет необходимости разбирать ковбойские ноутбуки, которые часто уходят и входят в инфраструктуру
- Кукольные модули Masterless примерно так же просты, как написание сценариев bash, однако они более удобны в обслуживании, их легко сделать кроссплатформенными.
- Тем не менее дает вам преимущество уровня абстракции, предоставляемого puppet (попробуйте написать сценарий bash для установки пакетов с разными именами. Например, openssl-devel на всех компьютерах CentOS, но openssl-dev на компьютерах с Ubuntu, черт возьми).
Недостатки:
- Сложнее распределить по узлам, нужна мякоть, мерзавец или другая техника распространения
Я настоятельно рекомендую вам взглянуть на следующие ресурсы