Manage PostgreSQL in Kubernetes

Verbindung zu einer PostgreSQL-Datenbank in Kubernetes herstellen

Der sinnvollste Weg um an eine PostgreSQL-Datenbank in einer Kubernetes-Cluster Umgebung zu verbinden ist die Verwendung eines passenden PostgreSQL Containers.

Dieser lässt sich über den den Befehl kubectl run erzeugen.

Dazu sollte im Vorfeld der namespace des PostgreSQL Servers sowie dessen Service-Name und Service-Port bekannt sein.

user@linux $ kubectl get svc -n postgresql
NAMESPACE      NAME           TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)   AGE
postgresqlns   mypostgresql   ClusterIP   89.207.132.170  <none>        5432/TCP  13m

In dem Beispiel sind die folgenden Parameter vergeben:

  • postgresqlns ist der Namespace
  • mypostgresql ist der Name des Services
  • 5432 ist der Service-Port

Der Container für den Zugriff wird nun mit dem Befehl kubectl run erzeugt und direkt eine Verbindung zum PostgreSQL Server hergestellt.

user@linux $ kubectl run -it postgres --image=postgres --rm=true \
             --namespace=postgresqlns -- \
             psql postgresql://username:password@mypostgresql:5432/database

Nach Ende der Verbindung wird der Container gelöscht.