配置带Certificate Manager通配符证书的GKE Gateway遇阻求助
我正在尝试为GKE Gateway配置HTTPS监听器,使用Certificate Manager管理的通配符证书。证书已按DNS授权教程部署完成,通过gcloud certificate-manager certificates describe <cert-name>查询显示处于ACTIVE状态,域名及通配符子域均已AUTHORIZED。我还通过Terraform配置了关联的Certificate Map和Map Entry,创建了全局静态IP地址,同时在Cloud DNS中配置了对应的通配符A记录。
但将证书和地址用于GKE Gateway资源时,资源一直处于"卡住"状态(从未进入SYNC阶段),且在gcloud或云控制台中看不到HTTPS GCLB被创建。
我的配置如下:
kind: Gateway apiVersion: gateway.networking.k8s.io/v1beta1 metadata: name: external-https annotations: networking.gke.io/certmap: gke-gateway spec: gatewayClassName: gke-l7-gxlb listeners: - name: http protocol: HTTP port: 80 allowedRoutes: kinds: - kind: HTTPRoute - name: https protocol: HTTPS port: 443 allowedRoutes: kinds: - kind: HTTPRoute addresses: - type: NamedAddress value: gke-gateway
我试过多种配置组合,包括使用显式IPAddress、移除allowedRoutes等,但都无效。通过kubectl describe gateway external-http只能看到初始的ADD和UPDATE事件,而且GKE Gateway Controller属于GKE控制平面,没有向用户暴露日志。
只有在使用HTTP协议(不使用证书)时,内部或外部Gateway才能正常工作,所以我认为问题和HTTPS相关,尤其可能和关联的托管通配符证书有关。
另外,即使复用之前可用的HTTP配置,部署Gateway也经常失败(资源同样卡住),不确定这种不稳定的原因(可能是内部配额),不过考虑到该服务仍处于Beta阶段,这或许是正常现象。
有人成功配置过带HTTPS监听器和通配符证书的Gateway吗?具体该如何操作?
内容的提问来源于stack exchange,提问作者dinvlad

