首页 > 解决方案 > GCP 云的入口控制器注释

问题描述

GCP 入口的以下注释等效于什么?我正在尝试使用自定义 nginx 模板,但找不到以下注释的参考。在github 答案中,他们使用的是 AWS,但我需要使用 GCP 来实现这一点。

"service.beta.kubernetes.io/aws-load-balancer-proxy-protocol": "*"
"service.beta.kubernetes.io/aws-load-balancer-backend-protocol": "tcp"
"service.beta.kubernetes.io/aws-load-balancer-ssl-ports": "https"
"service.beta.kubernetes.io/aws-load-balancer-connection-idle-timeout": "60"

我正在使用入口类nginx

kubernetes.io/ingress.class: "nginx"

我正在尝试使用 Ingress 控制器在 GCP Kubernetes 集群中执行 Ingress TCP SSL 终止。

我希望来自的流量https://example.com:1234被重定向到http://example.com:1234. 后端端口 1234 仅为 HTTP。

这是 AWS 的示例 - https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.1/guide/service/annotations/

我需要类似的东西用于 GCP

标签: kubernetesgoogle-cloud-platformkubernetes-ingress

解决方案


我认为您不会找到所有GCP Ingress注释列表之类的东西。唯一接近它的可以在Github上找到。

如果您认为所有列表GCP annotations有用,您可以提交功能请求Google Public Issue Tracker要求更改文档,其中包含GKE Ingress支持的所有注释。

在某些情况下,您可以使用GCP LB(如 HTTP(S) Load Balancer) + NEG + GKE,但根据文档选择负载均衡器,只有外部网络 TCP/UDP 支持任何LoadBalancer目标端口,因此根据文档区域网络端点组概述,它是无法将外部 TCP/UDP 网络负载均衡器与NEGs.

但是,在您的问题中,您提到您正在使用 annotation kubernetes.io/ingress.class:" nginx ",这意味着您正在使用Nginx Ingress(如果ingress.class未指定,则使用默认值 which is kubernetes.io/ingress.class:"gce")。

Nginx Ingress有一个所有注释的列表,但我认为对你来说最有趣的是TCP 和 UDP 服务披露


推荐阅读