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

如何让Cloud Deploy访问私有GKE集群?

实现Cloud Deploy访问私有GKE集群的可行方案

方案1:VPC网络对等连接打通网络

  • 建立Cloud Deploy所属谷歌管理VPC与私有GKE集群所在VPC的VPC网络对等连接,实现双方网络互通。
  • 配置GKE集群主节点和节点池的防火墙规则,允许来自Cloud Deploy服务IP范围的443端口流量(用于Kubernetes API访问)。可通过gcloud命令或控制台获取Cloud Deploy的服务CIDR,或使用标签cloud.googleapis.com/service-name=clouddeploy来精准配置防火墙规则。

方案2:启用Cloud Deploy私有端点

  • 为Cloud Deploy开启私有端点,让部署操作通过VPC内部私有IP与GKE集群通信,避免公网传输。
  • 更新GKE集群配置,将Cloud Deploy私有端点的CIDR加入主节点授权网络列表,限制控制平面仅接受来自该范围的访问请求。同时为Cloud Deploy服务账号(格式为service-${PROJECT_NUMBER}@gcp-sa-clouddeploy.iam.gserviceaccount.com)分配roles/container.developer权限,确保集群访问授权。

方案3:复用现有Cloud Build私有工作池(中间层方式)

  • 利用已配置好的Cloud Build私有工作池,将Cloud Deploy的部署任务转交给Cloud Build执行:
    1. 在Cloud Deploy交付流水线中自定义部署步骤,调用Cloud Build触发部署作业。
    2. Cloud Build通过私有工作池的现有连通性访问私有GKE集群,执行kubectl apply、Helm安装等部署命令。
  • 此方案无需额外网络配置,直接复用已有连通性,适合快速实现需求。

通用权限配置要点

  • 确保Cloud Deploy服务账号拥有GKE集群的访问权限:可通过IAM分配roles/container.developer,或通过Kubernetes的ClusterRoleBinding配置更细粒度的权限。
  • 若采用方案3,需为Cloud Deploy服务账号分配roles/cloudbuild.builds.editor权限,允许其触发Cloud Build任务。

内容的提问来源于stack exchange,提问作者Gary Turner

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 03:40:18