Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Шлюз приложений для контейнеров — это подсистема балансировки нагрузки уровня приложений (уровень 7) и динамический продукт управления трафиком для рабочих нагрузок, работающих в кластере Kubernetes. Он расширяет портфель балансировки нагрузки приложений Azure и является новым предложением в рамках семейства продуктов Шлюз приложений.
Шлюз приложений для контейнеров — это эволюция контроллера входящего трафика для шлюза приложений (AGIC),приложения Kubernetes, которое позволяет клиентам службы Azure Kubernetes Service (AKS) использовать родной шлюз приложений Azure для балансировки нагрузки. В текущей форме AGIC отслеживает изменения в подмножестве ресурсов Kubernetes и применяет их к Application Gateway, используя Azure Resource Manager (ARM).
Как это работает?
Шлюз приложений для контейнеров состоит из трех компонентов:
- Шлюз приложений для контейнерных ресурсов
- Фронтенды
- Ассоциации
Упоминание следующих зависимостей также имеют место в Шлюзе приложений для контейнеров.
- Частный IP-адрес
- Делегирование подсети
- Управляемое удостоверение, назначаемое пользователем
Архитектура Шлюз приложений для контейнеров представлена на следующем рисунке:
Дополнительные сведения о том, как Шлюз приложений для контейнеров принимает входящие запросы и направляет их в серверный целевой объект, см. в компонентах шлюза приложений для контейнеров.
Возможности и преимущества
Шлюз приложений для контейнеров предлагает совершенно новые функции при выпуске, такие как:
- Разделение трафика / взвешенное чередование по кругу
- Взаимная аутентификация с серверной системой назначения
- Поддержка Kubernetes для Ingress и Gateway API
- Гибкие стратегии развертывания
- Повышенная производительность, обеспечивающая обновления в почти реальном времени для добавления или удаления POD, маршрутов и проб.
Шлюз приложений для контейнеров предоставляет эластичный и масштабируемый входной трафик для кластеров AKS и включает новый уровень обработки данных, а также управляющую плоскость с новым набором API ARM, отличающимся от существующего шлюза приложений. Эти API отличаются от текущей реализации Шлюз приложений. Шлюз приложений для контейнеров находится за пределами плоскости данных кластера AKS и отвечает за входящий трафик. Служба управляется компонентом контроллера ALB, который выполняется внутри кластера AKS и соответствует API шлюза Kubernetes.
Функции балансировки нагрузки
Шлюз приложений для контейнеров поддерживает следующие функции управления трафиком:
- Автоматические повторные попытки
- Автомасштабирование
- Устойчивость зоны доступности
- Пользовательские и стандартные проверки состояния
- Поддержка сертификатов ECDSA и RSA
- gRPC
- Перезапись заголовков
- HTTP/2
- Управление трафиком HTTPS:
- Завершение SSL-запросов
- Сквозное шифрование SSL
- Поддержка API Ingress и Gateway
- Переадресация запросов HTTP/HTTPS уровня 7 на основе префикса или точного соответствия:
- Hostname (Имя узла)
- Путь
- Заголовок
- Строка запроса
- Методы
- Порты (80/443)
- Взаимная проверка подлинности (mTLS) для внешнего интерфейса, серверной части или сквозного соединения
- Поддержка событий, отправляемых сервером (SSE)
- Разделение трафика / взвешенный round robin
- Политики TLS
- Перенаправление URL-адреса
- Переопределение URL-адресов
- Брандмауэр веб-приложений (WAF) (пилотная версия)
- Поддержка WebSocket
Стратегии развертывания
Существует две стратегии развертывания для управления Шлюзом приложений для контейнеров:
-
Собственное развертывание (BYO): в этой стратегии развертывания развертывание и жизненный цикл ресурса Шлюза приложений для контейнеров, ресурса ассоциации и ресурса внешнего интерфейса осуществляются через портал Azure, CLI, PowerShell, Terraform и т. д. и указываются в конфигурации в Kubernetes.
- В API Gateway: Каждый раз, когда вы хотите создать новый ресурс шлюза в Kubernetes, ресурс интерфейса должен быть заранее подготовлен в Azure и должен ссылаться на ресурс шлюза. Ответственность за удаление ресурса Frontend лежит на администраторе Azure, и он не удаляется автоматически при удалении ресурса шлюза в Kubernetes.
-
Управляемый контроллером ALB: В этой стратегии развертывания контроллер ALB, развернутый в Kubernetes, отвечает за жизненный цикл Шлюза приложений для контейнеров и связанных ресурсов. Контроллер балансировки нагрузки приложений (ALB) создает ресурс шлюза приложений для контейнеров, когда в кластере определяется пользовательский ресурс ApplicationLoadBalancer. Его жизненный цикл зависит от жизненного цикла этого пользовательского ресурса.
- В API шлюза. Каждый раз при создании ресурса шлюза, ссылающегося на ресурс ApplicationLoadBalancer, контроллер ALB подготавливает новый Frontend-ресурс и управляет его жизненным циклом в зависимости от жизненного цикла ресурса шлюза.
Поддерживаемые регионы
в настоящее время Шлюз приложений для контейнеров предлагается в следующих регионах:
- Восточная Австралия
- Бразилия (Юг)
- Центральная Канада
- Центральная Индия
- Центральная часть США
- Восточная Азия
- Восточная часть США
- Восток США2
- Центральная Франция
- Центрально-Западная Германия
- Республика Корея, центральный регион
- Центрально-северная часть США
- Северная Европа
- Восточная Норвегия;
- Центрально-южная часть США
- Юго-Восточная Азия
- Северная Швейцария
- Северная часть ОАЭ;
- южная часть Соединенного Королевства
- западная часть США
- Западная часть США 2
- Западная часть США 3
- Западная Европа
Реализация API шлюза
Контроллер ALB реализует версию v1 API Gateway.
Ресурс API шлюза | Поддержка | Комментарии |
---|---|---|
GatewayClass | Да | |
Шлюз | Да | Поддержка протокола HTTP и HTTPS в прослушивателе. Для прослушивателя разрешены только порты: 80 и 443. |
HTTPRoute | Да | |
ReferenceGrant | Да | В настоящее время поддерживает версию v1alpha1 этого API |
Реализация API Ingress
Контроллер ALB реализует поддержку Ingress.
Ресурс API входного соединения | Поддержка | Комментарии |
---|---|---|
Вход | Да | Поддержка протокола HTTP и HTTPS в прослушивателе. |
Сообщите о проблемах и оставить отзыв
Для обратной связи опубликуйте новую идею на feedback.azure.com. Для решения проблем подайте запрос на поддержку через портал Azure в вашем ресурсе Шлюз приложений для контейнеров.
Цены и соглашение об уровне обслуживания
Для получения информации о ценах на Шлюз приложений для контейнеров см. цены на Шлюз приложений.
Для получения сведений о соглашении об уровне обслуживания для Шлюза приложений для контейнеров, см. Соглашения об уровне обслуживания (SLA) для онлайн-сервисов.
Новые возможности
Чтобы узнать, что нового в Шлюз приложений для контейнеров, см. обновления Azure.