Как работать с Open Source проектами в Microsoft Azure
Максим Канев, заместитель технического директора и руководитель DevOps-практики WaveAccess, рассказывает, как внедрить инструменты и практики DevOps для создания, развертывания и сопровождения Open Source проектов с применением Microsoft Azure.

Внедрение философии DevOps в сочетании с миграцией на Open Source с помощью Microsoft Azure позволяют получить независимые от коммерческих технологий решения более высокого качества при снижении издержек. Максим Канев, заместитель технического директора и руководитель DevOps-практики WaveAccess, рассказывает, как внедрить инструменты и практики DevOps для создания, развертывания и сопровождения Open Source проектов с применением Microsoft Azure.
В своем опыте специалисты WaveAccess сталкивались с двумя наиболее популярными путями цифровой трансформации, по которым следует бизнес:
Путь цифровой трансформации №1
К наиболее распространенному пути, к сожалению, пока что относится не самый эффективный сценарий.
Представим, что случается негативная ситуация: например, заказчик многократно высказывает неудовлетворенность сервисом, и клиенты не получают обещанных обновлений. Тогда клиенты либо уходят к другому вендору, либо для решения этих задач разрабатывается кастомное ПО. Технические лидеры или руководители компании, как правило, сначала пытаются найти решение самостоятельно, изучая сторонний опыт и обращаясь ко внешним экспертам.
Дальше появляется идея – как повысить эффективность бизнеса, продукта или операции. Ее реализация поручается рабочей команде, которая зачастую представляет собой не отдельный коллектив, собранный для решения конкретной задачи, а группу людей, “выдернутых” из обычного процесса разработки. Из-за этого может не только пострадать работоспособность сервиса. Нередко это приводит и к текучке кадров, так как специалисты не справляются с возложенной на них нагрузкой.
После того, как спустя 2–5 релизов (что занимает от одного до трех месяцев) рабочая группа, не попав в ожидания руководства, распускается, в компанию приглашается внешний гуру. И от него, разумеется, ожидают молниеносного решения проблемы. После этого, как правило, есть два пути:
-
гуру удается убедить руководство поменять тактику, и процесс идет по успешной программе;
-
либо гуру создает еще больше проблем, и компания вновь остается без решения.
Путь цифровой трансформации №2
Таких ситуаций можно избежать, если процесс внедрения новых технологий и трансформации бизнеса начинать с глубокого анализа общей картины и изучения продукта/сервиса с точки зрения удовлетворенности клиента.
При таком подходе после фиксации проблемы создается отдельный проект трансформации, и выделяется отдельная рабочая группа специалистов, которые не задействованы на других задачах. Это, как правило, дороже, чем использование существующих ресурсов (даже с учетом переработок и премий), но в долгосрочной перспективе подход полностью оправдывает себя: лучше вложиться в тщательную проработку материала, чем потерять команду, а вместе с этим загубить весь проект и продукт.
Собранной команде трансформации важно зафиксировать существующие бизнес-процессы и критические функции: запросить у разработчиков и инженеров документацию, комментарии и описания, получить от конечных пользователей обратную связь по качеству сервиса и предоставляемой функциональности и в соответствии с отзывами спроектировать новое решение.
Эффективно в таких случаях проводить апробацию новых технологий, для чего как нельзя лучше подходит Microsoft Azure. Можно временно выделить часть ресурсов для проверки новых серверов, готовых решений по сбору и обработке данных, доставке контента клиенту (если это важно), а при необходимости – использовать инструмент машинного обучения, который предоставляет большое количество готовых моделей анализа данных и предсказаний.
После этого готовые решения внедряются, и первой группе заинтересованных пользователей предлагается высказать мнение по поводу предложенных сервисов. Если уже на этом этапе получен положительный фидбек, то имеет смысл проектировать внедрение этих решений в существующую инфраструктуру. Не стоит отказываться и от самого Microsoft Azure, если требования безопасности и существующий бюджет позволяют использовать мощности на серверах Azure.
Далее, по результатам опытной эксплуатации, фиксируется обновленная версия сервиса, которая впоследствии вводится в промышленную эксплуатацию. Но команде трансформации нужно продолжать собирать обратную связь как с пользователей новой системы, так и с тех, кто ее еще не видел, и эти отзывы формулировать в новые требования к существующим и обновленным сервисам.
Microsoft Azure для апробации технологий
Как упомянуто выше, для проверки технологий можно использовать Microsoft Azure. Платформа обладает рядом преимуществ:
-
Упрощенное управление ресурсами в подписке
Есть ресурсная группа, в которой применяются все настройки безопасности. Можно использовать инструменты автоматизации, а также считать уровень потребления относительно имеющихся ресурсов.
-
Минимальная гранулярность потребления ресурсов – до 100 мс
Serverless технология позволяет, не запуская ни одного сервера, выполнять различные функции на бэкенде через API.
-
Доступность сервисов гарантируется на уровне 99.999%
Как потребитель этих сервисов, компания может схожие по стабильности и функциональности сервисы предоставлять и своим клиентам.
-
Более 100 центров обработки данных по миру
Если сервис является географически распределенным, то можно обеспечить его более высокий уровень (скорость отклика и доставки контента), размещая мощности в ЦОДах по всему миру или в точках рядом с клиентами.
-
Высокая степень автоматизации операций управления ресурсами
Могут использоваться шаблоны менеджера ресурсов Azure, Terraform или другие Open Source технологии, позволяющие управлять вычислительными мощностями в облаке Azure и динамически масштабировать эти мощности.
-
Готовые управляемые сервисы популярных Open Source решений
Это базы данных, Kubernetes Services, различные кэши. Использование управляемых сервисов несомненно упрощает введение новых технологий в ИТ-ландшафт.
-
Более 160 точек сети доставки контента
В том числе за счет этого можно быстро или в режиме онлайн предоставить клиенту видеоматериалы, изображения или документы.
-
Глобальная сеть партнеров Microsoft с поддержкой 24/7
Благодаря этому можно подключить к проекту надежных подрядчиков с подтвержденным сертифицированным опытом.
Для погружения в тему рекомендуем изучить схемы практического обучения на портале Microsoft Learn.
Во второй части вас ждет дорожная карта эффективного и выгодного обновления ИТ-ландшафта с Microsoft Azure, а также эффективный путь от MVP к промышленной эксплуатации с помощью Kubernetes.
Поможем вам построить архитектуру и разработать окружение для Continuous delivery/Continuous integration.
Запросите смету или назначьте консультацию с нашим техническим экспертом: hello@wave-access.com
Расскажем подробнее о наших проектах!
Свяжитесь с нами:
hello@wave-access.com
+1 866 311 24 67 (США)
+45 20 55 6222 (Дания)
+49 721 957 3177 (Германия)