Статья опубликована в рамках: LXXXVI-LXXXVII Международной научно-практической конференции «Экспериментальные и теоретические исследования в современной науке» (Россия, г. Новосибирск, 27 марта 2023 г.)
Наука: Информационные технологии
Скачать книгу(-и): Сборник статей конференции
дипломов
АВТОМАТИЗАЦИЯ ПРОЦЕССОВ ОБРАБОТКИ ТЕХНОЛОГИЧЕСКИХ ДАННЫХ СЕТЕЙ МОБИЛЬНОЙ СВЯЗИ С ПРИМЕНЕНИЕМ МЕТОДОЛОГИИ DEVOPS
AUTOMATION OF PROCESSING OF TECHNOLOGICAL DATA OF MOBILE COMMUNICATION NETWORKS USING THE DEVOPS METHODOLOGY
Pavel Balashov
Master student, Samara University,
Russia, Samara
Larisa Zelenko
Assistant professor, Samara University,
Russia, Samara
АННОТАЦИЯ
В статье рассматривается автоматизация процессов обработки технологических данных сетей мобильной связи с применением методологии DevOps. В статье описываются внедряемые технологии, позволяющие автоматизировать процессы интеграции и развёртывания компонентов информационной системы. Результатом внедрения DevOps методологии стало уменьшение простоя серверных ресурсов и уменьшение времени подготовки и развертывания большого количества копий информационной системы. Можно сделать вывод, что внедрение DevOps методологии целесообразно при развертывании большого количества копий информационной системы.
ABSTRACT
The article discusses the automation of processes for processing technological data of mobile communication networks using the DevOps methodology. The article describes the implemented technologies that allow automating the processes of integration and deployment of information system components. The implementation of the DevOps methodology resulted in a reduction in the downtime of server resources and a reduction in the time for preparing and deploying a large number of copies of an information system. It can be concluded that the introduction of DevOps methodology is advisable when deploying a large number of copies of the information system.
Ключевые слова: DevOps методология; OSS/BSS; мобильные сети; CI/CD; инфраструктура.
Keywords: DevOps methodology; OSS/BSS; mobile networks; CI/CD; infrastructure.
OSS/BSS (Operation Support System/Business Support System) – это класс программных продуктов, которые используют операторы связи, TV-компании, энергетические предприятия и другие организации, регулярно и персонально взаимодействующие с клиентами: ведут индивидуальные аккаунты, следят за потреблением услуг и регулярно выставляют счета своим абонентам. Телекоммуникационная компания не может существовать без процессов, которые обеспечивает OSS/BSS, это ядро ее бизнеса [1].
Информационные системы, относящиеся к классу OSS/BSS, отвечают за управление инфраструктурой, ресурсами и взаимодействие с абонентами компании. То есть основная функция таких решений, работающих в комплексе, заключается в том, чтобы услуги предоставлялись и учитывались. Эта задача функционально делится на несколько частей. За правильную работу сетевой инфраструктуры и оборудования (сети, коммутаторы, базовые станции и т.д.) отвечает OSS [2].
Взаимодействие с абонентами (учет предоставленных услуг по тарифам, контроль состояния счета, выставление счетов и т.д.) происходит во второй части системы – BSS. Основа BSS – биллинговая система, в которой происходят все финансовые взаиморасчеты с абонентами.
По заказу ООО «МТС ДИДЖИТАЛ» была поставлена задача по автоматизации процессов обработки технологических данных сетей мобильной связи с применением методологии DevOps для информационной системы, обрабатывающей технологические данные сетей мобильной и фиксированной связи, относящейся к системам класса OSS.
DevOps (Development & Operations) – это набор методологий разработки программного обеспечения, нацеленных на активное взаимодействие и интеграцию специалистов по разработке и специалистов по информационно-технологическому обслуживанию [3].
Для внедрения DevOps методологии необходимо использовать определённые технологии, их можно разделить на следующие категории:
- система управления версиями;
- CI/CD (Continuous Integration/Continuous Delivery) – непрерывная интеграция и непрерывная доставка;
- управление конфигурацией;
- оркестратор;
- инструменты мониторинга;
- платформа облачной инфраструктуры.
Для выбора более подходящих инструментов следует определиться с требованиями к ресурсам разворачиваемой инфраструктуры. Основываясь на большом объёме получаемом и обрабатываемом трафике на серверах, были определены следующие требования для одного макрорегиона:
- дисковое пространство – 20 ТБ;
- оперативная память – 1 ТБ;
- процессор – 144 ядра и 288 потоков;
- сетевая карта – 10 портов со скоростью передачи данных 10 Гбит/сек.
После определения требований к разворачиваемой инфраструктуре, были выбраны следующие инструменты:
- в качестве системы управления версиями был выбран используемый в данный момент GitLab;
- для непрерывной интеграции, которая должна обеспечить последовательный и автоматизированный способ сборки, упаковки и тестирования приложений, был выбран GitLab CI;
- для непрерывной доставки, которая должна обеспечить автоматизированное развёртывание ПО на целевой машине, после инициирования оператором, был выбран Argo CD;
- для управления конфигурацией будет использоваться подход IaC, для конфигурации приложений на сервере будет использоваться Ansible, для конфигурации сети и образа виртуальной машины будет использоваться Terraform;
- в качестве оркестратора системы, которая организуют расположение и координируют взаимосвязь инструментов в одном проекте, распределяют задачи, трафик между ними и контролируют их выполнение, будет использоваться open-source проект для управления кластером контейнеров Kubernetes;
- для мониторинга будут использоваться Prometheus, Alertmanager и Grafana;
- для развертывания облачной инфраструктуры будет использоваться open-source проект OpenStack, он позволит разворачивать виртуальные машины, объединять ресурсы физических серверов, на которых он установлен и выдавать их виртуальным машинам в зависимости от целей.
Схема непрерывной интеграции и непрерывной доставки представлена на рисунке 1.
Рисунок 1. Схема непрерывной интеграции и непрерывной доставки
Разработчики использует ветку master для релиза кода, ветку feature для доработки. Код автоматически проверяется с помощью платформы SonarQube. После чего GitLab CI выполняет сборку, если артефакт прошёл проверку безопасности, GitLab CI загружает его в реестр образов. Собранный образ тестируют, если тесты прошли удачно, оператор разворачивает данный образ в кластере K8s с помощью манифестов Argo CD в репозитории GitLab. Настройка и поддержка кластера K8s осуществляется с помощью Terraform и Ansible.
После внедрения DevOps методологии было проведено сравнение используемых серверных ресурсов для одного макрорегиона, сравнительные результаты представлены в таблице 1, и сравнение затрат времени на подготовку инфраструктуры и развёртывания информационной системы, сравнительные результаты представлены в таблице 2.
Таблица 1.
Сравнение используемых серверных ресурсов для одного макрорегиона
Наименование ресурса |
Исходные данные |
После внедрения DevOps |
Дисковое пространство, ТБ |
100 |
20 |
Оперативная память, ГБ. |
2016 |
736 |
Потоки CPU, кол-во |
384 |
256 |
Таблица 2.
Сравнение затрат времени на подготовку инфраструктуры и развёртывания информационной системы
Наименование процесса |
Исходные данные, чел. ч. |
После внедрения DevOps, чел. ч. |
||
1 копия |
10 копий |
1 копия |
10 копий |
|
Подготовка инфраструктуры |
2 |
20 |
14 |
16 |
Развёртывание информационной системы |
3 |
30 |
1 |
1 |
Итоговое время |
5 |
50 |
15 |
17 |
После внедрения DevOps методологии наблюдается уменьшение простоя серверных ресурсов, так как благодаря облачной инфраструктуре, реализованной с помощью OpenStack, ресурсы физических серверов выдаются виртуальным машинам в зависимости от целей. Так же уменьшилось время на подготовку инфраструктуры и развертывание информационной системы при большом количестве копий, хотя время при одной копии увеличилось. Следовательно, можно сделать вывод, что внедрение DevOps методологии целесообразно использовать для сокращения простоя серверных ресурсов и времени развертывании большого количества копий информационной системы.
Список литературы:
- OSS/BSS – базовое программное обеспечение в телекоме [Электронный ресурс]. URL: https://www.kommersant.ru/doc/2594410 (дата обращения: 20.03.2023).
- OSS/BSS [Электронный ресурс]. URL: https://en.wikipedia.org/wiki/OSS/BSS (дата обращения: 20.03.2023).
- Инфраструктура, управляемая кодом: методология и инструменты [Электронный ресурс]. URL: https://cyberleninka.ru/article/n/infrastruktura-upravlyaemaya-kodom-metodologiya-i-instrumenty (дата обращения: 20.03.2023).
дипломов
Оставить комментарий