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

如何配置Cloud Run同时实现Cloud SQL可靠连接与静态出口IP访问外部服务

Cloud Run同时配置静态出站IP与Cloud SQL稳定连接方案

问题根因

你遇到的问题核心是两个配置的兼容性误解:

  1. 配置静态出站IP时,你将Cloud Run的VPC出口路由全部走VPC后,误以为Unix Socket方式连接Cloud SQL失效,实际上Unix Socket是Cloud Run实例本地挂载的文件,不经过网络栈,和VPC出口配置无任何冲突
  2. 放弃Unix Socket改用TCP方式连接后,偶发的临时证书错误是因为冷启动时实例网络未就绪、Google API请求不稳定导致的

最优解决方案(推荐)

保留原生Unix Socket连接Cloud SQL,同时保留静态出站IP配置,两者完全兼容,步骤如下:

  • 恢复初始带unixSocketPath参数的JDBC连接串:
    jdbc:postgresql:///<DB_NAME>?unixSocketPath=</PATH/TO/UNIX/SOCKET>&cloudSqlInstance=<CLOUD_SQL_CONNECTION_NAME>&socketFactory=com.google.cloud.sql.postgres.SocketFactory&user=<DB_USER>&password=<DB_PASS>
    
  • 确认Cloud Run服务「连接」配置页中,仍绑定了目标Cloud SQL实例,该配置会自动在运行实例中挂载对应的Unix Socket文件
  • 无需修改已配置的静态出站IP相关的VPC连接器、Cloud NAT、出口路由规则,静态IP对外访问功能不受影响

备选方案(仅当无法使用Unix Socket时采用)

如果因特殊场景必须使用TCP方式连接Cloud SQL,按以下配置修复偶发证书报错:

  • 为VPC连接器绑定的子网开启专用Google访问权限,保证获取Cloud SQL临时证书的API请求稳定可达
  • 在JDBC连接串中添加ipTypes=PRIVATE参数,指定走VPC私网连接Cloud SQL,避免公网波动影响
  • 配置Cloud Run最小实例数为1,避免实例缩容到0导致的冷启动网络未就绪问题
  • 配置数据库连接池的初始化超时时间,拉长冷启动时的连接等待时长

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 22:42:02