Canary Releases with PrometheusАрхитектура в DevOps, DevOps для CTO

Доклад принят в программу конференции
Андрей Маркелов
Infobip

Ведущий инженер-программист в компании Infobip, более 11 лет занимается разработкой приложений на Java в области финансов и телекоммуникаций. Помимо бизнес-проектов, активно участвует в разработке opensource-продуктов, в том числе собственных плагинов для продуктов Atlassian, очень популярных в сообществе. Активный участник Atlassian Community, апологет использования Prometheus, Docker и Redis.

andrey.v.markelov@gmail.com
https://ru.linkedin.com/in/andreymarkelov
Тезисы

Рассмотрим пример. В системе огромное количество приложений, которые обновляются не реже одного раза в неделю. Притом производственное окружение невозможно повторить на тестовом окружении, и нет группы тестирования. Можно ли минимизировать ошибки разработки? Можно!

В докладе будет рассказано, как используя метод «canary releases» с реализацией на метриках Prometheus, удалось обезопасить микросервисы от ошибок разработки и архитектуры, каким образом проходило внедрение, а также детали реализации.

Суть метода заключается в следующем. При работе при высокой нагрузке приложение разворачивается на один узел с уменьшенным количеством трафика, а после проверки производится обновление на всех узлах. Сравниваются метрики, полученные с тестового узла с историческими метриками других узлов, и принимается решение о стабильности версии. Это и называется «canary releases».

Также будет рассказано о роли Prometheus и сложностях внедрения.

Логирование и мониторинг
,
Непрерывное развертывание и деплой
,
Devops / другое
,
QA / другое

Другие доклады секции Архитектура в DevOps, DevOps для CTO