Общие сведения

Продукт «Служба управления конфигурациями "Осмакс"» — это средство распространения и обновления программного обеспечения, а также массового автоматизированного управления конфигурациями парка устройств в гетерогенной среде, например, АРМ, ВРМ, серверы и другое оборудование.

Новое в документации

Руководство по установке:

  • добавлен раздел «Обновление информации о модуле исполнения для сбора истории пользовательских сессий на сервере управления (master)»;

  • обновлен раздел «Настройка окружения» — добавлена информация о необходимости создания дополнительного пользователя с правами на чтение данных для доступа к БД;

  • изменена последовательность шагов установки и настройки бэкенда продукта — сначала выполняется установка deb-пакета inno-lcm-core, включающего сборку бэкенда, а затем настройка параметров конфигурации бэкенда;

  • обновлен раздел «Конфигурация бэкенда»:

    • в блок «Параметры настройки подключения к БД» добавлено описание параметров, задающих имя и пароль пользователя с правами только на чтение данных (read-only) для подключения к БД:

      • quarkus.datasource."lcm-db-readonly".username;

      • quarkus.datasource."lcm-db-readonly".password;

    • в блок «Параметры настройки SSL-соединения с Apache Kafka» добавлено описание параметров:

      • mp.messaging.incoming.salt-events-kafka.ssl.protocol;

      • mp.messaging.incoming.salt-events-kafka.ssl.keystore.location;

      • mp.messaging.incoming.salt-events-kafka.ssl.keystore.password;

      • mp.messaging.incoming.salt-events-kafka.ssl.truststore.location;

      • mp.messaging.incoming.salt-events-kafka.ssl.truststore.password;

    • в блок «Параметры настройки логирования» добавлено описание параметра настройки уровня логирования quarkus.log.level;

    • в блок «Параметры настройки интеграции с S3-совместимым хранилищем» добавлено описание параметров, задающих имена бакетов S3 для хранения общих файлов и данных Pillar:

      • lcm.salt-adapter.s3.state-bucket-name;

      • lcm.salt-adapter.s3.pillar-bucket-name;

    • добавлено описание параметров настройки сбора данных с устройств:

      • lcm.inventory.settings.agent.minutes-to-become-offline;

      • lcm.inventory.settings.agent.user-session-file-path;

      • lcm.inventory.settings.agent.active-user-session-file-path;

    • из блока «Настройка подключения к LDAP-серверу» удалены параметры:

      • lcm.inventory.ldap.datasource[0].query-prefix;

      • lcm.inventory.ldap.datasource[0].base-dn;

      • lcm.inventory.job.sync-users.cron.expr.

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

Руководство по эксплуатации:

Описание API:

  • обновлен раздел «Управление настройками продукта» — методы getSaltSchedules и updateSaltSchedules заменены на группы методов getSaltScheduleSettings и updateSaltScheduleSettings соответственно;

  • добавлено описание API-методов:

    • getUserSessionsSettings — получение настроек сбора истории активности пользователей;

    • getConfigurationReport — экспорт списка конфигураций.

Руководство администратора:

Добавлены разделы:

Основные преимущества

Основные конкурентные преимущества продукта:

  • санкционно-устойчивое решение российского производства (при разработке модулей продукта используются только решения с открытым исходным кодом) для управления конфигурациями парка рабочих устройств, в том числе их ОС и ПО;

  • зонтичное решение, которое обеспечивает управление политиками, развертыванием ОС и ПО, удаленный доступ, инвентаризацию программно-аппаратного обеспечения и отчетность по нему в одном пользовательском интерфейсе;

  • поддержка различных версий Linux, в том числе импортозамещенных, например, Astra Linux.

Архитектура

На Рис. 1 представлена верхнеуровневая архитектура продукта.

lcm arch mvp
Рис. 1. Верхнеуровневая архитектура

Продукт включает следующие модули:

Модуль Описание

Магазин приложений

Позволяет сотрудникам организации выполнять автоматизированную установку, удаление и обновление ПО

Кабинет администратора

Предоставляет графический интерфейс администратора для работы с коллекциями пользователей и устройств, настройки конфигураций, постановки задач на исполнение конфигураций, а также отслеживания статуса применения конфигураций к устройствам

Бэкенд

Бэкенд продукта можно условно разделить на следующие логические модули:

  • «Инвентаризация» — отвечает за хранение данных об устройствах, пользователях и другой ИТ-инфраструктуры;

  • «Каталог конфигураций» — обеспечивает взаимодействие с хранилищем спецификаций конфигураций и ПО;

  • «Менеджер конфигураций» — отвечает за хранение данных о конфигурациях, создании коллекций устройств и назначении конфигураций коллекциям;

  • «Управление ПО» — позволяет пользователям управлять ПО на своих рабочих устройствах;

  • «Интеграция с модулем координации» — обеспечивает передачу данных с серверов управления в бэкенд продукта с помощью подписки на топик Apache Kafka, а также распределение запросов на установку ПО между серверами управления

Модуль координации

Отвечает за координацию и непосредственное применение конфигураций на устройствах. Также осуществляет сбор данных с машин для инвентаризации. Одним из компонентов модуля является платформа с открытым исходным кодом SaltStack

Агент

Клиентское приложение для управления устройством, на котором оно установлено

Продукт интегрируется со следующими внешними сервисами и системами:

  • Apache Kafka —  распределенная система обмена сообщениями между серверными приложениями в режиме реального времени;

  • PostgreSQL — база данных для долговременного хранения данных пользователей и АРМ, а также настроек аутентификации;

  • Веб-сервер — ПО, которое используется для обработки запросов от веб-браузеров и ответа на них, а также для предоставления доступа к веб-ресурсам, таким как веб-страницы, изображения, файлы и другие данные (например, Nginx-сервер);

  • cлужба каталогов — сервис, предоставляющий централизованные средства управления ресурсами автоматизированной системы, включающий LDAP-сервер и сервис аутентификации Kerberos (в качестве службы каталогов может выступать Active Directory Domain Services, Samba, FreeIPA и др.);

  • cистема хранения контента — S3-совместимое файловое хранилище (например, Ceph, Minio и др.).

Функциональные возможности

Основные функции продукта:

  • предоставляет магазин приложений для сотрудников компании, через который они могут выполнять поиск необходимого ПО, знакомиться с его описанием и инструкциями, создавать заявки на установку или обновление ПО, а также просматривать их статус;

  • предоставляет пользовательский интерфейс администратора, с помощью которого он может просматривать и управлять устройствами и ПО, установленным на них, управлять обновлениями, отслеживать их состояния и возможные проблемы (например, загруженность ЦПУ или нехватка памяти на диске);

  • позволяет выполнять автоматическую установку или обновление ПО как на все устройства, так и на отдельные или группы (коллекции) устройств;

  • осуществляет инвентаризацию парка устройств и предоставляет отчётность об аппаратной и программной конфигурациях, установленных на них;

  • отслеживает текущий статус системы и ее компонентов.

Используемый стек технологий

При разработке и эксплуатации продукта используются компоненты с открытым исходным кодом:

Компонент Описание Лицензия Ссылка на документацию

Apache Kafka

Распределенная платформа для обработки потоков данных

Apache License 2.0

Официальный сайт

Kotlin

Язык программирования

Apache License 2.0

Официальный сайт

PostgreSQL

Объектно-реляционная система управления базами данных

PostgreSQL License

Официальный сайт

Python

Язык программирования

Python Software Foundation License

Официальный сайт

Quarkus

Cреда Java, которая обеспечивает высокую производительность, низкое потребление памяти и быструю загрузку модулей продукта

Apache License 2.0

Официальный сайт

React JS

JavaScript-библиотека с открытым исходным кодом для разработки пользовательских интерфейсов

MIT

Официальный сайт

SaltStack

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

Используемая версия должна быть не ниже 3006.3 и не выше 3007.0

Apache License 2.0

Официальный сайт

Поддерживаемые операционные системы

Работа продукта поддерживается на следующих операционных системах:

  • Astra Linux Special Edition версии 1.7.3;

  • Astra Linux Common Edition версии 2.12.46;

  • Ubuntu версий 20.04, 22.04;

  • Debian версии 10.

Для работы агентов (minions) может использоваться любая операционная система, которая поддерживается SaltStack. Однако текущая версия продукта протестирована на взаимодействие только с операционными системами, перечисленными выше. Если на агенте (minion) установлена другая операционная система, например, Windows или macOS, часть данных об устройстве, которые собираются в рамках инвентаризации, может быть утеряна.

Аутентификация

Аутентификация пользователей

Для аутентификации пользователей используется доменная аутентификация.

Межсервисная аутентификация

В зависимости от характера взаимодействия в продукте используется:

  • аутентификация веб-приложений Kerberos client-side-аутентификация;

  • аутентификация при обращении к хранилищу PostgresSQL выполняется на основе username/password;

  • SSL-сертификаты.

Аутентификация во внешних сервисах

Аутентификация сервера управления выполняется при помощи LDAP, с последующим получением токена, также дополнительно поддерживается PAM-аутентификация.

Отказоустойчивость

Для обеспечения отказоустойчивости и доступности все модули продукта, кроме бэкенда, могут быть развернуты минимум в двух экземплярах (бэкенд может быть развернут только в одном экземпляре). Балансировка входящего https-трафика обеспечивается инфраструктурой заказчика. Возможность резервирования серверов управления, а также балансировка трафика от агентов, выполняется средствами модуля координации.

Резервное копирование

Продукт не предоставляет собственных методов резервного копирования. Используются возможности по резервному копированию, предоставляемые инфраструктурными сервисами:

  • PostgreSQL;

  • Redis;

  • S3;

  • Apache Kafka.

Глоссарий

Basic Input/Output System (BIOS)

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

Unified Extensible Firmware Interface (UEFI)

Интерфейс между операционной системой и микропрограммами, управляющими низкоуровневыми функциями оборудования, его основное предназначение: корректно инициализировать оборудование при включении системы и передать управление загрузчику или непосредственно ядру операционной системы. EFI — технология, предназначенная для замены BIOS которая обеспечивает более быструю загрузку компьютера, улучшенную безопасность и более простую настройку системы. Она также позволяет использовать жесткие диски большого объема и поддерживает новые технологии, такие как Secure Boot, которая обеспечивает защиту от вредоносных программ.

Автоматизированное рабочее место (АРМ)

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

Виртуальное Рабочее Место (ВРМ)

Программный комплекс с защищенным доступом для виртуализации рабочих столов. Предназначен для цифровых систем с высокими требованиями к безопасности.

Операционная система (ОС)

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

Программное обеспечение (ПО)

Программа или множество программ, используемых для управления компьютером.