我们已经使用 Cloud SQL 几个月了,没有出现任何问题。今天,我们的应用程序日志开始出现大量 HTTP 500 错误。经过调试,我们发现原因是我们的 Cloud SQL PostgreSQL 实例的私有 IP 从 10.96.96.2 更改为 10.96.96.3,因此应用程序无法连接到后端数据库。
根据此文档: https://cloud.google.com/sql/docs/postgres/private-ip
Cloud SQL 实例的私有 IP 地址是静态的;它不会改变。
你们中有人遇到过类似的事情吗?有没有办法指定某种“内部主机名”,而不是直接使用 IP 地址?
谢谢
更新
报告此问题后Google官方的答复:
在检查了您的问题后,我发现您的 PostgreSQL 实例的私有 IP 的更改是在计划的维护推出后产生的。
请将您的连接指向新的私有 IP
关于您的问题,正如您之前正确提到的,这不是 Cloud SQL 上静态 IP 的常见行为,因此您不需要采取进一步的措施来避免将来发生这种情况。
答案1
你应该开一个私人发行在 Cloud SQL 问题跟踪器上,务必记下发生的时间以及项目和实例 ID。支持团队将能够查看(如果您有支持包,请改为打开支持凭单,因为您将获得更快的响应)。
对于第二部分,您可以使用Cloud SQL 代理通过连接名称连接到实例。请确保您使用该标志来-ip_address_types=PRIVATE
确保代理通过其私有 IP 进行连接。