Modifier le quorum birégional

Cette page explique comment vérifier l'état de votre quorum birégional Spanner et comment le modifier manuellement en cas d'interruption de service.

Pour en savoir plus sur les zones birégionales, consultez Spanner Configurations d'instances birégionales.

Vérifier l'état du quorum birégional

Vous pouvez vérifier l'état de votre quorum birégional de différentes manières :

Sur la page "Présentation de la base de données"

  1. Accédez à la page Instances Spanner de la Google Cloud console.

    Accéder à la page Instances

  2. Cliquez sur le nom de l'instance qui se trouve dans une configuration birégionale.

  3. Cliquez sur le nom de la base de données.

  4. Sous "Présentation", recherchez la ligne Quorum, qui indique l'état du quorum birégional de votre instance :

    • Si le quorum est atteint dans les deux régions, l'état indique Birégional.

    • Si un basculement manuel ou géré par Google a été effectué, le nom de la région de diffusion s'affiche (par exemple, asia-south1).

Utiliser le tableau de bord des insights système

Une fois que vous avez créé une configuration birégionale, vous pouvez afficher la métrique "Chronologie de l'état du quorum birégional" dans le tableau de bord des insights système au niveau de l'instance.

Pour en savoir plus, consultez Afficher le tableau de bord des insights système.

Utiliser l'API REST Monitoring ou gcloud CLI

Vous pouvez utiliser l'API REST Monitoring ou gcloud CLI pour vérifier l'état de votre quorum birégional.

API REST Monitoring

Utilisez l'API projects.timeSeries.list Monitoring pour interroger la chronologie de l'état du quorum birégional et vérifier si une région est opérationnelle à un moment donné.

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID : ID de votre projet.
  • DUAL_REGION_LOCATION : emplacement de la région dans la zone birégionale que vous souhaitez vérifier.
  • START_TIME : heure de début de la requête. Nous vous recommandons d'utiliser 5 minutes avant l'heure actuelle.
  • END_TIME : heure de fin de la requête. Nous vous recommandons d'utiliser l'heure actuelle.

Méthode HTTP et URL :

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

Corps JSON de la requête :

{
  "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"
}

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

{
  "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.%"
}

Si vous ne voyez pas de réponse semblable, il est possible que votre région ne soit pas opérationnelle et que vous deviez modifier le quorum birégional pour passer d'une zone birégionale à une zone à une seule région.

Gcloud CLI

  1. Téléchargez le dual-region-quorum-health-check-script.sh fichier.

    Ce script bash vérifie l'état de la région unique. Si la région est opérationnelle, le script exécute la gcloud spanner databases change-quorum commande pour basculer manuellement le quorum birégional d'une zone birégionale vers une zone à une seule région.

  2. Remplacez les variables suivantes dans le script :

    • PROJECT : ID de votre projet.
    • INSTANCE : ID de votre instance.
    • DATABASE : ID de votre base de données.
    • SERVING_LOCATION: emplacement de la région dans la zone birégionale que vous souhaitez vérifier.
  3. Exécutez le script dans l'environnement de développement de votre choix. Pour en savoir plus, consultez Installer la gcloud CLI et configurer l'API Spanner.

  4. Effectuez manuellement la restauration si votre région n'était pas opérationnelle et qu'un basculement a eu lieu.

Modifier le quorum birégional pour passer d'une zone birégionale à une zone à une seule région (basculement)

Pour effectuer un basculement manuel en cas de panne régionale ou de problème de partitionnement du réseau :

Google Cloud Console

  1. Accédez à la page Instances Spanner de la console Google Cloud .

    Accéder à la page Instances

  2. Cliquez sur le nom de l'instance qui se trouve dans une configuration birégionale.

  3. Dans le menu de navigation, cliquez sur Insights système.

  4. Recherchez la métrique Chronologie de l'état du quorum birégional.

  5. Si la chronologie de l'état du quorum birégional indique une interruption dans une région, cliquez sur Modifier le quorum régional.

    Cloud Shell s'ouvre.

  6. Pour modifier le quorum birégional et passer d'une zone birégionale à une zone à une seule région, saisissez la commande suivante, disponible dans l'onglet gcloud CLI : gcloud spanner databases change-quorum. Pour obtenir des instructions détaillées, consultez l'onglet gcloud.

Gcloud CLI

Utilisez la gcloud spanner databases change-quorum commande pour modifier le quorum birégional et passer d'une zone birégionale à une zone à une seule région.

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

Remplacez les éléments suivants :

  • DATABASE_ID: identifiant permanent de la base de données.

  • INSTANCE_ID: identifiant permanent de l'instance.

  • SERVING_LOCATION: configuration d'instance régionale vers laquelle vous souhaitez basculer. Par exemple, si asia-south1 (Mumbai) n'est pas opérationnel et que vous souhaitez basculer vers asia-south2 (Delhi), saisissez asia-south2. Assurez-vous que SERVING_LOCATION correspond à la région opérationnelle. Si vous choisissez une mauvaise région pour le basculement, la base de données ne sera pas disponible et vous ne pourrez pas la récupérer avant que la région ne soit de nouveau en ligne.

Indicateurs facultatifs :

  • --etag=ETAG : l'argument ETAG peut être utilisé pour la protection contre la relecture.

Pour vérifier l'état de votre opération de modification du quorum, exécutez la gcloud spanner databases describe commande. Le champ quorumInfo fournit des informations sur l'opération.

gcloud spanner databases describe DATABASE_ID
    --instance=INSTANCE_ID

Modifier le quorum birégional pour passer d'une zone à une seule région à une zone birégionale (restauration)

Pour effectuer manuellement la restauration une fois que la région perturbée est opérationnelle ou que le problème de partitionnement du réseau est résolu :

Google Cloud Console

  1. Accédez à la page Instances Spanner de la console Google Cloud .

    Accéder à la page Instances

  2. Cliquez sur le nom de l'instance qui se trouve dans une configuration birégionale.

  3. Dans le menu de navigation, cliquez sur Insights système.

  4. Recherchez la métrique Chronologie de l'état du quorum birégional.

  5. Dans la chronologie de l'état du quorum birégional, cliquez sur Modifier le quorum régional.

    Cloud Shell s'ouvre.

  6. Pour modifier le quorum birégional et passer d'une zone à une seule région à une zone birégionale, saisissez la commande suivante, disponible dans l'onglet gcloud CLI : gcloud spanner databases change-quorum. Pour obtenir des instructions détaillées, consultez l'onglet gcloud.

Gcloud CLI

Utilisez la gcloud spanner databases change-quorum commande pour modifier le quorum birégional et passer d'une zone à une seule région à une zone birégionale.

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

Remplacez les éléments suivants :

  • DATABASE_ID: identifiant permanent de la base de données.

  • INSTANCE_ID: identifiant permanent de l'instance.

Indicateurs facultatifs :

  • --etag=ETAG : l'argument peut être utilisé pour le contrôle de simultanéité optimiste.ETAG

Pour vérifier l'état de votre opération de modification du quorum, exécutez la gcloud spanner databases describe commande. Le champ quorumInfo fournit des informations sur l'opération.

gcloud spanner databases describe DATABASE_ID
    --instance=INSTANCE_ID

Étape suivante