Глоссарий
ABAC (Attribute-Based Access Control)
Модель контроля доступа к объектам, основанная на анализе правил для атрибутов объектов или субъектов, возможных операций с ними и окружения, соответствующего запросу.
API-шлюз (API Gateway)
Компонент, принимающий входящие запросы от веб-интерфейса, выполняющий их валидацию и маршрутизацию к сервисам SALT.BOX.
Docker
Платформа класса «платформа как услуга» (PaaS), использующая виртуализацию на уровне операционной системы для упаковки приложений в контейнеры.
Позволяет автоматизировать развертывание приложений и запускать их в изолированной среде в разных вычислительных средах (например, локально, в облаке или на сервере).
JWT (JSON Web Token)
Токен аутентификации, используемый для передачи информации о пользователе и его правах доступа между компонентами SALT.BOX.
KeyCloak
Программный продукт с открытым исходным кодом, позволяющий осуществлять единый вход (single sign-on) с управлением идентификацией и доступом, в современные приложения и сервисы.
KeyCloak поддерживает различные протоколы, такие как OpenID, OAuth версии 2.0 и SAML, и предоставляет такие функции, как управление пользователями, двухфакторная аутентификация, управление разрешениями и ролями, создание сервисов токенов и т. д.
LDAP (Lightweight Directory Access Protocol)
Протокол прикладного уровня, предназначенный для доступа к службам каталогов и управления ими.
Используется для централизованного хранения и получения информации о пользователях, группах и других объектах, а также для аутентификации и авторизации в информационных системах.
OPA (Open Policy Agent)
Open Policy Agent (OPA) — механизм исполнения политик доступа, обеспечивающий централизованное принятие решений на основе декларативно заданных правил и входных данных.
SALT.BOX
Программный комплекс, предназначенный для централизованного описания, автоматизированного развертывания, поддержания и контроля целевого состояния программного обеспечения, операционных систем, сервисов и инфраструктурных ресурсов на множестве управляемых устройств посредством декларативных или процедурных описаний конфигураций.
SaltStack
Система управления конфигурациями и удалённого выполнения операций.
SaltStack — это платформа с открытым исходным кодом на языке Python, построенная на динамической коммуникационной шине.
SDK (Software Development Kit)
Набор инструментов для разработки (библиотеки, документация, примеры кода), предназначенный для создания приложений и упрощения работы с API или сервисом.
Агент SALT.BOX / Агент
Компонент программного комплекса, функционирующий на управляемом устройстве и обеспечивающий применение конфигураций, выполнение команд управления, сбор служебной информации и обмен данными с контроллером SALT.BOX.
Бандл (Bundle)
Архив, содержащий политики, правила и данные (например, в формате Rego), используемый для распространения и обновления политик в системе.
Грейн (Grain)
Статические или редко изменяемые данные о системе (ОС, CPU, IP-адреса, тип виртуализации и т.д.), которые собираются при запуске клиента.
Представляет собой пару «ключ–значение», которая содержит факт о системе (например, имя хоста, его сетевые адреса).
Движок (Engine)
Компонент контроллера SALT.BOX, выполняющий фоновые процессы, обработку событий и взаимодействие с другими сервисами SALT.BOX.
Задача (Task)
Сущность SALT.BOX, определяющая состав операций управления конфигурациями, целевые управляемые устройства или коллекции управляемых устройств, условия и время выполнения, а также параметры контроля результатов выполнения указанных операций.
Инвентаризация (Inventory)
Процесс сбора и хранения информации об аппаратном и программном обеспечении управляемых устройств.
Коллекция (Collection)
Логическое объединение управляемых устройств, сформированное по определённым критериям и используемое для организации совместного управления, мониторинга и администрирования входящих в него устройств.
Команда (Job)
Сущность SALT.BOX, представляющая вызов команды salt на контроллере. Команда содержит параметры вызова команды salt, обеспечивает ее выполнение и представление пользователю статуса выполнения, промежуточных и окончательных результатов выполнения.
Контроллер SALT.BOX / Контроллер
Серверный компонент SALT.BOX, обеспечивающий взаимодействие системы управления SALT.BOX с агентами SALT.BOX: трансляцию управляющих команд системы управления SALT.BOX в исполняемые операции на управляемых устройствах, сбор и агрегацию результатов их выполнения с последующей передачей агрегированной информации в систему управления SALT.BOX.
Модуль выполнения (Execution Module)
Компонент SALT.BOX — Python-модуль, содержащий функции, которые выполняются агентом SALT.BOX и позволяют управлять системой или получать информацию о ней.
Модуль состояния (State Module)
Компонент SALT.BOX, реализующий логику приведения системы к заданному состоянию.
Модуль состояния проверяет текущее состояние управляемого устройства, при необходимости вызывают модули выполнения для внесения изменений и обеспечивают применение требуемой конфигурации управляемого устройства, заданной в SLS-файлах в декларативном виде.
Модули состояния обладают свойством идемпотентности: повторное применение одного и того же состояния не приводит к повторным (избыточным) изменениям на управляемом устройстве.
Нацеливание (Targeting)
Механизм для указания целевых управляемых устройств, на которых будут выполняться команды или операции, путем сопоставления описания цели с именами хостов, системной информацией, группами или комбинациями параметров.
Использование нацеливания обеспечивает возможность выборочного применения изменений и минимизирует риск случайных операций на неподходящих узлах.
Очередь задач (Task Queue)
Механизм управления асинхронным выполнением задач, обеспечивающий их распределение и обработку рабочими процессами.
Пиллар (Pillar)
Именованная запись в безопасном хранилище данных, содержащая конфигурационные параметры, учетные данные или другие данные, которые централизованно назначаются и предоставляются целевым управляемых устройствам.
Часто используется для хранения конфиденциальной информации (например, паролей, ключей и настроек).
Планировщик (Scheduler)
Компонент SALT.BOX, обеспечивающий выполнение задач по расписанию.
Политика доступа (Access Policy)
формализованный набор правил, определяющих условия, при которых субъекту разрешается или запрещается выполнение определённых действий над защищаемыми ресурсами с учётом заданных атрибутов, ролей, контекста, внешних данных и других факторов.
Рабочий процесс (Worker)
Процесс, выполняющий задачи из очереди и обрабатывающий их результаты.
Результат выполнения команды (Job Return)
Полный набор данных, который агент возвращает после выполнения команды (Job).
Он содержит результат работы команды или состояния, связан с командой с конкретным идентификатором (JID) и может храниться в кеше контроллера SALT.BOX или передаваться во внешние системы.
Серверная инфраструктура
Совокупность программно-аппаратных средств, предназначенных для размещения и функционирования компонентов «Система управления SALT.BOX» и «Контроллер SALT.BOX».
Система управления SALT.BOX
Серверная подсистема программного комплекса, обеспечивающая централизованное управление клиентскими устройствами и включающая ядро, шину обмена сообщениями и хранилище данных.
Событие (Event)
Механизм для обмена информацией между компонентами системы в режиме реального времени.
Система событий построена на основе локального интерфейса ZeroMQ.
События обычно инициируются запросами на выполнение действий на клиенте или контроллере SALT.BOX и результатами этих действий.
Состояние (State)
Декларативное описание конфигурации, которая должна быть применена к клиенту.
Управляемое устройство (Клиентское устройство)
Устройство, на котором установлен агент SALT.BOX.
Фильтрация (Filtering)
Механизм выбора клиентов на основе их характеристик (например, Grains), используемый для группировки и нацеливания.
Цель (Target)
Клиент (или группа клиентов), на которых будет выполнена команда или применено состояние SaltStack.
Шаблон задачи (Task Template)
Декларативное описание набора действий, параметров и логики выполнения.
Часто создается с использованием движка шаблонов Jinja для обеспечения гибкости и повторного использования кода.
Предопределённый шаблон задачи используется для повторного выполнения типовых операций с заданными параметрами.
Шина обмена сообщениями (Event Bus)
Механизм обмена сообщениями между компонентами системы, обеспечивающий асинхронное взаимодействие и обработку событий.
Шлюз SALT.BOX (SALT.BOX Gateway)
Компонент платформы SALT.BOX, реализующий API-шлюз (API Gateway) для микросервисной архитектуры.
Ядро SALT.BOX / Ядро
Центральный сервис SALT.BOX, обеспечивающий обработку запросов, взаимодействие с компонентами системы и выполнение операций через SaltStack.