咨询GCP CloudSQL PostgreSQL私有实例同区域GKE连接URI格式
私有访问GCP CloudSQL PostgreSQL实例的GKE工作负载连接URI格式
针对同区域GKE工作负载连接仅私有访问的CloudSQL PostgreSQL实例,有两种常用的连接URI格式,对应不同的部署方式:
1. 直接通过私有IP连接
这种方式要求GKE集群与CloudSQL实例处于同一VPC或已配置VPC对等连接,且防火墙允许5432端口流量:
postgresql://<数据库用户名>:<URL编码后的密码>@<CloudSQL实例私有IP>:5432/<目标数据库名>?sslmode=require
- 替换说明:
<数据库用户名>:CloudSQL实例的PostgreSQL用户名<URL编码后的密码>:若密码包含@、/等特殊字符,需做URL编码(例如@替换为%40)<CloudSQL实例私有IP>:实例在私有网络中分配的IP地址<目标数据库名>:要连接的具体数据库名称
- 必须指定
sslmode=require,CloudSQL PostgreSQL强制要求SSL连接
2. 通过Cloud SQL Auth Proxy连接(推荐)
在GKE Pod中以Sidecar或独立容器运行Auth Proxy,无需暴露私有IP,通过服务账号完成认证,连接URI格式:
postgresql://<数据库用户名>:<URL编码后的密码>@127.0.0.1:5432/<目标数据库名>?sslmode=disable
- 说明:Auth Proxy会在Pod内监听本地5432端口,已处理与CloudSQL的SSL加密和身份验证,因此可设置
sslmode=disable - 配置Auth Proxy时需指定CloudSQL实例的连接名(格式:
项目ID:区域:实例ID)
内容的提问来源于stack exchange,提问作者tumpy
相关产品推荐
相关产品推荐

