Список стандартных пакетов

Я изучаю систему марионеток, и теперь мне нужно сделать следующее задание. У нас есть несколько серверов с одинаковой ОС (Altlinux p6,t6) - puppet-agent и есть puppet-master.

На агентах установлено несколько пакетов, например. 200 пакетов на первом, 300 на втором... Но нам нужно только 180 установленных. Мы знаем имена необходимых пакетов, но не знаем имен других (ненужных пакетов).

Мой вопрос: как я могу проверить или установить (если еще не установлены) необходимые пакеты и удалить другие пакеты (мы не знаем имен других установленных пакетов)?

Помогите, пожалуйста

WBR Valentin

3 ответа

Я изучил это и пришел к выводу, что, хотя это можно сделать, определив модули марионеток с пакетом {обеспечить => отсутствующим} для пакетов, которые вы хотите получить, это не готовый способ

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

В конце концов, однако, я нашел самое чистое решение для создания новых серверов и использования Puppet для управления с самого начала. Ваши результаты могут отличаться.

Это должно работать:

resources { 'package':
    purge => true,
}

Сначала я бы сделал это:

resources { 'package':
    purge => true,
    noop  => true,
}

А затем проверьте журналы, чтобы увидеть, что он сделал бы. Только когда я убедился, что все работает нормально, я удалил noop,

В любом случае, он говорит Puppet удалить все ресурсы типа package (как указано в названии - resource { 'user': purge => true } удалит пользователей, например), которыми не управляет Puppet. То есть, если у вас есть строка package { 'x': }то этот пакет не будет удален, если установлен. Любая посылка без такой декларации будет удалена.

Puppet может делать только то, что вы говорите, только если человек может сделать это для вас, не создавая список каким-либо образом. Вы должны сообщить Puppet, какие пакеты не принадлежат компьютеру.

Самое простое решение, предложенное Тимом, - правильно перерисовать и собрать машины с помощью Puppet.

Другие вопросы по тегам