Hochverfügbarkeit konfigurieren

Der Zweck einer Hochverfügbarkeitskonfiguration besteht darin, Ausfallzeiten zu reduzieren, wenn eine Datenbankclusterinstanz nicht mehr verfügbar ist. Dies kann passieren, wenn eine Instanz nicht mehr über genügend Arbeitsspeicher verfügt. Mit Hochverfügbarkeit sind Ihre Daten weiterhin für Clientanwendungen verfügbar.

Innerhalb eines Standorts besteht die Konfiguration aus einer primären Instanz und einem Standby-Replikat. Alle Schreibvorgänge, die an der primären Instanz ausgeführt werden, werden auf das Standby-Replikat repliziert, bevor eine Transaktion als Commit gemeldet wird. Bei einem Instanzausfall können Sie anfordern, dass das Standby-Replikat zur neuen primären Instanz wird. Der Anwendungs-Traffic wird dann auf die neue primäre Instanz umgeleitet. Dieser Vorgang wird als Failover bezeichnet.

Sie können jederzeit manuell ein Failover auslösen. Das Failover umfasst die folgenden Schritte in der angegebenen Reihenfolge:

  1. GDC nimmt die primäre Instanz offline.

  2. GDC macht das Standby-Replikat zum neuen aktiven Datenbankcluster.

  3. GDC löscht den vorherigen aktiven Datenbankcluster.

  4. GDC erstellt ein neues Standby-Replikat.

Für AlloyDB Omni- und PostgreSQL-Datenbankcluster können Sie die Hochverfügbarkeit in derselben Zone aktivieren oder deaktivieren.

Vorhandenen Cluster aktualisieren

Sie können die Einstellungen für Hochverfügbarkeit für einen vorhandenen Datenbankcluster aktualisieren:

Console

  1. Wählen Sie im Navigationsmenü Database Service aus.

  2. Klicken Sie in der Liste der Datenbankcluster auf den Datenbankcluster, den Sie aktualisieren möchten.

  3. Wählen Sie im Abschnitt Hochverfügbarkeit die Option Bearbeiten aus.

    Hochverfügbarkeitseinstellungen eines Datenbankclusters bearbeiten

  4. Wählen Sie Same-zone standby aktivieren aus, um die Verfügbarkeit einer Standby-Instanz in derselben Zone wie Ihr primärer Datenbankcluster zu aktivieren oder zu deaktivieren.

  5. Klicken Sie auf Speichern.

  6. Prüfen Sie, ob Ihr Datenbankcluster Ihr Update zur Hochverfügbarkeit widerspiegelt, indem Sie den Status in der Spalte Hochverfügbarkeit der Datenbankclusterliste ansehen.

gdcloud

  1. Aktualisieren Sie die Hochverfügbarkeitskonfiguration Ihres Datenbankclusters:

    gdcloud database clusters update CLUSTER_NAME \
        --availability-type HA_TYPE
    

    Ersetzen Sie Folgendes:

    • CLUSTER_NAME: der Name des Datenbankclusters.
    • HA_TYPE: Die Hochverfügbarkeitsstufe für den Datenbankcluster. Sie können zonal oder zonal_ha festlegen. Der Wert zonal ist standardmäßig festgelegt.
  2. Prüfen Sie, ob Ihr Datenbankcluster die Aktualisierung der Hochverfügbarkeit widerspiegelt:

    gdcloud database clusters list
    

API

  1. Aktualisieren Sie die Hochverfügbarkeitskonfiguration Ihres Datenbankclusters:

      kubectl patch dbcluster.DBENGINE_NAME.dbadmin.gdc.goog DBCLUSTER_NAME \
        -n USER_PROJECT \
        -p '{"spec": {"availability": {"enableHighAvailability": HA_ENABLED}}}' \
        --type=merge
    

    Ersetzen Sie die folgenden Variablen:

    • DBENGINE_NAME: der Name der Datenbank-Engine. Das ist eine der folgenden Optionen: alloydbomni, postgresql oder oracle.
    • DBCLUSTER_NAME: der Name des Datenbankclusters.
    • USER_PROJECT: Der Name des Nutzerprojekts, in dem der Datenbankcluster erstellt wurde.
    • HA_ENABLED: Das Hochverfügbarkeitsniveau für den Datenbankcluster. Sie können true oder false festlegen. Der Wert false ist standardmäßig festgelegt.
  2. Prüfen Sie, ob Ihr Datenbankcluster die Aktualisierung der Hochverfügbarkeit widerspiegelt:

    kubectl get dbcluster.DBENGINE_NAME.dbadmin.gdc.goog DBCLUSTER_NAME \
      -n USER_PROJECT \
      -o yaml
    

Failover auslösen

Wenn Sie Hochverfügbarkeit für Ihren Datenbankcluster konfiguriert haben, können Sie ein Failover auslösen. Führen Sie die folgenden Schritte aus, um einen Failover auszulösen:

Console

  1. Wählen Sie im Navigationsmenü Database Service aus.

  2. Klicken Sie in der Liste der Datenbankcluster auf den Datenbankcluster, für den Sie ein Failover auslösen möchten. In Ihrem Datenbankcluster muss Hochverfügbarkeit aktiviert sein, damit ein Failover möglich ist.

  3. Klicken Sie auf Failover.

  4. Geben Sie die ID des Clusters für den Bestätigungssatz ein und klicken Sie auf Failover, um den Failover-Prozess auszulösen.

gdcloud

  • Failover für den Datenbankcluster auslösen:

    gdcloud database clusters failover CLUSTER_NAME
    

    Ersetzen Sie CLUSTER_NAME durch den Namen des Datenbankclusters.

API

  apiVersion: fleet.dbadmin.gdc.goog/v1
  kind: Failover
  metadata:
    name: FAILOVER_NAME
  spec:
    dbclusterRef: DBCLUSTER_NAME

Ersetzen Sie die folgenden Variablen:

  • DBCLUSTER_NAME: der Name des Datenbankclusters.
  • FAILOVER_NAME: Der eindeutige Name des Failovers, z. B. failover-sample.