Правила Ingress (Kubernetes Ingress) открывают HTTP/HTTPS маршруты снаружи кластера для внутренней маршрутизации (Kubernetes Service), позволяя контролировать внешний доступ к вычислительным компонентам.
Создайте Ingress для управления внешним HTTP/HTTPS доступом к Service.
При создании нескольких ingress в одном и том же namespace, разные ingress НЕ ДОЛЖНЫ иметь одинаковые Domain, Protocol и Path (то есть дублирование точек доступа не допускается).
Правила Ingress зависят от реализации Ingress Controller, который отвечает за отслеживание изменений в Ingress и Service. После создания нового Ingress, когда Ingress Controller получает запрос, он сопоставляет правило переадресации из Ingress и распределяет трафик по указанным внутренним маршрутам, как показано на схеме ниже.
Для протокола HTTP Ingress поддерживает только порт 80 в качестве внешнего порта. Для протокола HTTPS Ingress поддерживает только порт 443 в качестве внешнего порта. Балансировщик нагрузки платформы автоматически добавит порты 80 и 443 для прослушивания.
nginx используется для контроллера ingress-nginx, $alb_name — для использования alb в качестве ingress controller.hosts.Зайдите в Container Platform.
В левой навигационной панели выберите Network > Ingress.
Нажмите Create Ingress.
Используйте инструкции ниже для настройки параметров.
| Параметр | Описание |
|---|---|
| Ingress Class | Ingress может реализовываться разными контроллерами с разными именами IngressClass. Если на платформе доступно несколько ingress контроллеров, пользователь может выбрать нужный с помощью этого параметра. |
| Domain Name | Хосты могут быть точными совпадениями (например, foo.bar.com) или с подстановочным знаком (например, *.foo.com). Доступные доменные имена выделяются администратором платформы. |
| Certificates | TLS секрет или сертификаты, выделенные администратором платформы. |
| Match Type и Path |
|
| Service | Внешний трафик будет перенаправлен на этот Service. |
| Service Port | Укажите порт Service, на который будет перенаправлен трафик. |
Нажмите Create.