Biregionales Quorum ändern

Auf dieser Seite wird beschrieben, wie Sie den Systemstatus Ihres biregionalen Spanner-Quorums prüfen und das Quorum bei Dienstunterbrechungen manuell ändern.

Weitere Informationen zu Dual-Regionen finden Sie unter Biregionale Instanzkonfigurationen von Spanner .

Status des biregionalen Quorums prüfen

Sie können den Status Ihres biregionalen Quorums auf folgende Weise prüfen:

Auf der Seite „Datenbanküberblick“

  1. Rufen Sie in der Google Cloud Console die Seite Spanner-Instanzen auf.

    Zur Seite "VM-Instanzen"

  2. Klicken Sie auf den Namen der Instanz, die sich in einer biregionalen Konfiguration befindet.

  3. Klicken Sie auf den Namen der Datenbank.

  4. Suchen Sie unter „Übersicht“ nach der Quorum-Zeile. Dort wird der Status des biregionalen Quorums Ihrer Instanz angezeigt:

    • Wenn das Quorum in beiden Regionen erreicht ist, wird der Status Dual-Region angezeigt.

    • Wenn ein manueller oder von Google verwalteter Failover ausgeführt wurde, sehen Sie den Namen der Serving-Region (z. B. asia-south1).

Systemstatistik-Dashboard verwenden

Nachdem Sie eine biregionale Konfiguration erstellt haben, können Sie den Messwert „Biregionale Zeitachse zur Quorumintegrität“ im Systemstatistik-Dashboard auf Instanzebene aufrufen.

Weitere Informationen finden Sie unter Systemstatistik-Dashboard aufrufen.

Monitoring REST API oder gcloud CLI verwenden

Sie können die Monitoring REST API oder die gcloud CLI verwenden, um den Status Ihres biregionalen Quorums zu prüfen.

Monitoring REST API

Verwenden Sie die Monitoring projects.timeSeries.list API, um die Zeitachse zur Quorumintegrität der Dual-Region abzufragen und zu prüfen, ob eine Region zu einem bestimmten Zeitpunkt fehlerfrei ist.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • PROJECT_ID: Ihre Projekt-ID.
  • DUAL_REGION_LOCATION: Der Standort der Region in der Dual-Region, die Sie prüfen möchten.
  • START_TIME: Die Startzeit der Abfrage. Wir empfehlen, 5 Minuten vor der aktuellen Zeit zu verwenden.
  • END_TIME: Die Endzeit der Abfrage. Wir empfehlen, die aktuelle Zeit zu verwenden.

HTTP-Methode und URL:

GET https://monitoring.googleapis.com/v3/projects/PROJECT_ID/timeSeries

JSON-Text anfordern:

{
  "name": "PROJECT_ID",
  "aggregation.alignmentPeriod": "60s",
  "aggregation.crossSeriesReducer": "REDUCE_FRACTION_TRUE",
  "aggregation.groupByFields": "resource.labels.location",
  "aggregation.perSeriesAligner": "ALIGN_NEXT_OLDER",
  "filter": "metric.labels.quorum_availability = "Healthy" AND metric.type = "spanner.googleapis.com/instance/dual_region_quorum_availability" AND resource.labels.location = "DUAL_REGION_LOCATION"",
  "interval.startTime": "START_TIME",
  "interval.endTime": "END_TIME"
}

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

{
  "timeSeries": [
    {
      "metric": {
        "type": "spanner.googleapis.com/instance/dual_region_quorum_availability"
      },
      "resource": {
        "type": "spanner_instance",
        "labels": {
          "project_id": "spanner-project",
          "location": "australia-southeast1"
        }
      },
      "metricKind": "GAUGE",
      "valueType": "DOUBLE",
      "points": [
        {
          "interval": {
            "startTime": "2024-07-11T05:41:23Z",
            "endTime": "2024-07-11T05:41:23Z"
          },
          "value": {
            "doubleValue": 1
          }
        }
      ]
    }
  ],
  "unit": "10^2.%"
}

Wenn Sie keine ähnliche Antwort sehen, ist Ihre Region möglicherweise fehlerhaft und Sie müssen das biregionale Quorum von „Dual-Region“ in „Eine Region“ ändern.

gcloud CLI

  1. Laden Sie die dual-region-quorum-health-check-script.sh Datei herunter.

    Dieses Bash-Skript prüft den Status der Region Ihrer Einzelregion. Wenn die Region fehlerfrei ist, führt das Skript den gcloud spanner databases change-quorum Befehl aus, um das biregionale Quorum manuell von „Dual-Region“ in „Eine Region“ zu ändern.

  2. Ersetzen Sie die folgenden Variablen im Skript:

    • PROJECT: Ihre Projekt-ID.
    • INSTANCE: Ihre Instanz-ID.
    • DATABASE: Ihre Datenbank-ID.
    • SERVING_LOCATION: Der Standort der Region in der Dual-Region, die Sie prüfen möchten.
  3. Führen Sie das Skript in der Entwicklungsumgebung Ihrer Wahl aus. Weitere Informationen finden Sie unter gcloud CLI installieren und Spanner API einrichten.

  4. Führen Sie manuell einen Failback aus, wenn Ihre Region fehlerhaft war und es ein Failover gab.

Biregionales Quorum von „Dual-Region“ in „Eine Region“ ändern (Failover)

So führen Sie manuell einen Failover aus, wenn ein regionaler Ausfall oder ein Problem mit der Netzwerkpartitionierung vorliegt:

Google Cloud Console

  1. Rufen Sie in der Google Cloud Console die Seite Spanner-Instanzen auf.

    Zur Seite "VM-Instanzen"

  2. Klicken Sie auf den Namen der Instanz, die sich in einer biregionalen Konfiguration befindet.

  3. Klicken Sie im Navigationsmenü auf Systemstatistiken.

  4. Suchen Sie nach dem Messwert Biregionale Zeitachse zur Quorumintegrität.

  5. Wenn die Zeitachse zur Quorumintegrität der Dual-Region eine Unterbrechung in einer Region anzeigt, klicken Sie auf Regionsquorum ändern.

    Die Cloud Shell wird geöffnet.

  6. Wenn Sie das biregionale Quorum von „Dual-Region“ in „Eine Region“ ändern möchten, geben Sie den folgenden Befehl ein, der auf dem Tab „gcloud CLI“ zu finden ist: gcloud spanner databases change-quorum. Eine detaillierte Anleitung finden Sie auf dem Tab gcloud.

gcloud CLI

Verwenden Sie den gcloud spanner databases change-quorum Befehl, um das biregionale Quorum von „Dual-Region“ in „Eine Region“ zu ändern.

gcloud spanner databases change-quorum
    DATABASE_ID --instance=INSTANCE_ID
    --single-region --serving-location=SERVING_LOCATION
    [--etag=ETAG]

Ersetzen Sie Folgendes:

  • DATABASE_ID: Die permanente Kennzeichnung der Datenbank.

  • INSTANCE_ID: Die permanente Kennzeichnung der Instanz.

  • SERVING_LOCATION: Die regionale Instanzkonfiguration, zu der Sie einen Failover ausführen möchten. Wenn beispielsweise asia-south1 (Mumbai) fehlerhaft ist und Sie einen Failover zu asia-south2 (Delhi) ausführen möchten, geben Sie asia-south2 ein. Achten Sie darauf, dass SERVING_LOCATION die fehlerfreie Region ist. Wenn Sie eine falsche Region für den Failover auswählen, ist die Datenbank nicht verfügbar. Das Problem kann erst behoben werden, wenn die Region wieder online ist.

Optionale Flags:

  • --etag=ETAG: Das ETAG Argument kann zum Schutz vor Wiederholungen verwendet werden.

Führen Sie den gcloud spanner databases describe Befehl aus, um den Status des Vorgangs zur Quorumänderung zu prüfen. Das Feld quorumInfo enthält Informationen zum Vorgang.

gcloud spanner databases describe DATABASE_ID
    --instance=INSTANCE_ID

Biregionales Quorum von „Eine Region“ in „Dual-Region“ ändern (Failback)

So führen Sie manuell einen Failback aus, nachdem die fehlerhafte Region wieder fehlerfrei ist oder das Problem mit der Netzwerkpartitionierung behoben wurde:

Google Cloud Console

  1. Rufen Sie in der Google Cloud Console die Seite Spanner-Instanzen auf.

    Zur Seite "VM-Instanzen"

  2. Klicken Sie auf den Namen der Instanz, die sich in einer biregionalen Konfiguration befindet.

  3. Klicken Sie im Navigationsmenü auf Systemstatistiken.

  4. Suchen Sie nach dem Messwert Biregionale Zeitachse zur Quorumintegrität.

  5. Klicken Sie auf der Zeitachse zur Quorumintegrität der Dual-Region auf Regionsquorum ändern.

    Die Cloud Shell wird geöffnet.

  6. Wenn Sie das biregionale Quorum von „Eine Region“ in „Dual-Region“ ändern möchten, geben Sie den folgenden Befehl ein, der auf dem Tab „gcloud CLI“ zu finden ist: gcloud spanner databases change-quorum. Eine detaillierte Anleitung finden Sie auf dem Tab gcloud.

gcloud CLI

Verwenden Sie den gcloud spanner databases change-quorum Befehl, um das biregionale Quorum von „Eine Region“ in „Dual-Region“ zu ändern.

gcloud spanner databases change-quorum
    DATABASE_ID --instance=INSTANCE_ID
    --dual-region
    [--etag=ETAG]

Ersetzen Sie Folgendes:

  • DATABASE_ID: Die permanente Kennzeichnung der Datenbank.

  • INSTANCE_ID: Die permanente Kennzeichnung der Instanz.

Optionale Flags:

  • --etag=ETAG: Das ETAG Argument kann für die optimistische Nebenläufigkeitserkennung verwendet werden.

Führen Sie den gcloud spanner databases describe Befehl aus, um den Status des Vorgangs zur Quorumänderung zu prüfen. Das Feld quorumInfo enthält Informationen zum Vorgang.

gcloud spanner databases describe DATABASE_ID
    --instance=INSTANCE_ID

Nächste Schritte