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

GKE Ingress前置于Ingress Nginx时健康检查异常问题咨询

已验证可行解决方案

方案1:正确配置关联BackendConfig资源

你之前配置BackendConfig未生效,核心原因是规则需要绑定到Nginx Ingress Controller对应的Service资源,而非GKE Ingress资源,配置步骤如下:

  • 编写BackendConfig资源,指定健康检查规则:
apiVersion: cloud.google.com/v1
kind: BackendConfig
metadata:
  name: nginx-ingress-healthcheck
spec:
  healthCheck:
    checkIntervalSec: 10
    timeoutSec: 5
    healthyThreshold: 2
    unhealthyThreshold: 3
    type: HTTP
    requestPath: /healthz
    port: 10254
  • 给Nginx Ingress Controller的Service添加注解,绑定上述BackendConfig:
    kubectl annotate svc <你的nginx-ingress-controller服务名> cloud.google.com/backend-config='{"default": "nginx-ingress-healthcheck"}' -n <nginx-controller所在命名空间>
  • 等待3分钟左右GKE负载均衡配置同步完成即可,无需修改Nginx Ingress本身的健康检查路径。

方案2:直接通过Service注解配置健康检查

如果不想单独维护BackendConfig资源,也可以直接在Nginx Ingress Controller的Service上添加以下两条注解实现相同效果:

  • cloud.google.com/health-check-path: /healthz
  • cloud.google.com/health-check-port: "10254"

注意:以上所有配置均需作用于Nginx Ingress Controller的Service资源,配置到GKE Ingress资源上不会被GKE负载均衡识别,是绝大多数配置失败的核心诱因。

内容的提问来源于stack exchange,提问作者night-gold

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 23:27:04