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

如何在GCP Cloud Build构建阶段访问AWS MySQL数据库进行单元测试?

针对Cloud Build模拟Cloud Function访问AWS MySQL的解决方案

方案1:利用Cloud Build私有工作池绑定VPC

Cloud Build私有工作池本身支持关联VPC,你可以将其绑定到Cloud Function使用的同款VPC(或具备AWS MySQL访问权限的VPC),让构建环境直接通过该VPC访问数据库:

  • 创建私有工作池时,指定目标VPC及子网,确保子网路由已配置好通往AWS MySQL的路径(比如复用Cloud Function用的Serverless VPC Connector的网络规则)
  • 在cloudbuild.yml中指定使用该私有工作池:
options:
  privatePool:
    workerPool: projects/[你的项目ID]/locations/[地域]/workerPools/[私有工作池名称]
  • 给私有工作池的服务账号配置VPC访问权限,同时确保AWS MySQL的安全组允许该VPC的CIDR段访问3306端口。

方案2:临时VM复用Serverless VPC Connector

如果不想调整私有工作池,可在构建步骤中启动临时Compute Engine实例,关联到Serverless VPC Connector所在的VPC,在VM内运行模拟代码:

  1. 构建步骤中创建临时VM,指定目标VPC子网
  2. 将模拟Cloud Function的代码及依赖包上传至VM
  3. 在VM内部执行模拟逻辑,访问AWS MySQL
  4. 测试完成后销毁VM,避免不必要的成本

方案3:GCP与AWS VPC对等连接(长期场景首选)

若长期需要跨云网络互通,VPC对等是更稳定的方案,操作流程如下:

AWS侧操作

  • 登录AWS控制台,创建VPC对等连接请求,填入GCP VPC的主CIDR段(注意两段CIDR不能重叠)
  • 接受对等连接后,在路由表中添加条目:将GCP VPC的CIDR段指向该对等连接
  • 配置MySQL所在安全组,允许GCP VPC的CIDR段访问3306端口

GCP侧操作

  • 登录GCP VPC控制台,接受AWS发起的对等连接请求
  • 在GCP VPC的路由表中添加条目:将AWS VPC的CIDR段指向该对等连接
  • 确保Cloud Build私有工作池或Cloud Function所在子网启用该对等路由
  • 验证:在GCP构建实例中用mysql命令测试连接AWS MySQL的私有IP

方案4:Cloud NAT给私有工作池分配静态公网IP

如果不想配置跨云VPC对等,可通过Cloud NAT给私有工作池的子网分配静态公网IP,将该IP加入AWS MySQL的安全组白名单:

  • 为私有工作池所在子网配置Cloud NAT,指定静态公网IP地址
  • 在AWS安全组中添加规则,允许该静态IP访问3306端口
  • 确保私有工作池的子网禁用自动分配外部IP,所有出站流量通过Cloud NAT转发

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 23:45:02