StackGres bereitstellen und konfigurieren

Sie müssen ein Oracle Container Engine for Kubernetes-Cluster erstellen, StackGres dafür bereitstellen und dann die Datenbank erstellen.

Bevor Sie beginnen, müssen Sie Ihre OCI-Architektur einrichten. Bei den folgenden Anweisungen wird davon ausgegangen, dass neben dem Kubernetes-Cluster und der Datenbank alles zur Verfügung steht.

Kubernetes-Cluster erstellen

Erstellen Sie eine Oracle Cloud Infrastructure Container Engine for Kubernetes-Instanz in Ihrem Compartment für das Deployment StackGres.

  1. Wählen Sie im Hauptmenü der OCI-Konsole die Option Entwicklerservices aus.
  2. Wählen Sie unter Container und Artefakte die Option Kubernetes-Cluster (OKE) aus.
    Alle vorhandenen Cluster in Ihrem Compartment werden in einer Tabelle aufgeführt.
  3. Klicken Sie auf die Schaltfläche Cluster erstellen.
  4. Wählen Sie im Dialogfeld Cluster erstellen die Option Schnellerstellung aus, und klicken Sie auf Weiterleiten.
    Mit der Option Schnellerstellung werden alle Netzwerkressourcen erstellt, die Sie für dieses Deployment benötigen, einschließlich Subnetze. Wenn Sie bereits Subnetze konfiguriert haben, können Sie stattdessen die Option Benutzerdefinierte Erstellung verwenden.
  5. Geben Sie im Assistenten Cluster erstellen (schnell) Werte für die folgenden Felder und Optionen an, und klicken Sie auf Weiter.
    Beispiel: Dies sind einige typische Werte für ein kleines Deployment (3 CPU):
  6. Im Schritt Prüfen enthält die Seite Zu erstellende Ressourcen eine Übersicht über Cluster-, Netzwerk- und Knotenpoolinformationen. Prüfen Sie sorgfältig alle angezeigten Informationen. Wenn sie korrekt sind, klicken Sie auf Cluster erstellen.
    Die Seite "Cluster und zugehörige Netzwerkressourcen erstellen" wird angezeigt. Jede zu erstellende Komponente wird mit einem Status aufgeführt, der nach Abschluss des automatisierten Prozesses aktualisiert wird. Der Prozess dauert in der Regel etwa 15 Minuten.
Wenn die Erstellung des Kubernetes-Clusters abgeschlossen ist, können Sie mit der Installation von StackGres im Cluster fortfahren.

StackGres mit Cloud Shell installieren

Installieren Sie StackGres in Ihrem neuen Kubernetes-Cluster mit der Befehlszeilenschnittstelle von Oracle Cloud Infrastructure Cloud Shell.

  1. Aktivieren Sie in der OCI-Konsole die Option zur Seite Clusterdetails für Ihr Kubernetes-Cluster. Für die folgenden Schritte benötigen Sie die hier angezeigten Informationen.
  2. Klicken Sie in der oberen Leiste der OCI-Konsole neben dem Dropdown-Menü "Region" auf das Codesymbol, und wählen Sie Cloud Shell aus.
    Nach kurzer Zeit wird die CLI geöffnet. In der Konsole und dem Prompt werden Benutzername, Mandant, Region und Home-Ordner angezeigt.
  3. Verwenden Sie den Befehl create-kubeconfig mit dem Wert Cluster-ID, der auf der Seite Clusterdetails angezeigt wird, und Ihrer Region:
    oci ce cluster create-kubeconfig --cluster-id your_cluster_id --file $HOME/.kube/config --region your_region --token-version 2.0.0 --kube-endpoint PUBLIC_ENDPOINT
  4. Prüfen Sie, ob die Kubernetes-Knoten korrekt gestartet wurden:
    kubectl get nodes
    Die Konsolenausgabe sollte jeden Knoten mit den IP-Adressen und dem Status Ready auflisten.
  5. Prüfen Sie, ob die Pods auch korrekt gestartet wurden:
    kubectl get pods -A
    Die Konsolenausgabe muss alle Pods im Kube-System-Namespace als Wird ausgeführt auflisten.
  6. Fügen Sie das StackGres-Installations-Repository mit der Packageinstallation hinzu:
    helm repo add stackgres-charts https://stackgres.io/downloads/stackgres-k8s/stackgres/helm/
    Die Konsolenausgabe sollte angeben, dass das Repository erfolgreich hinzugefügt wurde.
  7. Führen Sie die Installation aus:
    helm install --create-namespace --namespace stackgres stackgres-operator stackgres-charts/stackgres-operator
    Die Ausführung der Installation dauert etwa fünf Minuten.
Die Konsole gibt eine Meldung aus, dass der STATUS bereitgestellt wurde, gefolgt von einer Liste hilfreicher Befehle, einschließlich dem Befehl mit der URI für die Operator-UI StackGres und den get secret-Befehlen zum Generieren des Admin-Benutzernamens und -Passworts. Kopieren Sie die gesamte Ausgabe in eine Textdatei für eine spätere Referenz.

Dienst konfigurieren

Konfigurieren Sie den StackGres-Service mit Oracle Cloud Infrastructure Cloud Shell, und melden Sie sich dann bei der Benutzeroberfläche StackGres an.

  1. Bearbeiten Sie in Cloud Shell die Servicekonfigurationsdatei, indem Sie das Feld "Typ" von ClusterIP in LoadBalancer ändern:
    kubectl edit services stackgres-restapi -n stackgres
    Die Konsole lädt die Konfigurationsdatei in den Standardtexteditor, wie vi. Suchen Sie unter spec: das Feld type:, und ändern Sie den Wert in LoadBalancer. Drücken Sie in vi die Esc-Taste und geben Sie dann :wq ein, um die Datei zu speichern.
  2. Rufen Sie den Referenznamen des Service ab:
    kubectl get pods -n stackgres –w
    Kopieren Sie den Namen des Stackgres-restapi-Pods. Beispiel: stackgres-restapi-684df1e9b-gx455.
  3. Geben Sie den Service für den Zugriff auf die Webkonsole an:
    kubectl expose pod your_stackgres-restapi-pod -n stackgres --type LoadBalancer --port 9443 --name admin-console
    Die Konsolenausgabe sollte service/admin-console angegeben sein.
  4. Rufen Sie die IP-Adresse und den Zugriffsport für den Service ab:
    kubectl get services -n stackgres –w
    Die Konsolenausgabe enthält eine Zeile für die Admin-Konsole. Kopieren Sie die Werte für die externe IP und den Port. Sie können über die URL https://<external-ip>:<port>/admin/index.html auf die Konsole zugreifen.
  5. Generieren Sie einen Benutzernamen und ein Kennwort für die Konsole mit den beim Ausführen der Installation angegebenen "get Secret"-Befehlen:

    kubectl get secret -n stackgres stackgres-restapi --template '{{ printf "username = %s\n" (.data.k8sUsername | base64decode) }}'

    kubectl get secret -n stackgres stackgres-restapi --template '{{ printf "password = %s\n" (.data.clearPassword | base64decode) }}'

    Kopieren Sie den Benutzernamen und das Kennwort.
  6. Melden Sie sich bei der StackGres-Konsole an. Navigieren Sie mit der in Schritt 4 erstellten URL zur Konsole, und melden Sie sich mit dem in Schritt 5 generierten Benutzernamen und Kennwort an.
  7. Wählen Sie in der Dropdown-Liste "Namespace auswählen" den Namespace aus, den Sie bei der Installation erstellt haben. Beispiel: stackgres.
Sie können die StackGres-Instanz über die Konsole StackGres verwalten.

Datenbank erstellen

Erstellen Sie mit der Konsole StackGres eine Datenbank in Ihrem StackGres-Cluster, und greifen Sie darauf zu.

  1. Wählen Sie in der Konsole StackGres die Option StackGres Cluster aus. Klicken Sie anschließend auf den Link Neuen erstellen? in der Tabelle.
  2. Geben Sie im Assistenten "Cluster erstellen" Werte für Ihre PostgreSQL-Datenbankinstanzen ein, und klicken Sie auf Cluster erstellen. Beispiel: So erstellen Sie drei Instanzen für eine hochverfügbare Produktionsumgebung:
    Wenn die Cluster erstellt werden, werden sie in der Konsole mit dem Status Aktiv angezeigt.
  3. Klicken Sie auf Verbindungsinformationen anzeigen, um einige nützliche Befehle anzuzeigen, einschließlich der kubectl-Befehle für die Verbindung zum Postgres-Client psql in Cloud Shell. Beispiel:
    kubectl -n stackgres exec -ti prod-0 -c postgres-util – psql
Ihr PostgreSQL-Deployment ist jetzt auf OCI hochgefahren und gestartet.