/ / Herstellen einer Verbindung zum Datenbankdienst mithilfe von Cluster-IP - kubernetes, kubernetes-helm

wie man eine Verbindung zum Datenbankdienst herstellt, indem man cluster ip verwendet - kubernetes, kubernetes-helm

Dies mag eine sehr grundlegende Frage sein, aber ich kann nirgendwo etwas finden, also entschuldige ich mich.

Ich habe postresql mit helm auf der Google Kubernetes Engine installiert

$ helm install --name staging stable/postgresql

Meine Einsätze:

$ kubectl get deployments
NAME                 DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
staging-backend      7         7         7            0           3h
staging-postgresql   1         1         1            0           3h

Und meine Dienste:

$ kubectl get services
NAME                 TYPE        CLUSTER-IP    EXTERNAL-IP   PORT(S)    AGE
staging-postgresql   ClusterIP   xx.x.xxx.xx   <none>        5432/TCP   3h

Ich habe versucht, eine Verbindung herzustellen staging-backend mit staging-postgresql mit Cluster-IP, aber es scheint nicht zu funktionieren. Oder sollte ich externe IP verwenden .. ?? Wo finde ich externe IP .. ??

Danke dir..

Antworten:

3 für die Antwort № 1

In Kubernetes haben Sie zwei Möglichkeiten, die IP Ihres Dienstes zu ermitteln.

  1. Umgebungsvariablen

Kubernetes generiert automatisch Umgebungsvariablen mit allen Daten, die Sie für den Zugriff auf einen Dienst benötigen. Wenn du läufst env Befehl innerhalb eines Pods, dann sollten Sie eine ähnliche Ausgabe sehen wie:

KUBERNETES_SERVICE_PORT=443
STAGING_POSTGRESQL_SERVICE_HOST=10.0.162.149
KUBERNETES_SERVICE_HOST=10.0.0.1
STAGING_POSTGRESQL_SERVICE_PORT=5432
KUBERNETES_SERVICE_PORT_HTTPS=443

Benutzen STAGING_POSTGRESQL_SERVICE_HOST Umgebungsvariable in Ihrer App, um die IP des Dienstes zu erhalten.

  1. DNS (bevorzugt)

Kubernetes weist allen Diensten automatisch DNS-Namen zu. Verwenden Sie Ihren Dienstnamen anstelle von IP und es wird zu Dienst-IP aufgelöst.

Zum Beispiel laufen ping staging-postgresql in jeder Hülse.

Sie können mehr über die Nutzung des Dienstes lesen Hier.