Перейти к содержанию

4.02 Архитектурная схема

Описание архитектуры

Система управления ИТ-активами SkyV ITAM реализована в микросервисной архитектуре. В качестве среды выполнения может выступать любая Docker-совместимая система (в т.ч. локально Docker, так и инфраструктура на базе Kubernetes или аналогичных).

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

Архитектурная схема

img61.png

Основные модули SkyV ITAM

Наименование Описание
1 Keyсloak service Данный сервис используется в качестве IDM/IDP сервиса в проекте.
2 Api Manager Сервис API принимает запросы от фронта и отправляет сообщения в RabbitMQ ожидая ответы сервисов.
3 Sv-itam-front - Фронтенд портала (VueJS);
- взаимодействие с бэкендом для получения данных;
- отображение данных в UХ портала.
4 Nginx Обратный прокси-сервер, развернутый в виде контейнера и обеспечивающий следующие функции:

- публикацию ресурсов для доступа по протоколам HTTP и HTTPS для доступа пользователей и администраторов к компонентам ITAM;
- доступ к сервису Apache Superset путем проксирования запросов пользователей и администраторов на сервер Apache Superset.
5 Apache Superset Сервер Apache Superset - платформа для визуализации данных и аналитики бизнеса, которая позволяет пользователям создавать дашборды и отчеты на основе данных, имеющихся в БД сервера ITAM.
6 AssetService Cервис подписывается на события обменника asset.service в RabbitMQ и отправляет в ответ запрашиваемые данные в сервис ApiManager.
7 RabbitMQ RabbitMQ – это брокер сообщений с открытым исходным кодом, который реализует протокол AMQP (Advanced Message Queuing Protocol). Применяется в системах для асинхронной интеграции, где требуется гибкая и надежная маршрутизация сообщений.
8 File Service Сервис обработки запросов на работу с файловыми объектами. Хранилищем является объектное хранилище на базе открытого ПО Minio.
9 Neo4j Графовая система управления базами данных с открытым исходным кодом, реализованная на Java.
10 AuditService Сервис AuditManager собирает сообщения по изменению всех сущностей и сохраняет их в БД.
11 Calculating indicators service Сервис осуществляет расчет атрибутов активов по настроенным правилам расчета (общее количество связей и др.)
12 Camunda service Сервис на базе opensource решения Camunda обеспечивает возможность настройки бизнес-процессов и последующего их исполнения системой. Используется для настройки логики взаимосвязанного дискаверинга различными агентами и настройки иной логики.
13 DictionaryService Сервис обеспечивает ведение нормативно-справочной информации.
14 Report service Сервис обеспечивает наполнение аналитической базы данных, а также формирование отчетов, печатных форм.
15 Business Rule service Сервис обеспечивает возможность настройки событийных правил – в т.ч. отправка уведомлений, запуск бизнес-процессов по событию и др.
16 Кластер PostgreSQL Хранилище данных, представленное в виде кластер PostgreSQL, собранного в виде активной и пассивной ноды.
17 MongoDB Документоориентированная система управления базами данных, не требующая описания схемы таблиц. Служит для промежуточного хранения данных, получаемых от источников данных.
18 WorkerService Сервис сбора данных с объектов с помощью протокола SSH, WMI или SNMP.
19 DiscoveryService Сервис осуществляет маппинг и преобразование данных, получаемых из интегрируемых системы.