Ingress
- объект API, который управляет внешним доступом к службам в кластере, обычно HTTP.
Ingress может обеспечивать балансировку нагрузки, завершение SSL и виртуальный хостинг на основе имен.
Kubernetes.io: Ingress
Kubernetes может иметь несколько контроллеров Ingress
. При этом контроллеры отличаются друг от друга. Контроллеры Ingress
, упомянутые вами в этом конкретном вопросе:
Ingress-GCE
- ресурс Ingress
по умолчанию для GKE
кластера: Ingress-nginx
- альтернативный контроллер Ingress
, который можно развернуть в вашем кластере GKE
:
Ingress
конфигурация, которую вы вставили, будет использовать контроллер Ingress-GCE
. Если вы хотите переключиться на Ingress-nginx
, вам нужно будет развернуть его и установить аннотацию, например:
kubernetes.io/ingress.class: "nginx"
Как я могу настроить перезапись при входе и если это возможно с помощью балансировщика нагрузки по умолчанию.
Существует постоянный запрос функции для поддержки перезаписи с помощью Ingress-GCE
здесь: Github.com: Ingress- GCE: Rewrite .
Вы можете использовать Ingress-nginx
для поддержки перезаписи. Существует официальная документация по его развертыванию: Kubernetes.github.io: Ingress - nginx: развертывание
Дополнительные ресурсы о перезаписи вы можете использовать:
Что такое балансировщик нагрузки по умолчанию на GKE.
Если вы создаете ресурс Ingress
с параметром по умолчанию Ingress-GCE
, вы создадите LoadBalancer L7 HTTP и HTTPS .
Если вы создаете службу типа LoadBalancer
в GKE
, вы создадите L4 Network Load Balancer
Если вы развернете контроллер Ingress-nginx
в GKE
, вы создадите сетевой балансировщик нагрузки L4, указывающий на контроллер Ingress-nginx
, который после этого будет маршрутизировать трафик c в соответствии с вашим определением Ingress
. Если вы хотите использовать Ingress-nginx
, вам нужно будет указать:
kubernetes.io/ingress.class: "nginx"
в определении Ingress
.
Пожалуйста, взгляните на эту статью: Medium.com: Google Cloud: Kubernetes Nodeport vs Loadbalancer vs Ingress
Где я могу найти список всех аннотаций к нему. Я думал, что полный список находится на https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/, но есть совершенно другой список и нет широко используемой аннотации kubernetes.io/ingress.global-static-ip-name в примерах Google.
Ссылка, которую вы предоставили с аннотациями, предназначена специально для Ingress-nginx
. Эти аннотации не будут работать с Ingress-GCE
.
Аннотации, используемые в примерах GCP
, относятся к c - Ingress-GCE
.
Вы можете создать запрос функции для списка доступных аннотаций для Ingress-GCE
на Issuetracker.google.com .