2016-10-01 5 views
2

Ich versuche, eine Verbindung zu Google Cloud SQL über eine Knoten-App herzustellen, die in einem von Kubernetes verwalteten Google Container Engine-Pod ausgeführt wird. Ich habe die Anweisungen here befolgt, um einen Cloud SQL-Proxy zu erstellen.Herstellen einer Verbindung mit Google Cloud SQL über Container Engine: Cloud-SQL-Proxy kann nicht aufgelöst werden

Wenn ich die app laufen, erhalte ich:

{ 
    "code": "ENOTFOUND", 
    "errno": "ENOTFOUND", 
    "syscall": "getaddrinfo", 
    "hostname": "127.0.0.1:3306", 
    "host": "127.0.0.1:3306", 
    "port": 3306, 
    "fatal": true 
} 

So sieht es aus, als ob der Proxy nicht aufgelöst werden kann.

Ich habe erscheint laufen kubectl describe pods <pod_name> und der Proxy gesund zu sein:

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> 

Das einzige, was mir ungewöhnlich scheint, ist, dass das Port Feld leer ist, aber keine Anweisung gibt in der Führung war oben verwiesen einen Port in der Deployment-Konfigurationsdatei verfügbar machen. Ich habe auch versucht, den Port 3306 in der Konfigurationsdatei anzugeben, aber obwohl der Port dann in der kubectl describe pods Ausgabe angezeigt wird, kann Knoten den Proxy immer noch nicht finden.

Was fehlt mir hier? Warum kann ich den Proxy nicht auflösen?

Edit (weitere Informationen)

Logs aus dem cloudsql-Proxy-Container:

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 

Antwort

4

Es sieht aus wie Sie den Host als 127.0.0.1:3306 statt 127.0.0.1 angeben.

+0

Facepalm. Ich wurde von dem was im Tutorial geschrieben wurde abgeworfen. Vielen Dank! –

Verwandte Themen