gpt4 book ai didi

kubernetes - 如何将 GKE Ingress 与 Nginx Ingress 一起使用?

转载 作者:行者123 更新时间:2023-12-02 12:15:18 31 4
gpt4 key购买 nike

GKE 入口:https://cloud.google.com/kubernetes-engine/docs/concepts/ingress

Nginx 入口:https://kubernetes.github.io/ingress-nginx/

为什么选择 GKE Ingress

GKE Ingress 可与 Google 的托管 SSL 证书一起使用。这些证书部署在负载均衡器的边缘服务器中,这导致非常低的 TTFB(第一个字节的时间)

GKE Ingress 有什么问题

HTTP/域路由是在负载均衡器中使用非常昂贵的“转发规则”完成的。每条规则的成本约为 7.2 美元。每个域都需要一个规则。

为什么选择 Nginx Ingress

Nginx Ingress 还创建 (TCP/UP) 负载均衡器,我们可以在其中使用入口 Controller 指定 HTTP/域的路由。由于路由是在集群内部完成的,因此将域添加到规则中不会产生额外成本

Nginx Ingress 有什么问题

要启用 SSL,我们可以使用 cert-manager。但正如我上面提到的,谷歌的托管证书在边缘服务器中部署证书,从而导致非常低的延迟

我的问题

是否可以同时使用它们?因此 HTTPS 请求首先命中 GKE ingress,这将终止 SSL 并将流量路由到 Nginx ingress,后者将其路由到相应的 pod

最佳答案

不可能将一个 Ingress 指向另一个 Ingress。此外,在您的特定情况下,也无法将 GCE 入口类 指向 Nginx,因为它 relies in an HTTP(S) Load Balancer ,它只能有 GCE 实例/instances groups (基本上是 GKE 中的节点池),或 GCS buckets作为backends .

如果您要使用 GKE 部署 Nginx ingress,它将启动一个 Network Load Balancer这不是 HTTP(S) 负载均衡器的有效后端。

因此,无论是通过 Ingress 还是 GCP 基础设施功能,都是不可能的。但是,如果您需要首先访问 GCE 入口类,然后使用 Nginx 管理进一步的路由,您可能需要考虑将 Nginx 作为 Kubernetes Service/Deployment在集群网络内管理传入流量。

您可以创建一个 ClusterIP用于内部访问 Nginx 部署的服务,并从那里使用集群本地 hostnames重定向到集群中的其他服务/应用程序。

关于kubernetes - 如何将 GKE Ingress 与 Nginx Ingress 一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57456652/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com