Gateway API
Модель маршрутизации трафика как альтернатива Ingress.
На этой странице
Начиная с релиза 2.14, в платформе «Штурвал» доступно управление объектами Gateway API в GUI. Это помогает подготовиться к переходу с Nginx Ingress Controller на Gateway API и упростить настройку маршрутизации для разных реализаций Service Mesh (Istio, Cilium и др.).
Gateway API и ролевая модель:
| Объект | Уровень | Кто настраивает | Назначение |
|---|---|---|---|
| GatewayClass | Кластер | Поставщик инфраструктуры | Тип контроллера и параметры реализации |
| Gateway | Кластер | Оператор кластера | Точка входа: адреса, обработчики (listeners), TLS |
| Маршруты (HTTPRoute, GRPCRoute) | Неймспейс | Разработчик / владелец приложения | Прикладная маршрутизация к backend-сервисам |
Где настраивать в GUI:
- Gateway Classes и Gateways: кластер → раздел Сети;
- Маршруты: кластер → неймспейс → раздел Сети → Маршруты.
- Через кастомные ресурсы: кластер → раздел Администрирование → Кастомные ресурсы → API-группа gateway.networking.k8s.io.
Подробнее о преимуществах Gateway API и стратегии миграции с Ingress см. Ingress NGINX умер, да здравствует Gateway API.
Поставка Gateway API в кластер
Для работы с ресурсами Gateway API в кластере должны быть установлены CRDs Gateway API. В платформе «Штурвал» для этого предусмотрен CRD модуля Gateway API (shturval-gateway-api-crds).
Установить в GUI развернутого кластера: кластер → Сервисы и репозитории → Доступные чарты → shturval-gateway-api-crds → Установить. Создайте и выберите неймспейс gateway-systems. Подробнее — CRD модуля Gateway API и Как развернуть новый сервис.
Установить при создании кластера: в мастере установки на шаге «Выбор системных сервисов» включите группу Балансировщик нагрузки — в неё входит shturval-gateway-api-crds.
После успешного развертывания CRD модуля Gateway API в GUI будут доступны соответствующие разделы интерфейса.
Контроллер Gateway API
CRDs, поставляемые в кластер, не обрабатывают трафик — для маршрутизации нужен контроллер, связанный с GatewayClass.
Перед включением контроллера Gateway API в кластере убедитесь в совместимости его версии с CRD в кластере. В платформе «Штурвал» чарт shturval-gateway-api-crds поставляет CRD Gateway API версии 1.4.1. Контроллер должен поддерживать эту версию спецификации.
В платформе «Штурвал» контроллер Gateway API на базе Cilium включается через применение ShturvalServicePatch с параметром gatewayAPI.enabled: true для Модуля управления сетями кластера (shturval-networking) — Как включить контроллер Gateway API в Cilium. Для выделения адресов Gateway также потребуется создать пул IP-адресов CiliumLoadBalancerIPPool.