Примечание: Я не уверен, где этот вопрос. Возможно, его лучше было бы задать наОшибка сервера, но поскольку я в первую очередь спрашиваю о хакерских и домашних сетевых целях, я спрашиваю здесь. Плюс, это, вероятно, будет выброшено с сайта менее чем за 10-100 секунд , поэтому я избегаю использовать Server Fault.
Я хочу настроить и начать возиться с Puppet Master и несколькими клиентами Puppet, чтобы почувствовать работу с Puppet с настоящим мастером. По умолчанию экземпляры клиентов Puppet обновляются (насколько мне известно) каждые 30 минут, запрашивая у мастера свою последнюю конфигурацию и применяя ее по мере ее выхода из строя.
Я слышал, что MCollective может вносить эти изменения практически мгновенно, поскольку он использует очередь сообщений и параллелизм для передачи команд клиентам в режиме реального времени.
Я пытался выяснить, как это сделать с помощью Puppet Master и Puppet Clients, но, похоже, MCollective — это гораздо более масштабный проект, чем просто плагин реального времени для Puppet Master.
Как настроить простой Puppet Master, сервер MCollective (и очередь сообщений) и мои клиенты Puppet, чтобы получать изменения в конфигурации Puppet в режиме реального времени?
(Я в целом понимаю, как это сделать apt-get install redis-server puppetmaster mcollective
, но мне интересно, как на самом деле работает интеграция MCollective с Puppet Master.)
решение1
Я с этим не игрался, но это похоже на то, что вы ищете:
выдержка
Этот агент управляет агентом puppet, в отличие от старого плагина puppetd, этот поддерживает Puppet 3 и последние изменения, внесенные в его файлы блокировки и состояния.
В дополнение к базовой поддержке Puppet 3 это добавляет ряд новых функций, большинство из которых применимы как в Puppet 2.7, так и в 3.
- Поддерживает запуски noop и без-noop
- Поддерживает ограничение запусков по определенным тегам
- Поддержка расширения, отсутствие расширения, ограничения расширения
- Поддерживает указание пользовательской среды
- Поддерживает указание настраиваемого главного хоста и порта
- Поддержка функций Puppet 3, таких как блокировка сообщений при отключении
- Используйте новые плагины для создания сводок, чтобы предоставлять удобные сводки там, где это необходимо.
- Используйте новые плагины проверки для обеспечения более полной проверки входных данных и лучшего устранения ошибок.
- Источники данных для текущего статуса агента-марионетки и статуса последнего запуска
А вот еще отрывок:
Запуск всех включенных узлов Puppet
Часто после внесения изменения вы хотите, чтобы оно было внедрено в вашу инфраструктуру как можно скорее с учетом ограничений производительности вашей инфраструктуры.
Производительность Puppet Master обычно сводится к максимальному числу одновременно работающих узлов Puppet, которые он может поддерживать.
Используя инфраструктуру MCollective, мы можем определить, сколько машин в данный момент включено, и применить каталоги.
Таким образом, чтобы запустить Puppet для всей вашей инфраструктуры, максимально приблизив число одновременных запусков Puppet к 10 узлам за раз, вам нужно сделать следующее:
$ mco puppet runall 10