Поля и аннотации ресурса IngressClass
Ресурс IngressClass
— это класс ресурсов Ingress, который позволяет использовать одновременно несколько Ingress-контроллеров, например Application Load Balancer и NGINX. Каждый ресурс IngressClass
относится к отдельному Ingress-контроллеру. В результате можно маршрутизировать трафик через ресурсы Ingress
разных контроллеров в рамках одного приложения в одном кластере Managed Service for Kubernetes.
Если вы используете несколько Ingress-контроллеров, в каждом ресурсе Ingress
укажите, к какому контроллеру ресурс относится. Для этого задайте название IngressClass
соответствующего контроллера в поле spec.ingressClassName.
IngressClass
— стандартный ресурс Kubernetes. Ниже описаны поля и аннотации ресурса. Подробнее о применении и конфигурации ресурса IngressClass
читайте в документации Kubernetes. На GitHub есть пример, как настроить ресурсы Ingress
и маршрутизировать трафик с помощью нескольких Ingress-контроллеров.
IngressClass
apiVersion: networking.k8s.io/v1
kind: IngressClass
metadata: <ObjectMeta>
spec:
controller: <string>
Поле |
Значение или тип |
Описание |
|
|
Обязательное.Версия API Kubernetes. |
|
|
Тип ресурса. |
|
|
Обязательное. |
|
|
Обязательное.Спецификация ресурса. |
|
|
Обязательное.Имя Ingress-контроллера, к которому относится ресурс
|
apiVersion: networking.k8s.io/v1
kind: IngressClass
metadata:
labels:
app.kubernetes.io/component: controller
name: alb
annotations:
ingressclass.kubernetes.io/is-default-class: "true"
spec:
controller: ingress.alb.yc.io/yc-alb-ingress-controller
ObjectMeta
name: <string>
labels:
<string>: <string>
annotations:
ingressclass.kubernetes.io/is-default-class: "<bool>"
Поле |
Значение или тип |
Описание |
|
|
Обязательное.Имя ресурса. Подробнее о формате см. в документации Kubernetes.Имя также указывается в поле spec.ingressClassName в ресурсе |
|
|
Kubernetes-метки для управления объектами Kubernetes и мониторинга этих объектов.Рекомендуемое значение: |
|
|
Аннотации ресурса.Доступная аннотация: |