ООП в описании микросервисной архитектуры и мест, где она обитаетDevOps, контейнеры и развертывание

Программный комитет ещё не принял решения по этому докладу
Алексей Баитов
2ГИС

В далёком 2003 году пришёл в ИТ системным администратором, в разработку же погрузился в 2011 году, успев закончить аспирантуру. За это время поработал на PHP, JavaScript, реализовал серию RESTful сервисов и Python-драйвер для Git, запилил асинхронный реверсивный прокси с кэшем на Golang и систему рекламных сервисов на Scala.
Большинство проектов стартовал с нуля, поэтому параллельно рос в области автоматизации деплоя и тестирования.
В 2ГИС переключился на функциональное программирование — пишет на Scala и продолжает автоматизировать деплой.

Тезисы

Расскажу, каким инструментом пользуется 2ГИС для конфигурации и развёртывания микросервисов в Kubernetes. Сравню его с Helm. Оба инструмента для описания конфигурации микросервисов используют популярный сейчас язык разметки YAML. Этот язык имеет ограничения, побороть которые помогает ООП на выбранном языке программирования. В данном случае был выбран Python.

ООП позволяет описать микросервисную архитектуру как совокупность сервисов, наследовать окружения, реализовать калькулятор Kubernetes ресурсов, уйти от ревью yaml-описаний и сосредоточиться на изменениях в объектах Kubernetes, выявить циклические зависимости сервисов и максимально упростить шаблоны Kubernetes-объектов.

Python
,
Микросервисы, SOA
,
Управление конфигурацией
,
Devops / другое

Другие доклады секции DevOps, контейнеры и развертывание