Цифровая трансформация ITSM-системы ИнфраМенеджер

Превью работы - 32

Модернизация ITSM-системы ИнфраМенеджер: кроссплатформенность, поддержка PostgreSQL, Linux и Docker

О проекте

ИнфраМенеджер — корпоративная ITSM-система класса Enterprise для управления ИТ-инфраструктурой, сервисными процессами, заявками пользователей, оборудованием, лицензиями, доступами и бизнес-процессами крупных организаций.

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

Команда SaaSoft выполнила комплексную модернизацию платформы, включающую миграцию с .NET Framework на .NET 6, внедрение поддержки PostgreSQL, контейнеризацию сервисов, поддержку Linux и автоматизацию процессов DevOps. Проект стал примером успешной трансформации крупной legacy-системы в современное высоконагруженное корпоративное решение.

В результате заказчик получил современную кроссплатформенную ITSM-платформу, готовую к масштабированию, импортозамещению и эксплуатации в инфраструктурах любого уровня сложности.

Задача: модернизация legacy-системы без потери функциональности

На момент начала работ ИнфраМенеджер представлял собой монолитное приложение на .NET Framework 4.6.1 с использованием Microsoft SQL Server и полной привязкой к операционной системе Windows.

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

Основные ограничения существующего решения:

  • использование устаревшего технологического стека .NET Framework 4.6.1;

  • работа исключительно под управлением Windows Server;

  • зависимость от Microsoft SQL Server;

  • отсутствие поддержки альтернативных СУБД;

  • высокая стоимость сопровождения инфраструктуры;

  • сложность масштабирования отдельных компонентов;

  • отсутствие контейнеризации;

  • ограниченные возможности автоматизации поставки новых версий;

  • длительный цикл тестирования и релизов.

Дополнительным фактором стало растущее число заказчиков, заинтересованных в использовании Linux и PostgreSQL в рамках программ импортозамещения и снижения затрат на лицензирование программного обеспечения.

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

Цели проекта

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

Для достижения этой цели требовалось:

  • выполнить миграцию с .NET Framework на .NET 6;

  • обеспечить поддержку Linux и Windows;

  • реализовать работу как с PostgreSQL, так и с Microsoft SQL Server;

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

  • внедрить процессы CI/CD и DevOps;

  • повысить производительность системы;

  • расширить возможности лицензирования;

  • модернизировать систему управления доступом;

  • оптимизировать внутренний Workflow Engine;

  • подготовить платформу к дальнейшему масштабированию.

Рефакторинг архитектуры и поддержка PostgreSQL

Одной из ключевых задач проекта стала модернизация архитектуры доступа к данным.

В исходной версии платформы значительная часть логики была тесно связана с Microsoft SQL Server, что существенно усложняло поддержку других СУБД.

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

В качестве ORM была внедрена Entity Framework Core, что позволило унифицировать работу с различными системами управления базами данных.

После модернизации ИнфраМенеджер получил полноценную поддержку:

  • Microsoft SQL Server;

  • PostgreSQL.

Для существующих клиентов была сохранена возможность продолжить использование Microsoft SQL Server без необходимости миграции данных.

Новые заказчики получили возможность развёртывать систему на PostgreSQL, что особенно актуально для проектов импортозамещения и корпоративных Linux-инфраструктур.

В результате была устранена зависимость платформы от конкретного поставщика СУБД и значительно расширены варианты внедрения системы.

Миграция корпоративной системы с .NET Framework на .NET 6

Следующим этапом проекта стала масштабная миграция приложения с .NET Framework 4.6.1 на современную платформу .NET 6.

Работы включали:

  • перенос серверных компонентов;

  • адаптацию библиотек и зависимостей;

  • обновление инфраструктурного кода;

  • модернизацию механизмов интеграции;

  • переработку устаревших модулей;

  • оптимизацию производительности;

  • адаптацию сервисов для кроссплатформенной работы.

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

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

Контейнеризация .NET-приложения и поддержка Linux

Для обеспечения гибкости развёртывания и повышения отказоустойчивости все сервисы платформы были переведены на контейнерную архитектуру.

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

После модернизации платформа получила полноценную поддержку:

  • Linux;

  • Windows Server;

  • Docker-инфраструктур;

  • контейнерных сред развёртывания.

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

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

Внедрение DevOps, GitLab CI/CD и автоматизация релизов

В рамках проекта команда SaaSoft внедрила современные DevOps-практики и автоматизировала процессы поставки программного обеспечения.

Для платформы был реализован полноценный конвейер непрерывной интеграции и доставки на базе GitLab CI/CD.

Были автоматизированы следующие процессы:

  • сборка приложений;

  • запуск автоматических тестов;

  • создание Docker-образов;

  • публикация артефактов;

  • подготовка тестовых окружений;

  • выпуск новых релизов;

  • доставка изменений между контурами.

В результате существенно сократилось время подготовки новых версий продукта, повысилась стабильность релизов и снизились риски возникновения ошибок при развертывании.

Автоматизация процессов позволила ускорить разработку и обеспечить более высокое качество поставляемого программного обеспечения.

Развитие функциональности платформы

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

Система лицензирования

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

Решение позволяет поддерживать различные модели лицензирования и упрощает сопровождение крупных корпоративных внедрений.

Управление доступом и ролями

Для повышения уровня безопасности был реализован обновлённый механизм управления доступом.

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

Оптимизация Workflow Engine и Low-Code процессов

Особое внимание было уделено внутреннему Workflow Engine — одному из ключевых компонентов платформы.

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

В рамках проекта были оптимизированы:

  • маршруты согласования;

  • обработка бизнес-правил;

  • работа триггеров;

  • обработка событий;

  • пользовательские сценарии автоматизации;

  • исполнение Low-Code процессов.

В результате удалось повысить производительность Workflow Engine и обеспечить более эффективную работу платформы при высоких нагрузках.

Результаты проекта

В результате модернизации была создана современная корпоративная ITSM-система, соответствующая актуальным требованиям Enterprise-разработки.

Заказчик получил:

  • современную архитектуру на .NET 6;

  • поддержку Linux и Windows;

  • возможность использования PostgreSQL и Microsoft SQL Server;

  • контейнеризированную инфраструктуру на Docker;

  • автоматизированный GitLab CI/CD-конвейер;

  • расширенные механизмы лицензирования;

  • гибкую систему управления доступом;

  • оптимизированный Low-Code Workflow Engine;

  • повышение производительности платформы;

  • готовность к масштабированию и дальнейшему развитию.

Какие задачи решила модернизация платформы

После завершения проекта ИнфраМенеджер получил возможности, востребованные современными корпоративными заказчиками:

  • работа в Linux-инфраструктуре;

  • поддержка PostgreSQL для проектов импортозамещения;

  • сохранение совместимости с Microsoft SQL Server;

  • контейнерное развёртывание в Docker;

  • автоматизированная поставка релизов через GitLab CI/CD;

  • повышение производительности .NET-приложения;

  • упрощение сопровождения и обновления системы;

  • масштабирование под высокие нагрузки;

  • развитие Low-Code автоматизации бизнес-процессов;

  • снижение зависимости от конкретных технологий и поставщиков.

Технологии проекта

  • .NET 6

  • ASP.NET Core

  • Entity Framework Core

  • PostgreSQL

  • Microsoft SQL Server

  • Docker

  • GitLab CI/CD

  • Linux

  • Windows Server

  • REST API

Итоги

Проект модернизации ИнфраМенеджера стал примером успешной трансформации крупной корпоративной ITSM-системы с многолетней историей развития. Команда SaaSoft выполнила миграцию с .NET Framework на .NET 6, реализовала поддержку PostgreSQL и Linux, провела контейнеризацию сервисов и внедрила современные DevOps-практики.

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

Технические характеристики
  • Frontend ---------------------------------------------------------------------------------------------------------------------------------------------------------- Vue.js, knockout.js
  • Базы данных ---------------------------------------------------------------------------------------------------------------------------------------------------------- MS SQL, PostgreSQL
  • Backend ---------------------------------------------------------------------------------------------------------------------------------------------------------- .NET, ASP.NET, C#