You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在GKE托管Kubernetes集群中创建Ingress是否自动生成LoadBalancer Service?

GKE中Ingress与LoadBalancer Service的关系说明

核心要看你用的Ingress Controller类型,你的示例里指定了nginx作为ingressClassName,对应NGINX Ingress Controller,和GKE原生Ingress的逻辑完全不同:

  • 针对你示例中的NGINX Ingress Controller:
    它不会自动创建Kubernetes LoadBalancer Service。你得手动给NGINX Ingress Controller的Pod部署一个LoadBalancer类型的Service,这样外部公网流量才能通过GCP提供的负载均衡器打到NGINX Ingress Controller上,再由它根据Ingress规则转发到后端的path1、path2服务。没有这个LoadBalancer Service,你的Ingress规则就算配置好了,公网也访问不到。

  • 如果用GKE原生Ingress Controller(不指定ingressClassName或指定gce类):
    这种场景下,GKE不会创建Kubernetes LoadBalancer Service,而是直接在GCP层面创建Cloud应用负载均衡器(ALB),自动完成负载均衡器和集群内后端服务的关联配置,不需要你额外手动创建LoadBalancer Service。

你的示例Ingress配置如下:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: mcu-all
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
spec:
  ingressClassName: nginx
  rules:
  - host: mcu.com
    http:
      paths:
      - path: /path1
        pathType: Prefix
        backend:
          service:
            name: path1
            port:
              number: 8080
      - path: /path2
        pathType: Prefix
        backend:
          service:
            name: path2
            port:
              number: 8080

内容的提问来源于stack exchange,提问作者Brian K

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 13:03:17