DevOps ИТ-митап в ЛАНИТ. Как это было
В 2023 году мы в ЛАНИТ решили активнее развивать профессиональные комьюнити, где люди могли бы не только общаться с единомышленниками, но и обмениваться опытом. Так и появилась идея провести серию тематических ИТ-митапов, один из которых был бы посвящен DevОps. О том, как прошел этот митап, рассказываем под катом.
Митап длился всего два часа, но за это время спикеры поделились реальными кейсами из своей практики, рассказали о внедрении новых технических решений и инструментов для автоматизации процессов, поговорили о проблемах, с которыми они столкнулись, и описали методы их решения.
Мероприятие началось с выступления Александра Н., руководителя департамента продуктовой разработки НОРБИТ, и Ильи К., руководителя отдела сопровождения и DevОps НОРБИТ, с презентацией »365 простых шагов, или как мы перешли с 28 часов развертывания на 2 клика».
Спикеры сфокусировались на собственной разработке компании ― low-code bpm-платформе NBT. Решение создано на базе микросервисной архитектуры и подходит для создания корпоративных систем, автоматизации CRM, SRM и внутренних бизнес-процессов.
Сервисы платформы
Также они остановились на автоматизации процессов развёртывания и поддержки продуктов и поделились опытом сокращения операционной нагрузки на инженеров инфраструктуры. В рамках активностей подготовили регламенты для команд аналитики, разработки и тестирования, подключили очередь задач. Команда развернула базовые стенды DEV и QA-контура и объединила функцию DevOps и сопровождения в одном направлении. Специалисты сформировали очередь запросов со сроками исполнения и SLA, также настроили проекты Tempo и BigGantt, создали и актуализировали базу знаний по delivery, внутренней архитектуре. В результате более 70% задач devops-инженера — плановое развитие инфраструктуры.
Было уделено внимание и переходу на Infrastructure-as-Code. Спикеры также отметили, какие инструменты для этого были использованы и как удалось сократить релизный цикл (более чем в 12 раз) и автоматизировать сборку и деплой.
Александр и Илья упомянули о важности использования мониторинга в подобных проектах и поделились трудностями, которые возникли в ходе работы, и подходами, которые были выбраны для решения поставленных задач.
Вторым выступал приглашенный спикер Иван К. (@IvanMimo), главный технический руководитель разработки в крупном банке. Он рассказал, как вместе с коллегами участвовал в создании платформы на базе Kubernetes, которая будет помогать трансформации ИТ и в перспективе заменит OpenShift. Его команда создала архитектуру будущего решения, проработала аспекты безопасности и набор сервисов из коробки. Также она занималась разработкой автоматизации и процессами, отвечающими за доступ к платформе и совместную работу пользователей.
Для решения этой непростой задачи Иван и его команда использовали технологии Kubernetes, Cilium (with eBPF), Istio service mesh, Tyk Gateway API, Teleport, GoLang, Ansible, ArgoCD.
Инженерыдепартамента корпоративных систем ЛАНИТ Михаил Ж. и Константин В. поделились, как осуществить мониторинг крупной федеральной системы на примере ГИС ЕИС «Госзакупки». Они рассказали о выборе подходящей системы мониторинга и подходах внедрения алертинга, а также о том, почему не предпочли Prometheus.
Команда построила кластер VictoriaMetrics, который с применением модели локальных vmagent позволил перейти от модели pull к модели push.
В рамках развития мониторинга внедрили созданные специалистами экспортеры и сменили привычный подход к алертингу. Также помогли разработчикам построить экраны по метрикам их приложений для отображения основных показателей работы каждого из реестров и настроили автоматизированную передачу экранов Grafana и алертов для production по коммиту.
Для расчета показателей здоровья применили не описанное ранее решение, которое привело к уменьшению затрат ресурсов на эти вычисления.
Закрывал митаптимлид направления DevOps компании «Онланта» Максим П. Он обозначил преимущества GitOps-подхода, сравнил популярные инструменты Flux и Argo CD, рассказал о принципах моделей pull и push changes. Более подробно спикер остановился на инструментах, внедренных в собственную платформу ONPLATFORM, и кейсах, с которыми пришлось столкнуться на практике.
GitOps-подход для ONPLATFORM выбрали неслучайно. Среди преимуществ такого подхода Максим отметил универсальный pipeline доставки приложений в кластер kubernetes из Git-репозитория, хранение состояния кластера в коде (IaC) и непрерывную синхронизацию с Git-репозиторием. Истории и подписи в камитах Git-репозитория обеспечивают прозрачность отслеживания всех изменений в инфраструктуре. Важным является и то, что MR (Merge Requests ― запрос на внесение изменений в кодовую базу и слияние веток) минимизирует риски человеческой ошибки при деплое приложений и тем самым увеличивает надежность системы.
Для осуществления GitOps-подхода в ONPLATFORM используется Flux. В отличие от Argo CD, он удобнее в управлении множеством кластеров и заточен под конкретные задачи. Flux соответствует Linux way и позволяет пользователям расширять функционал при помощи модулей. Кроме инструментов GitOps (Flux) в ONPLATFORM более 30 различных компонентов, которые отвечают за мониторинг, логирование, безопасность, управление кластерами k8s, автоматизацию поставки программного кода и многое другое.
В своем выступлении Максим поделился кейсом, когда у заказчика деплой осуществлялся вручную. Человеческий фактор значительно увеличивал время выхода новой версии приложения. Внедрение ONPLATFORM с преднастроенным GitOps-подходом позволило в автоматическом режиме перенастраивать действующую инфраструктуру и синхронизировать ее с состоянием репозитория, что сократило time-to-market на 30%.
После каждой презентации зрители могли задать вопросы спикерам. Авторов самых интересных наградили ценными призами.