Дано:
Платформа обрабатывает около 5000 запросов в секунду (RPS) при обычных рабочих нагрузках и до 15000 RPS во время отправки новостных уведомлений. В некоторых случаях количество запросов может увеличиться экспоненциально. Это после того, как на определённых маршрутах достигается 80% попаданий в кэш с помощью CDN.
— Общая картина архитектуры приложения
— Детальная картина одной из частей архитектуры
Команда использовала подход Infrastructure Strangulation, чтобы мигрировать приложения в Kubernetes.
Мы модифицировали конвейеры деплоя для запуска приложений как на старой инфраструктуре, так и в Kubernetes. Внесли изменения в Edge-инфраструктуру, чтобы маршрутизировать трафик на обе инфраструктуры — Legacy и Kubernetes.
Когда миграцию признали успешной, мы просто прекратили отправку трафика на старую инфраструктуру и вывели её из эксплуатации через несколько дней.
Вот что им помогло:
— Кэширование узлов DNS
— Алгоритм Peak EWMA для балансировки нагрузки
— Несколько входных контроллеров для разных потоков
👉 Читайте статью полностью, чтобы узнать детали
#kubernetes #k8s #dns #peakewma
@DevOpsKaz 😛
