Как поддерживать синхронизацию вновь установленных пакетов от главного узла к узлам с марионеткой?

У меня есть установка группы машин (серверов Ubuntu), которые географически разделены и используются для разработки одной и той же кодовой базы. Иногда мне нужно установить пакеты на машину с моего сайта, а затем по ssh для всех остальных и установить пакеты там же. Я хотел бы автоматизировать это, и если я Я установил новый пакет на моем компьютере (главном), он будет автоматически установлен на остальных. Процесс не должен быть мгновенным, его можно выполнить за ночь.

Для этого я попытался использовать марионетку с ресурсом 'package', но это означает, что мне нужно будет добавить еще одну запись для каждого недавно установленного пакета . Нет ли другого подхода (например, проверить установленные пакеты и вставить новую запись с новым пакетом)?

Я также просмотрел модуль apt для марионетки, но не нашел ничего, связанного с этим напрямую.

0
задан 28 November 2016 в 15:13
1 ответ

Я знаю, что это невозможно сделать.

Я могу предположить, что вы подходите к этому несколько с неправильным отношением.

Идея Puppet заключается в , а не выполнять кучу ручной работы на одном сервере, чем реплицировать эту конфигурацию на другие серверы.

Идея состоит в том, чтобы вы объявляли , как вы хотите, чтобы ваши серверы выглядели Puppet, а затем Puppet заставляет все серверы выглядеть именно так.

Я бы рекомендовал полностью прекратить установку пакетов вручную, где этого можно избежать. Просто обновите свои манифесты Puppet, когда вы хотите установить новый пакет.

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

2
ответ дан 4 December 2019 в 13:37

Теги

Похожие вопросы