gpt4 book ai didi

java - GCloud - 无法从 Kubernetes 集群访问 Cloud SQL,但它可以在本地 PC 上运行

转载 作者:行者123 更新时间:2023-11-29 04:15:39 24 4
gpt4 key购买 nike

我想通过 JDBC 从 GCloud Kubernetes Engine 中运行的容器连接到我的 Cloud SQL 数据库 (MySQL)。该容器包含一个带有一些 REST 服务的 Java Spring Boot 应用程序。

当我在本地运行我的 Java 应用程序时,一切正常,应用程序连接到 Cloud SQL 数据库也很好。但是,当我将我的应用程序部署到 GCloud 时,我只会在调用我的服务器 REST API(通过 Postman)时收到此响应:

{
"timestamp": "2018-09-27T06:54:22.987+0000",
"status": 500,
"error": "Internal Server Error",
"message": "Could not open JDBC Connection for transaction; nested exception
is com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications
link failure\n\nThe last packet sent successfully to the server was 0
milliseconds ago. The driver has not received any packets from the server.",
"path": "/api/user/getDbs"
}

我已经尝试通过在授权选项卡中添加 0.0.0.0/0 来允许与数据库的所有连接。我还尝试添加防火墙规则。两者都没有成功。

感谢任何帮助,我可以得到 :)

最佳答案

目前的建议是使用 cloud-sql-proxy 运行 sidecar 容器。这里有一篇很好的文章 ( https://cloud.google.com/sql/docs/mysql/connect-kubernetes-engine )。还有一个似乎很有前途的 beta 服务代理。您不需要使用代理授权或导入证书。但是,请确保提供的服务帐户具有正确的连接权限。之后,您的应用程序可以连接到 localhost:POR

https://cloud.google.com/kubernetes-engine/docs/concepts/google-cloud-platform-service-broker

关于java - GCloud - 无法从 Kubernetes 集群访问 Cloud SQL,但它可以在本地 PC 上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52531317/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com