Приложение (pod) в настоящее время работает в GLB <-> GKE Europe (например, Нидерланды). Мне нужно масштабировать приложение для обслуживания клиентов в США и АЗИИ (например, SFO и Япония).
Я заметил кубемчи в бете.
Пожалуйста, помогите прояснить, достаточно ли дублирования GKE в США и Азии или Европе.
Пожалуйста, поделитесь некоторыми лучшими практиками / рекомендациями для этого сценария.
Я могу опоздать на несколько недель, но для кого-то это может быть актуально.
Внимание: инструмент kubemci - это временное решение, призванное помочь пользователям начать использовать многокластерный Ingress. Этот инструмент будет заменен реализацией с использованием kubectl, которая обеспечивает больше возможностей Kubernetes. Как только реализация kubectl станет доступной, вам нужно будет вручную перенести все приложения, использующие kubemci.
Я не знаю вашей архитектуры, но если возможно, используйте балансировка нагрузки контейнера с глобальный балансировщик нагрузки.
Простая настройка встроенного балансировщика нагрузки контейнера, при которой вы можете делать все с ресурсами Kubernetes, не дает вам глобальной балансировки нагрузки. Вам нужно будет использовать автономные группы конечных точек сети(NEG). Создайте балансировщик нагрузки вручную (или с помощью любых инструментов, которые вы используете), создайте серверная служба который включает NEG для одной и той же службы в разных кластерах и добавляет серверную службу в балансировщик нагрузки. Вы получите преимущества премиальный сетевой уровень (меньшая задержка для клиентов во всем мире) и перетекание трафика, если служба перегружена или не работает в одном из регионов.
Общий подход заключается в создании кластеров GKE с идентичной конфигурацией в регионах. Нужна ли вам региональная копия приложения или нет, в основном зависит от количества пользователей в регионе и ограничений по времени ответа.
Возможная реализация, которой вы могли бы следовать, описана здесь: Как развернуть географически распределенные сервисы на Kubernetes Engine с помощью kubemci
Тогда несколько кластеров могут быть сбалансированы по нагрузке с помощью многокластерного Ingress (Кубемчи)
Как вы заметили, kubemci
в настоящее время находится в стадии бета-тестирования и имеет ограниченную поддержку. Следовательно, маловероятно, что это применимо для рабочих нагрузок; скорее для проб.