Modifier le quorum birégional

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

Pour en savoir plus sur les zones birégionales, consultez la section Configurations d'instance birégionales de Spanner.

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

Vous pouvez vérifier l'état de votre quorum à deux régions de différentes manières :

Sur la page de présentation de la base de données

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

    Accéder à la page Instances

  2. Cliquez sur le nom de l'instance qui est dans une configuration à deux régions.

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

  4. Sous "Aperçu", recherchez la ligne Quorum, qui indique la zone birégionale. du quorum 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 (par exemple, asia-south1).

Utiliser le tableau de bord des insights système

Une fois que vous avez créé une configuration à deux régions, vous pouvez consulter la métrique Disponibilité du quorum bi-régional dans le tableau de bord "Insights système au niveau de l'instance".

Pour en savoir plus, consultez Afficher le tableau de bord "Insights système".

Utiliser l'API REST Monitoring ou gcloud CLI

Vous pouvez utiliser l'API REST Monitoring ou la CLI gcloud pour vérifier l'état de votre quorum à deux régions.

API REST Monitoring

Utilisez l'API Monitoring projects.timeSeries.list pour interroger la métrique Disponibilité du quorum à deux régions afin de 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 l'emplacement birégional que vous souhaitez vérifier.
  • START_TIME : heure de début de la requête. Nous vous recommandons de l'utiliser cinq 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 similaire, il est possible que votre région ne soit pas opérationnelle. vous devrez peut-être passer le quorum birégional de la zone birégionale à celui d'une région unique.

CLI gcloud

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

    Ce script bash vérifie l'état de santé de votre région. Si le est opérationnelle, le script exécute gcloud spanner databases change-quorum pour basculer manuellement le quorum birégional vers dans 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 l'emplacement birégional qui à vérifier.
  3. Exécutez le script dans l'environnement de développement de votre choix. Pour en savoir plus, consultez Installer la Google Cloud CLI et configurer l'API Spanner.

  4. Effectuez une restauration manuelle si votre région n'était pas opérationnelle et si était un basculement.

Modifier le quorum birégional pour qu'il soit birégional ou régional unique (failover)

Pour effectuer un basculement manuel en cas d'indisponibilité régionale ou de problème de partitionnement réseau :

console Google Cloud

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

    Accéder à la page Instances

  2. Cliquez sur le nom de l'instance qui est dans une configuration à deux régions.

  3. Cliquez sur Insights système dans le menu de navigation.

  4. Recherchez la métrique Disponibilité du quorum birégional.

  5. Si la métrique de disponibilité du quorum birégional indique une interruption dans une région, cliquez sur Icône du bouton Activer Cloud Shell Activez Cloud Shell en haut de la console Google Cloud.

    Cloud Shell s'ouvre.

  6. Pour passer du quorum birégional à un quorum monorégional, saisissez la commande suivante dans l'onglet de la CLI gcloud : gcloud spanner databases change-quorum. Pour obtenir des instructions détaillées, reportez-vous à l'onglet gcloud.

CLI gcloud

Utilisez le gcloud spanner databases change-quorum pour remplacer le quorum birégional par une région unique.

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 à laquelle vous souhaitez effectuer le basculement. Par exemple, si asia-south1 (Mumbai) n'est pas opérationnel et que vous souhaitez effectuer un basculement vers asia-south2 (Delhi), saisissez asia-south2. Assurez-vous que SERVING_LOCATION est opérationnel dans la même région. Le choix d'une région inappropriée pour le basculement dans la base de données une indisponibilité, qui est irrécupérable avant la remise en ligne de la région.

Indicateurs facultatifs :

  • --etag=ETAG: ETAG peut être utilisé pour la protection contre la rejeu.

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

gcloud spanner databases describe DATABASE_ID
    --instance=INSTANCE_ID

Faire passer le quorum birégional de région unique à birégional (restauration)

Pour effectuer une restauration manuelle une fois que la région interrompue est opérationnelle ou après que le réseau problème de partition est résolu:

console Google Cloud

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

    Accéder à la page Instances

  2. Cliquez sur le nom de l'instance qui est dans une configuration à deux régions.

  3. Cliquez sur Insights système dans le menu de navigation.

  4. Recherchez la métrique Disponibilité du quorum birégional.

  5. Sur la métrique de disponibilité du quorum pour les emplacements birégionaux, cliquez sur Modifier le quorum de la région.

    Cloud Shell s'ouvre.

  6. Pour passer du quorum birégional à un quorum monorégional, saisissez la commande suivante dans l'onglet de la CLI gcloud : gcloud spanner databases change-quorum. Pour obtenir des instructions détaillées, consultez l'onglet gcloud.

CLI gcloud

Utilisez la commande gcloud spanner databases change-quorum pour modifier le quorum bi-régional d'une région unique en bi-région.

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 ETAG peut être utilisé pour le contrôle de simultanéité optimiste.

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

gcloud spanner databases describe DATABASE_ID
    --instance=INSTANCE_ID

Étape suivante