Назад | Перейти на главную страницу

GKE мультирегиональный

Приложение (pod) в настоящее время работает в GLB <-> GKE Europe (например, Нидерланды). Мне нужно масштабировать приложение для обслуживания клиентов в США и АЗИИ (например, SFO и Япония).

Я заметил кубемчи в бете.

Пожалуйста, помогите прояснить, достаточно ли дублирования GKE в США и Азии или Европе.

Пожалуйста, поделитесь некоторыми лучшими практиками / рекомендациями для этого сценария.

Я могу опоздать на несколько недель, но для кого-то это может быть актуально.

Внимание: инструмент kubemci - это временное решение, призванное помочь пользователям начать использовать многокластерный Ingress. Этот инструмент будет заменен реализацией с использованием kubectl, которая обеспечивает больше возможностей Kubernetes. Как только реализация kubectl станет доступной, вам нужно будет вручную перенести все приложения, использующие kubemci.

Я не знаю вашей архитектуры, но если возможно, используйте балансировка нагрузки контейнера с глобальный балансировщик нагрузки.

Простая настройка встроенного балансировщика нагрузки контейнера, при которой вы можете делать все с ресурсами Kubernetes, не дает вам глобальной балансировки нагрузки. Вам нужно будет использовать автономные группы конечных точек сети(NEG). Создайте балансировщик нагрузки вручную (или с помощью любых инструментов, которые вы используете), создайте серверная служба который включает NEG для одной и той же службы в разных кластерах и добавляет серверную службу в балансировщик нагрузки. Вы получите преимущества премиальный сетевой уровень (меньшая задержка для клиентов во всем мире) и перетекание трафика, если служба перегружена или не работает в одном из регионов.

Общий подход заключается в создании кластеров GKE с идентичной конфигурацией в регионах. Нужна ли вам региональная копия приложения или нет, в основном зависит от количества пользователей в регионе и ограничений по времени ответа.

Возможная реализация, которой вы могли бы следовать, описана здесь: Как развернуть географически распределенные сервисы на Kubernetes Engine с помощью kubemci

Тогда несколько кластеров могут быть сбалансированы по нагрузке с помощью многокластерного Ingress (Кубемчи)

Как вы заметили, kubemci в настоящее время находится в стадии бета-тестирования и имеет ограниченную поддержку. Следовательно, маловероятно, что это применимо для рабочих нагрузок; скорее для проб.