Шаблоны конфигураций
Шаблоны конфигураций — это комплексный инструмент управления, который объединяет логику исполнения (SLS-код) и интерфейс ввода данных (JSON-схема).
Они предназначены для автоматизации задач и политик, а также для создания интерактивных форм (шаблонов задач) на основе конфигурационных файлов.
Шаблоны могут быть импортированы из внешних источников (Git, архивы), подключены из локальных директорий или спроектированы непосредственно в системе с помощью встроенного визуального редактора.
Интерфейс страницы шаблонов конфигураций
Для перехода на страницу с шаблонами конфигураций в главном меню выберите пункт Настройки Рис. 1 [1].
На появившейся выдвижной панели в разделе Core выберите пункт Шаблоны конфигураций Рис. 1 [2].
![]() |
|---|
Откроется страница шаблонов конфигураций Рис. 2.
![]() |
|---|
Интерфейс страницы Шаблоны конфигураций Рис. 2 состоит из следующих элементов:
-
Поле Поиск по источнику, шаблону, файлу Рис. 2 [1]
В верхней части страницы расположен компонент поиска, который позволяет оперативно находить необходимые элементы в больших списках
-
Кнопка Обновить Рис. 2 [2]
при нажатии данной кнопки обновляется список источников, выполняется загрузка и клонирование репозиториев
-
Кнопка-меню действий ⚙ с раскрывающимся списком Рис. 2 [3]
Содержит дополнительные опции Рис. 3:
- Синхронизировать с GitLab: элемент управления для запуска процесса обновления конфигураций из внешнего репозитория;
- Обновить смонтированные источники:предназначена для синхронизации данных из всех подключённых смонтированных источников (например, SSHFS, сетевые директории или внешние файловые системы);
- Добавить локальный источник: метод используется для подключения конфигураций, которые уже находятся непосредственно на сервере, где развернута система (например, в директории
/var/lib/saltbox/templates); - Добавить из git-репозитория: рекомендуемый метод для командной работы и обеспечения версионности конфигураций;
- Добавить из архива: метод «разового» импорта, предназначенный для быстрой загрузки готового набора файлов, упакованных в архив.
Рисунок 3. Кнопка-меню действий с источниками шаблонов
-
Список источников в виде отдельных карточек источников, например Локальные шаблоны Рис. 2 [4]
таблица, отображающая состояние текущих настроенных источников конфигураций
Карточка источника содержит следующие элементы интерфейса:
-
Название и тип источника: указано наименование Локальные шаблоны, тип источника Локальный (выделено синим цветом) и текущим статусом Не подключен (выделено желтым цветом);
-
Описание: под названием приведено краткое пояснение — Встроенный источник для хранения пользовательских шаблонов конфигураций;
-
Метаданные: отображается дата создания источника;
-
Управление содержимым: в нижней части Рис. 2 [4] расположены раскрывающиеся секции Шаблоны и Файлы (sshfs), которые позволяют просматривать и управлять соответствующим контентом.
В секции Шаблоны отображаются найденные SLS-файлы с блок-схемой из источника.
В секции Файлы (sshfs) отображаются любые файлы (например, архивы) с указанием пути назначения относительно корня sshfs.примечаниеДобавление файлов возможно только после подключения источника.
-
кнопка ✚ (Создать шаблон) Рис. 2 [7]: открывает окно для проектирования собственных шаблонов;
-
Действия: в правой верхней части блока расположены кнопки
ПодключитьРис. 2 [5] иУдалитьРис. 2 [6] для управления состоянием и жизненным циклом данного источника.предупреждениеКогда в шаблонах конфигураций присутствует только один источник Локальные шаблоны и при этом нажать кнопку
УдалитьРис. 2 [6] появляется уведомление — Cannot remove the last local source. At least one local source must be present (Ошибка отсутствия доступного локального источника).
Данное предупреждение выполняет защитную функцию, блокируя удаление последнего активного источника конфигураций.
Система обеспечивает наличие как минимум одного локального источника в качестве обязательного условия для функционирования модуля.
-
Локальный источник шаблонов
Создание шаблона задачи
Ниже представлен пример создания шаблона задачи, который позволяет просматривать пиллары клиентов.
Для создания шаблона задачи, выполните следующие действия:
-
В поле карточки источника, например Локальные шаблоны, в секции Шаблоны нажмите кнопку ✚ (Создать шаблон) Рис. 2 [7].
Откроется окно создания шаблона задачи Рис. 4, которое представляет собой среду для проектирования конфигурационных схем.
Рисунок 4. Окно создания шаблона задачи: режим "Визуальный редактор формы"
Интерфейс окна Создание шаблона задачи разделен на следующие функциональные блоки:
-
Навигация по редакторам
пользователь может переключаться между двумя режимами работы: Визуальный редактор формы Рис. 4 [1] и Полный редактор шаблона Рис. 4 [2], Рис. 5
Режим Визуальный редактор формы Рис. 4 [1] предназначен для проектирования шаблонов задач через графический интерфейс и состоит из следующих элементов:
- блок метаданных: позволяет задать Название схемы Рис. 4 [3] и Описание схемы Рис. 4 [4] в соответствующих полях ввода;
- Управление полями: кнопка
+ Добавить полеРис. 4 [5] используется для формирования состава полей будущей формы
Режим Полный редактор шаблона Рис. 5 — инструмент для прямой настройки конфигураций структуры шаблона.
к сведениюРежим Полный редактор шаблона предоставляет прямой доступ к коду конфигурации, что позволяет определять сложные логические структуры, валидацию и параметры отображения с помощью JSON-схем.
Редактор использует специфические маркеры#start_schemaиend_schema#для обозначения начала и конца конфигурационного блока.
Основные компоненты конфигурации:-
json_schema: раздел, определяющий структуру данных, типы объектов и обязательные поля (например,
kwargsиpillar) -
ui_schema: раздел, отвечающий за визуальное представление и заголовки полей (
ui:title)в интерфейсе формы.
Рисунок 5. Окно создания шаблона задачи: режим "Полный редактор шаблона"
-
Рабочая область предпросмотра
блок Предпросмотр формы Рис. 4 [6] предназначен для визуального отображения создаваемой структуры в режиме реального времени
-
Инструменты валидации
в нижней части окна доступны кнопки
ПроверитьРис. 4 [7] иДанные формыРис. 4 [8], предназначенные для контроля корректности созданной конфигурации
КнопкаПроверить: запускает валидацию введенных данных.
Система проверяет корректность заполнения обязательных полей.
При успешной проверке появляется системное уведомление Форма заполнена корректно.
КнопкаДанные формы:открывает модальное окно, в котором отображается итоговая структура данных (JSON-представление) настроенного шаблона. -
Сохранение
кнопка
СохранитьРис. 4 [9] в правом верхнем углу окна фиксирует итоговые изменения в шаблоне.
-
-
На вкладке Визуальный редактор формы окна создания шаблона перейдите в поле Название схемы Рис. 4 [3] и введите название, например
Посмотреть пилларРис. 6 [1].
В блоке Предпросмотр формы отобразится значение поля Название схемы Рис. 6 [2].
Рисунок 6. Заполнение полей "Название схемы" и "Описание схемы"
-
Затем перейдите в поле Описание схемы Рис. 4 [4] и введите значение, например
Вы можете посмотреть пиллар (значение)Рис. 6 [3]. -
Нажмите кнопку
+ Добавить полеРис. 6 [4]. -
В открывшемся диалоговом окне Добавить новое поле заполните поля
Имя поля,Описание, установите флагОбязательное поле— определяет, обязательно ли поле для заполнения Рис. 7.
Нажмите кнопкуДобавить полеРис. 7.
Рисунок 7. Добавление нового поля в форму
После добавления поле появится в списке в окне создания шаблона задачи и доступно для настройки Рис. 8.
Рисунок 8. Настройка нового поля
-
Перейдите на вкладку Полный редактор шаблона Рис. 9[1].
Рисунок 9. Редактирование кода шаблона на вкладке "Полный редактор шаблона"
-
В редакторе кода, ниже добавьте переменные шаблона, макросы и вызовы макросов Рис. 9[2].
-
В блоке Предпросмотр формы ведите ключ пиллара в обязательном поле атрибута
nameРис. 9[3]. -
Нажмите кнопку
СохранитьРис. 9[4]. -
В открывшемся диалоговом окне Сохранение шаблона заполните поле атрибута
Имя файлаи нажмите кнопкуСохранитьРис. 10.
Рисунок 10. Диалоговое окно "Сохранение шаблона"
В результате выполненных действий созданный шаблон появится в секции Шаблоны карточки источника Рис. 11[1].
![]() |
|---|
Для шаблона Рис. 11[1] доступны следующие кнопки и действия:
- Кнопка
Редактировать шаблоноткрывает шаблон в редакторе
- Кнопка
Дублировать шаблонсоздаёт дубликат шаблона
- Кнопка
Удалить шаблонудаляет выбранный шаблон
Подключение и синхронизация локального источника шаблонов
Для подключения локального источника с созданным шаблоном (в примере это источник Локальные шаблоны) нажмите кнопку Подключить Рис. 11[2].
После подключения источника появится уведомление о подключении Рис. 12[1], статус источника сменится на Подключен Рис. 12[2].
Для синхронизации источника нажмите кнопку Синхронизировать Рис. 12[3].
![]() |
|---|
Кнопка Синхронизировать Рис. 12[3] раскладывает шаблоны (/srv/saltbox_salt/<имя>.sls) и файлы (/srv/sshfs/…) по всем принятым контроллерам.
После этого шаблон появляется в пункте Клиенты при создании новой задачи (в диалоговом окне Выберите шаблон задачи), а форма параметров генерируется из JSON-схемы.
Кнопка: Отключить Рис. 12[4]:
- предназначена для разрыва соединения с источником;
- делает шаблоны временно недоступными.
В результате синхронизации появится уведомление о синхронизации Рис. 13[1], рядом со статусом источника Подключен появится статус Активен Рис. 13[2] и отобразится история синхронизации Рис. 13[3].
![]() |
|---|
Добавление файлов (sshfs)
После подключения источника рядом с секцией Файлы (sshfs) появится кнопка ✚ (Добавить файл) Рис. 12[5].
Для вызова диалогового окна добавления файлов нажмите кнопку ✚ Рис. 12[5].
В открывшемся диалоговом окне Добавление файла в источник "Локальные шаблоны" Рис. 14 заполните обязательные поля:
-
Путь назначения Рис. 14[1]: пользователь должен указать путь, по которому файл будет сохранен относительно корня sshfs;
-
Источник файла Рис. 14[2]: предусмотрены два способа загрузки:
- вкладка Файл Рис. 14[3]
путем выбора локального файла (нажатием или перетаскиванием в выделенную область);
- вкладка По URL Рис. 14[4]
позволяет импортировать данные напрямую из внешнего сетевого ресурса, минуя этап локальной загрузки
Рисунок 14. Добавление файла в локальный источник
- вкладка Файл Рис. 14[3]
Окно Добавление файла в источник "Локальные шаблоны" позволяет пользователю загрузить и разместить файлы в структуре источника.
Добавьте файл (например, архив grub-2.06.zip) и нажмите кнопку Добавить Рис. 14[5].
Добавленный файл с указанным путём назначения отобразится в секции Файлы (sshfs) Рис. 15.
![]() |
|---|
Добавление локального источника шаблонов
Локальный источник (Local Repository) — это встроенный механизм хранения конфигураций и файлов без использования внешних системам хранения (например, Git-репозиториям, artifact-хранилищам или HTTP-источникам).
Для добавления локального источника шаблонов выполните следующие действия:
-
На странице шаблонов конфигураций нажмите кнопку ⚙ Рис. 2 [3].
-
Из списка действий выберите метод Добавить локальный источник Рис. 3.
-
В открывшемся диалоговом окне Добавление локального источника заполните поля Название (например,
demo_nginx), Описание, Пространство имён Рис. 16.
Рисунок 16. Диалоговое окно "Добавление локального источника"
-
Нажмите кнопку
ДобавитьРис. 16.Созданный источник появится на странице шаблонов конфигураций Рис. 17.
Рисунок 17. Страница шаблонов конфигураций: созданный локальный источник
-
Рядом с созданным источником нажмите кнопку
ПодключитьРис. 17 [1].
Добавление источника из архива
Для добавления источника из архива выполните следующие действия:
-
На странице шаблонов конфигураций нажмите кнопку ⚙ Рис. 2 [3].
-
Из списка действий выберите метод Добавить из архива Рис. 3.
-
В открывшемся диалоговом окне Добавление источника из архива заполните поля (обязательные поля указаны жирным шрифтом):
- Название (например,
Из архива) Рис. 18 [1]; - Описание;
- Пространство имён;
- Архив (добавьте файл в виде архива) Рис. 18 [2].
Рисунок 18. Диалоговое окно "Добавление источника из архива"
- Название (например,
-
Нажмите кнопку
ДобавитьРис. 18 [3].Добавленный источник появится на странице шаблонов конфигураций Рис. 19 с типом источника Архив (выделено фиолетовым цветом) Рис. 19 [1] и текущим статусом Не подключен (выделено желтым цветом) Рис. 19 [2].
Рисунок 19. Список шаблонов в архиве
-
Нажмите кнопку
ПодключитьРис. 19 [3]. -
Для синхронизации источника нажмите кнопку
СинхронизироватьРис. 20 [1].
Рисунок 20. Синхронизация с архивом
В результате синхронизации — появится уведомление о синхронизации Рис. 20 [2], рядом со статусом источника Подключен появится статус Активен Рис. 20 [3].
После этого шаблон появляется в пункте Клиенты при создании новой задачи (в диалоговом окне Выберите шаблон задачи), а форма параметров генерируется из JSON-схемы.
Добавление источника из git-репозитория
Для добавления источника из git-репозитория выполните следующие действия:
-
На странице шаблонов конфигураций нажмите кнопку ⚙ Рис. 2 [3].
-
Из списка действий выберите метод Добавить из git-репозитория Рис. 3.
-
В открывшемся диалоговом окне Добавление источника из git-репозитория Рис. 21 заполните поля (обязательные поля указаны жирным шрифтом):
- Название (например,
Migration) Рис. 21 [1]; - Описание;
- Пространство имён;
- URL репозитория (добавьте ссылку на репозиторий) Рис. 21 [2];
- Пользователь Рис. 21 [2];
- Пароль/токен Рис. 21 [2];
- Ветка (добавьте название ветки репозитория) Рис. 21 [3].
Рисунок 21. Диалоговое окно "Добавление источника из git-репозитория"
- Название (например,
-
Нажмите кнопку
ДобавитьРис. 21 [4].Добавленный источник появится на странице шаблонов конфигураций Рис. 22 с типом источника Git (выделено желтым цветом) Рис. 22 [1] и текущим статусом Не подключен (выделено желтым цветом) Рис. 22 [2].
В этом же блоке будет отображён список шаблонов, доступных в этом источнике.
Рисунок 22. Список шаблонов в git-репозитории
-
Нажмите кнопку
ПодключитьРис. 22 [3]. -
Для синхронизации источника нажмите кнопку
СинхронизироватьРис. 23 [1].
Рисунок 23. Синхронизация с git-репозиторием
В результате синхронизации — появится уведомление о синхронизации Рис. 23 [2], рядом со статусом источника Подключен Рис. 23 [3] появится статус Активен Рис. 23 [4].
После этого шаблон появляется в пункте Клиенты при создании новой задачи (в диалоговом окне Выберите шаблон задачи), а форма параметров генерируется из JSON-схемы.
Дублирование, редактирование, удаление шаблона источника
Дублирование шаблона
Для дублирования шаблона источника (например, из одного источника в другой) выполните следующие действия:
-
Перейдите в карточку источника (с добавленными шаблонами), выберите необходимый шаблон и нажмите кнопку
Дублировать шаблонРис. 24 [1].
Рисунок 24. Переход в диалоговое окно дублирования шаблона задачи
-
В открывшемся окне Дублирование шаблона задачи (вкладка Визуальный редактор формы) присвойте новое название схемы в поле Название схемы Рис. 25 [1] и нажмите кнопку
СохранитьРис. 25 [2].
Рисунок 25. Окно дублирования шаблона задачи
-
В следующем диалоговом окне Сохранение шаблона заполните поля атрибута
Целевой источник(источник, в который добавляется дубликат) Рис. 26 [1],Имя файлаРис. 26 [2] и нажмите кнопкуСохранитьРис. 26 [3].
Рисунок 26. Диалоговое окно "Сохранение шаблона"
В результате выполненных действий дублированный шаблон появится в секции Шаблоны карточки источника Рис. 27.
![]() |
|---|
Редактирование шаблона
Для редактирования шаблона выполните следующие действия:
-
Перейдите в карточку источника (с добавленными шаблонами), выберите необходимый шаблон и нажмите кнопку
Редактировать шаблонРис. 27 [1]. -
В открывшемся окне Редактирование шаблона задачи проведите изменения (например, на вкладке Визуальный редактор формы добавлено новое поле Рис. 28 [1,2]) и нажмите кнопку
СохранитьРис. 28 [3].
Рисунок 28. Окно редактирования шаблона задачи
-
В следующем диалоговом окне Сохранение шаблона нажмите кнопку
СохранитьРис. 29.
Рисунок 29. Диалоговое окно "Сохранение шаблона"
Удаление шаблона
Для удаления шаблона выполните следующие действия:
-
Перейдите в карточку источника (с добавленными шаблонами), выберите необходимый шаблон и нажмите кнопку
Удалить шаблонРис. 27 [2]. -
В диалоговом окне Удаление шаблона нажмите кнопку
УдалитьРис. 30.
Рисунок 30. Диалоговое окно "Удаление шаблона"
В результате действий появится уведомление об удалении шаблона Рис. 31.






