Миньоны
Миньон — это агентское приложение, которое устанавливается на управляемых узлах инфраструктуры SaltStack и обеспечивает взаимодействие с мастером SaltStack.
Миньон обеспечивает выполнение команд, подаваемых мастером, сбор информации с управляемого узла и управление его программной конфигурацией.
Мньоном также называется сам управляемый узел с функционирующим агентом — службой salt-minion.
Версии миньонов для операционных систем Windows® и GNU/Linux имеют схожие функциональные возможности, но отличаются наборами методов модулей выполнения и модулей состояния.
При первом запуске миньон устанавливает соединение с мастером, адрес которого указан в конфигурационном файле миньона.
Миньон инициирует процедуру рукопожатия и отправляет свой публичный ключ мастеру.
После установки первичного соединения публичный ключ миньона сохраняется на мастере.
Затем мастер передает миньону свой публичный ключ вместе с ротируемым симметричным ключом AES, используемым для шифрования и дешифрования сообщений, передаваемых мастером.
Ключ AES передается зашифрованным публичным ключом, полученным ранее от миньона.
Весь дальнейший обмен между мастером и миньоном шифруется ключами AES.
Ротируемый ключ AES используется для шифрования команд, отправляемых мастером миньону, и для шифрования соединений с файловым сервером мастера SaltStack.
Ключ генерируется повторно при каждом перезапуске мастера, а также каждый раз, когда ключ миньона удаляется командой salt-key.
После ротации ключа все миньоны должны выполнить повторную аутентификацию для получения обновленного ключа.
Это позволяет выполнять ротацию ключа AES без необходимости прерывания соединения с миньоном.
Данные публикаций между мастером и миньоном шифруются ключом AES с ротацией.
При прямом взаимодействии мастера и миньона данные шифруются уникальным ключом AES для каждой сессии.
Допуск мастера к управлению миньонами
Программный комплекс Salt.Box поддерживает возможность работы с несколькими мастер-серверами.
Каждый мастер может управлять только зарегистрировавшимися на нём миньонами (т.е. выполнившими с ним успешный обмен ключами PKI).
Чтобы разрешить или запретить мастеру осуществлять управление миньонами, выполните следующие действия:
-
В главном меню системы выберите пункт
МастераРис. 1.
Рисунок 1. Выбор пункта Мастера в главном меню
Вы перейдёте на страницу управления мастерами Рис. 2.
-
Чтобы разрешить управление миньонами мастера, в соответствующей записи таблицы в поле Действия нажмите кнопку
Принять. -
Чтобы запретить управление миньонами мастера, в соответствующей записи таблицы в поле Действия нажмите кнопку
Отклонить.
Коллекции миньонов
Отображение коллекций, доступных пользователю
Право доступа к коллекции (или набору коллекций) предоставляется пользователю администратором.
Пользователи Salt.Box имеют возможность просмотра и управления определёнными наборами миньонов, называемыми коллекциями.
В Salt.Box выделена специальная роль collections_admin, предоставляющая пользователю право на просмотр корневой коллекции (root collection) миньонов, т.е. множества ВСЕХ миньонов, зарегистрированных на ВСЕХ мастерах, известных Salt.Box.
О добавлении пользователей в систему и назначении ролей см. раздел онлайн-документации Настройка KeyCloak.
В данном разделе рассматриваются примеры для пользователя user, которому назначена роль collections_admin.
Чтобы вывести список миньоны определённой коллекции, доступной пользователю, выполните следующие действия:
-
В главном меню системы выберите пункт
КлиентыРис. 3.
Рисунок 3. Выбор пункта Клиенты в главном менюНа появившейся выдвижной панели Рис. 4 будут показаны все доступные коллекции.
Рисунок 4. Список доступных коллекций -
Выберите нужную коллекцию.
В рабочей области окна браузера будет выведен список миньонов выбранной коллекции Рис. 5.
Рисунок 5. Список миньонов выбранной коллекции
Фильтр коллекции
Набор миньонов в коллекции определяется фильтром коллекции.
Пользователь может применить к исходной коллекции, отображаемой в рабочем окне, дополнительный фильтр и сохранить результирующую коллекцию в Salt.Box.
Фильтр является логическим выражением, состоящим из элементарных "Правило" — операций сравнения и предикатов (в зависимости от типов аргументов), объединённых логическими операторами AND и OR.
Приоритет действий при вычислении логического выражения — стандартный для булевой алгебры, также может использоваться группировка с помощью конструкции "+Группа фильтров" — своеобразных "скобок" в выражении.
На Рис. 6 показан пример дополнительного пользовательского фильтра.
-
В правом верхнем углу окна "Клиенты" нажмите кнопку "Фильтры" и выберите необходимые параметры фильтров Рис. 6.
-
Чтобы применить созданный фильтр к исходному списку, нажмите кнопку 🔍
Поисквнизу слева от набора условий фильтра Рис. 6.
Рисунок 6. Фильтр коллекции
-
Чтобы создать коллекцию на основе применённого фильтра, в правом верхнем углу окна "Клиенты" (рядом с кнопкой "Фильтры") нажмите кнопку ⚙. Далее в раскрывающимся списке выберите кнопку 💾 "Сохранить как новую" Рис. 7.
Рисунок 7. Выбор кнопки Сохранить как новую
-
В диалоговом окне создания коллекции заполните поля
НазваниеиСлагРис. 8.
Обратите внимание на подсказку с требованиями к набору символов, используемому в полеСлаг.
Нажмите кнопкуСоздать
Рисунок 8. Создание коллекции
Новая коллекция будет создана и станет доступной для выбора пользователю на выдвижной панели Рис. 4.
Информация о миньоне
После первого подключения миньона к мастеру на миньоне автоматически запускается метод модуля выполнения grains.items.
Этот метод выполняет сбор редко меняющейся (статической) информации об аппаратном и программном обеспечении миньона.
После выполнения указанного метода в карточке миньона отображается собранная информация Рис. 9.
Чтобы перейти в карточку миньона, на вкалдке Список выберите нужного миньона и нажамите на ссылку в поле ID клиента Рис. 9.
В карточке миньона, на вкладке Панель управления есть функция перехода на отдельную страницу миньона Рис. 9[1], копирования значения атрибута Рис. 9[2] и фильтрации по значению атрибута Рис. 9[3].
![]() |
|---|
На рисунках Рис. 10 – Рис. 15 показаны примеры групп полученных от миньонов данных grains.
![]() |
|---|
![]() |
|---|
![]() |
|---|
![]() |
|---|
На Рис. 15 представлено отображение всех данных grains.
![]() |
|---|
Создание команд и задач
Создание команды
Подробно порядок создания, управления и мониторинга выполнения команд SaltStack разобран в разделе онлайн-документации Команды.
Создание задачи
Подробно порядок создания, управления и мониторинга выполнения задач разобран в разделе онлайн-документации Задачи.
Просмотр задач, выполненных на миньонах отображаемой коллекции
Для просмотра списка всех задач, выполненных на миньонах текущей отображаемой коллекции, выберите вкладку Задачи, расположенную в верхней левой части страницы миньонов.
Вид таблицы задач показан на Рис. 16.
![]() |
|---|
В таблице 1 приведён перечень полей таблицы задач.
Таблица 1. Перечень полей таблицы задач| Имя поля | Значение |
|---|---|
| ID | Идентификатор задачи |
| Шаблон задачи | Название порождающего шаблона |
| Имя шаблона задачи | Системное имя порождающего шаблона |
| Коллекция | Коллекция-владелец задачи |
| Тип источника | Способ создания задачи:
|
| Пользователь | Пользователь, создавший задачу |
| Статус | Статус завершения задачи |
| Создан | Период создания |
Статистика по миньонам
Для просмотра статистической информации об аппаратном и программном обеспечении миньонов выберите вкладку Статистика, расположенную в верхней левой части страницы миньонов.
Блоки статистической информации имеют настраиваемое представление.
Можно менять размещение блоков на странице, выбирать текстовое представление или представление в виде диаграммы в рамках блока информации.
Вид страницы статистики показан на Рис. 17, Рис. 18.
![]() |
|---|
![]() |
|---|








