OpenShift Pods mittels Java starten

Um in der OpenShift dynamisch neue Kubernetes Objekte zu erzeugen, kann der Java Client für Kubernetes und OpenShift 3 von fabric8.io verwendet werden. Dieser Client nutzt die REST API der Kubernetes/OpenShift Plattform, um verschiedene Aktionen auszuführen.

Wir verwenden den Kubernetes Client beispielsweise, um in der OpenShift neue Pods zu starten und nach der Berechnung diese wieder zu beenden. Wir haben uns ganz bewusst für den Kubernetes und nicht für den OpenShift Client entschieden. So sind wir plattformunabhängig und können auf andere Kubernetes Plattformen wechseln, ohne unsere Implementierung ändern zu müssen (Open-Closed Prinzip).

Beispiel

Zu Beginn erstellen wir einen Kubernetes Client. Dafür wird die Kubernetes URL der Plattform benötigt:

Mit dem Client starten wir jetzt einen neuen Pod:

Damit auf den soeben erstellten Pod zugegriffen werden kann, legen wir jetzt noch ein Service an:

Wenn der Pod nicht mehr benötigt wird, wird zuerst der Service wieder gelöscht:

Und danach den Pod:

Fazit

Der Client ist sehr mächtig. Er bietet die Möglichkeit eine Kubernetes Plattform dynamisch mittels Java zu orchestrieren. Wenn man sich mit Kubernetes auskennt, wird man keine Probleme bei der Anwendung des Java Clients haben.

Versucht es doch einfach selber.

Datenbankdump in PostgreSQL

Um die Daten einer PostgreSQL Datenbank zu sichern, kann ein Datenbankdump erstellt werden. Der Dump ist im Grunde nur eine Textdatei die die SQL Statements enthält, um die Datenbank wiederherstellen zu können.Mehr

Konfiguration der PostgreSQL Datenbank mit pgtune optimieren

Die Standardkonfiguration der PostgreSQL ist so eingestellt, das die Datenbank auf jedem System lauffähig ist. Was bedeutet, dass sie Performance technisch auf Sparflamme unterwegs ist.

Um die optimale Konfiguration zu erhalten, kann das kleine Tool/Skript pgtune verwendet werden. Dieses Tool erstellt die Konfiguration anhand der Systemparameter (RAM, CPUs,…).Es ist jedoch ratsam das ganze danach noch zu prüfen, da pgtune nicht automatisch erkennt ob noch andere Datenbanken oder Systeme auf dem Server konfiguriert sind.

Die Verwendung ist ganz einfach:

  1. pgtune herunterladen
  2. Das Skript pgtune mit den Parametern “aktuelle Konfiguration” und “neue Konfiguration” ausführen

Beispiel: