Служба управления конфигурациями "Осмакс"

Описание приложения

Версия 1.2.0

Содержание

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

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

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

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

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

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

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

    Архитектура

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

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

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

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

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

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

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

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

    Бэкенд

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

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

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

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

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

    Также в состав бэкенда входит отдельный модуль координации (см. описание ниже)

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

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

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

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

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

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

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

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

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

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

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

    • осуществляет инвентаризацию парка устройств;

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

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

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

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

    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.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    • PostgreSQL;

    • Redis;

    • S3.

    Глоссарий

    Basic Input/Output System (BIOS)

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

    Unified Extensible Firmware Interface (UEFI)

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

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

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

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

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

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

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

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

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

    Сокращения