【问题标题】:Connecting to Cloud SQL private IP from GCE VM application从 GCE VM 应用程序连接到 Cloud SQL 私有 IP
【发布时间】:2019-02-27 11:44:09
【问题描述】:

我正在检查来自不同类型客户端的Cloud SQL Private IP 连接。我可以成功地与托管在 GKE 集群中的应用程序建立连接,该集群被创建为 VPC 原生集群,如 here 所述。已经这样做了,我期待从托管在 GCE VM 中的同一应用程序(这是一个简单的 Spring Boot 应用程序)连接到私有 IP 会更容易。与我的预期相反,这似乎并非如此。这是我试图在 VM 中运行的同一个 Spring Boot 应用程序。但它似乎无法连接到数据库。我期待一些连接错误,但没有任何显示 - 没有抛出异常。奇怪的是,我能够通过mysql命令行从同一虚拟机连接到 Cloud SQL 私有 IP,但不能从 Spring Boot 应用程序中连接。有没有人遇到过这种情况?

【问题讨论】:

  • 虽然我怀疑这是一个应用程序问题,但直到现在我才知道如何解决。刚刚注意到,当我在 GKE 中运行时,我通过 kube 配置文件将 spring boot 配置文件作为环境变量传递给 pod 模板。当我在 GCE VM 中运行它时,我应该做同样的事情。希望这能解决这个问题。测试后明天将发布更新。

标签: google-cloud-platform google-cloud-sql


【解决方案1】:

问题与 Cloud SQL 私有 IP 无关。正如我之前的评论中提到的,我正在通过 Kubernetes pod 配置传递活动的配置文件信息。所以 Dockerfile 没有这个信息。为了解决这个问题,当程序在 Kubernetes 之外初始化时,我必须传递活动的配置文件信息。 This 有很多有用的答案如何做到这一点。如果程序通过docker run 命令启动,则活动配置文件信息可以作为命令行参数传递。请参阅 here 以获得有用的参考。

总而言之,Cloud SQL 私有 IP 在 CE 虚拟机上运行良好。 GCE VM 端无需特殊配置即可使其正常工作。

【讨论】:

    猜你喜欢
    • 2020-01-01
    • 1970-01-01
    • 2021-01-28
    • 2020-11-27
    • 2019-12-28
    • 2020-04-29
    • 2021-11-30
    • 2021-02-28
    • 1970-01-01
    相关资源
    最近更新 更多