Я пытаюсь подключиться к Google Cloud SQL из приложения-узла, которое работает в подсистеме Google Container Engine под управлением Kubernetes. Я выполнил инструкции here для создания прокси-сервера Cloud SQL.Подключение к Google Cloud SQL из контейнера Engine: не удается разрешить облачный sql-прокси
Когда я запустить приложение, я получаю:
{
"code": "ENOTFOUND",
"errno": "ENOTFOUND",
"syscall": "getaddrinfo",
"hostname": "127.0.0.1:3306",
"host": "127.0.0.1:3306",
"port": 3306,
"fatal": true
}
Так это выглядит, как будто прокси не может быть решена.
Я запускать kubectl describe pods <pod_name>
и прокси-сервер, как представляется, быть здоровым:
cloudsql-proxy:
Container ID: docker://47dfb6d22d5e0924f0bb4e1df85220270b4f21e971228d03148fef6b3aad6c6c
Image: b.gcr.io/cloudsql-docker/gce-proxy:1.05
Image ID: docker://sha256:338793fcb60d519482682df9d6f88da99888ba69bc6da96b18a636e1a233e5ec
Port:
Command:
/cloud_sql_proxy
--dir=/cloudsql
-instances=touch-farm:asia-east1:api-staging=tcp:3306
-credential_file=/secrets/cloudsql/credentials.json
Requests:
cpu: 100m
State: Running
Started: Sat, 01 Oct 2016 20:38:40 +1000
Ready: True
Restart Count: 0
Environment Variables: <none>
Единственное, что кажется необычным для меня является то, что Port
поле пустым, однако, не было никакой инструкции в руководстве по указанным выше чтобы открыть порт в конфигурационном файле развертывания. Я также попробовал указать порт 3306 в файле конфигурации, но хотя порт затем показывает на выходе kubectl describe pods
, узел все еще не может найти прокси.
Что мне здесь не хватает? Почему я не могу разрешить прокси?
Edit (подробнее)
Бревна из cloudsql-прокси контейнера:
2016-10-01T11:44:40.108529344Z 2016/10/01 11:44:40 Listening on 127.0.0.1:3306 for touch-farm:asia-east1:api-staging
2016-10-01T11:44:40.108561194Z 2016/10/01 11:44:40 Ready for new connections
Facepalm. Меня отбросило то, что было написано в учебнике. Благодаря! –