问题标签 [cloud-sql-proxy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
461 浏览

node.js - 使用非标准 unix 套接字进行 Sequelize-cli 迁移

我正在尝试在 GAE 上进行续集。但是我正在努力使用在非标准路径上使用套接字的云 SQL 代理。

我的理解是,一个 url 会直接传递给 pg 库,根据这篇文章,它会建议下面的字符串是我需要的

我已经将数据库配置设置为

但是,如果我运行,./node_modules/.bin/sequelize db:migrate我最终会遇到错误:

0 投票
1 回答
309 浏览

google-cloud-platform - Cloud SQL 和 GCE 之间的隧道方式与 gcp 上的云代理进程

我想知道 Cloud SQL 和 Cloud Sql 代理进程之间通信期间的隧道方式。

https://cloud.google.com/sql/docs/mysql/sql-proxy

我参考这个网址。我可以看到“他的代理使用安全隧道与其在服务器上运行的伴随进程进行通信。”

你能知道它在连接过程中使用的隧道方式吗?ssh 隧道或 PPTP、IPSec、L2TP ?

0 投票
1 回答
88 浏览

flask - 用cloudsql管理模型(mysql实例google云平台)

我有一个应用引擎项目,我想使用 MySQL 实例(谷歌云平台)来存储我的数据。

我可以使用这个tuto连接到我的实例。

所以现在我想知道如何创建一个模型,如:

并将其添加到我的实例中,如果我在模型中添加一个字段,如何使用我的实例更新它。

0 投票
1 回答
2257 浏览

mysql - 带有 Docker 的 Google Cloud SQL 代理抛出连接被拒绝

我正在尝试使用 cloudsql-proxy docker 容器将应用程序(docker 容器)连接到 Google Cloud SQL 数据库。因此,我使用以下 cloudsql-proxy 容器创建了一个 docker-compose 文件:(XXX 替换为我的云 sql 实例 ID)

每当我尝试从在同一台机器上运行的另一个容器中连接到 cloudsql mysql 数据库时,例如 docker-compose 文件中的第二个容器,我都会收到错误消息

“错误 2003 (HY000): 无法连接到 '127.0.0.1' 上的 MySQL 服务器 (111 "连接被拒绝")"

我尝试使用三种不同的方法连接到 cloudsql-proxy,但仍然出现相同的错误。所有容器(云 sql 代理和要连接的测试容器)都在一个谷歌计算引擎实例上:

a) mysql-client: mysql --host 127.0.0.1

b) jdbc url: jdbc:mysql://127.0.0.1:3306/test

c) jdbc url: jdbc:mysql://cloudsql-proxy:3306/test

在我的 gc 防火墙中,我为 0.0.0.0/0 打开端口 3306 用于测试目的,停止并启动云 sql 实例等,但错误仍然存​​在。代理容器的日志是OK的:

我的方法有什么根本性的问题还是我错过了什么?这可能是码头工人的问题吗?我可以从其他容器 ping 代理容器。

0 投票
0 回答
234 浏览

wordpress - 在谷歌计算引擎、云 sql 代理和云 SQL 上使用 wordpress 保护 https

我正在使用以下配置设置电子商务网站。1. 谷歌计算引擎 VM 上的 ubuntu 上的 wordpress 2. 同一谷歌云项目中的 Cloud SQL 上的数据库。Wordpress 连接到 localhost 并通过云代理路由到云 SQL。它是使用服务帐户设置的。我在 VM 上使用letsencrypt SSL 证书。有了这个,我在浏览器上获得了安全的 http:// 仅用于 wp-admin 会话。对于用户会话,我只获取信息 https 级别。

我尝试了 SSL,在云代理之上使用 wordpress“安全数据库连接”插件。它不连接。如果没有这个 SSL,它只会给我信息 https 级别。

请让我知道以下内容:上述配置(用于连接数据库实例的云 sql 代理。以及带有 SSL 的 VM 上的 wordpress)是否足够?问题出在其他地方吗?

有人用 SSL 成功地做了云 sql 代理吗?或任何其他解决信息 https 问题的方法?

0 投票
0 回答
830 浏览

kubernetes - CloudSQL 代理凭据:无效的 Json 文件

我正在尝试将 CloudSQL 代理与我的容器一起使用到 GCP Kubernetes 中的 Cloud SQL 存储。一旦我部署了我的 yaml,我就收到了 pod 的错误“CrashLoopBackOff”,而“kubectl logs cloudsql-proxy”则给出了缺少 credentials.json 的错误。我确实在我访问 Kubernetes 集群的 cloudtop 的主目录中拥有它。我实际上并没有将任何卷用于持久数据,但我是否仍应使用https://cloud.google.com/sql/docs/mysql/connect-kubernetes-engine中步骤 6.4 中提到的“卷:”定义 什么是请问我犯的错误?

非常感谢

0 投票
3 回答
4457 浏览

python - 在 Python 数据流/Apache Beam 上启动 CloudSQL 代理

我目前正在从事一项 ETL Dataflow 作业(使用 Apache Beam Python SDK),该作业从 CloudSQL(使用psycopg2和自定义ParDo)查询数据并将其写入 BigQuery。我的目标是创建一个数据流模板,我可以使用 Cron 作业从 AppEngine 开始。

我有一个使用 DirectRunner 在本地工作的版本。为此,我使用 CloudSQL (Postgres) 代理客户端,以便可以连接到 127.0.0.1 上的数据库。

当使用带有自定义命令的 DataflowRunner 在 setup.py 脚本中启动代理时,作业不会执行。它坚持重复此日志消息:

Setting node annotation to enable volume controller attach/detach

我的 setup.py 的一部分如下所示:

在从sthomp阅读Github 上的这个问题 和关于 Stackoverflo讨论之后,我将最后一行添加为单独subprocess.Popen()的内容。我还尝试使用.run()subprocess.Popen

brodin提到的另一个解决方案是允许从每个 IP 地址访问并通过用户名和密码进行连接。据我了解,他并不认为这是最佳实践。

预先感谢您的帮助。

!!!这篇文章底部的解决方法!!!


更新 - 日志文件

这些是作业期间发生的错误级别的日志:


在这里您可以找到我的自定义 setup.py 启动后的所有日志(日志级别:任何;所有日志):

https://jpst.it/1gk2Z

更新日志文件 2

作业日志(我在没有卡住一段时间后手动取消了作业):

堆栈跟踪:


更新:解决方法可以在下面我的回答中找到

0 投票
0 回答
515 浏览

go - Cloud SQL 连接与 Kubernetes/Proxy Side Car

我有一个带有运行 REST API 的 Golang 二进制文件的 Pod。pod 中有一个边车,用于 gce 云 SQL 代理。

我不断收到“ dial tcp 127.0.0.1:3306: connect: connection refused”错误

CloudSQL 连接的代理正在工作,我可以使用相同的凭据通过云外壳成功连接。

在 pod 中,我还添加了 mysql 客户端,我可以连接到我的数据库,所以我认为凭据和一切都很好,我已经证明了 cloudsql 连接的代理工作并且可以查询数据库

我有以下内容;

  • 来自 1.10 的 Golang 二进制文件
  • 谷歌云上的 Kubernetes 引擎
  • 集群版本:1.10.2-gke.3
  • 二进制运行在 alpine:latest 容器之上
  • 当前的 SQL 库是https://github.com/go-sql-driver/mysql
  • GCE 云代理最新和 1.11
  • 作为环境变量添加的凭据是正确的 user:password@tcp:host:port/DATABASE
  • 代码使用 get 获取os.Getenv环境变量
  • 以此作为参考:https ://cloud.google.com/sql/docs/mysql/connect-kubernetes-engine
  • Cloud SQL 实例已启动并正在运行
  • 秘密在 kube 中创建并安装为卷

几个月前,在之前的测试中,唯一的变化是向 kubernetes 部署添加服务,并在名为 alpha 的命名空间中运行部署和所有内容,而不是默认。凭据已创建,并且名称空间中的所有内容都已创建。

0 投票
2 回答
2208 浏览

java - 如何使用服务帐户向 Google Cloud SQL Java 进行身份验证

我知道有 Cloud SQL JDBC Socket Factory。但是,这需要应用程序默认凭据。我想要做的是使用服务帐户(这是 JSON 机密文件)对 Cloud SQL 进行身份验证。有人可以指出我正确的方向吗?谢谢!

GettingStarted 中的代码(https://github.com/GoogleCloudPlatform/cloud-sql-jdbc-socket-factory):

StackTrace: https : //pastebin.com/PMJsAFaK 第二次 StackTrace(使用来自 Github 的代码):https ://pastebin.com/aH5vkLYF

0 投票
0 回答
88 浏览

google-cloud-dataproc - 创建 Dataproc 集群时的云 SQL 代理初始化操作

我正在执行附加的脚本,cloud-sql-proxy.sh作为创建 Dataproc 集群时初始化操作的一部分;它失败并出现以下错误:

错误 2013 (HY000):在“读取初始通信数据包”时失去与 MySQL 服务器的连接,系统错误:0

附加cloud-sql-proxy.sh脚本以及错误日志。

我做错了什么,我该如何解决?