Cambia el quórum de región doble

En esta página, se describe cómo verificar el estado del quórum de Spanner de dos regiones y cómo cambiarlo de forma manual en caso de interrupciones del servicio.

Para obtener más información sobre las regiones dobles, consulta Configuraciones de instancias de región doble de Spanner.

Verifica el estado del quórum birregional

Puedes verificar el estado del quórum de dos regiones de las siguientes maneras:

En la página de descripción general de la base de datos

  1. Ve a la página Instancias de Spanner en la consola de Google Cloud.

    Ir a la página Instancias

  2. Haz clic en el nombre de la instancia que tiene una configuración de región doble.

  3. Haz clic en el nombre de la base de datos.

  4. En Descripción general, busca la fila Quórum, que muestra la región doble el estado de quórum de tu instancia:

    • Si se cumple el quórum en ambas regiones, el estado muestra Birregional.

    • Si se realizó una conmutación por error manual o administrada por Google, verás el nombre de la región de publicación (por ejemplo, asia-south1).

Usa el panel Estadísticas del sistema

Después de crear una configuración birregional, puedes ver la Disponibilidad de quórum birregional en el panel de estadísticas del sistema a nivel de la instancia.

Para obtener más información, consulta Visualiza el panel de estadísticas del sistema.

Usa la API de REST de Monitoring o gcloud CLI

Puedes usar la API de REST de Monitoring o la CLI de gcloud para verificar el estado del quórum de dos regiones.

API de REST de Monitoring

Usa la API de projects.timeSeries.list de Monitoring para consultar la métrica Disponibilidad de quórum de dos regiones y verificar si una región está en buen estado en un momento determinado.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: el ID de tu proyecto
  • DUAL_REGION_LOCATION: Es la ubicación de la región en la región doble que deseas verificar.
  • START_TIME: Es la hora de inicio de la consulta. Te recomendamos que uses 5 minutos antes de la hora actual.
  • END_TIME: Es la hora de finalización de la consulta. Te recomendamos que uses la hora actual.

Método HTTP y URL:

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

Cuerpo JSON de la solicitud:

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

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "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 no ves una respuesta similar, es posible que tu región no se encuentre en buen estado. es posible que debas cambiar el quórum birregional de birregional a una sola región.

gcloud CLI

  1. Descargue la dual-region-quorum-health-check-script.sh .

    Esta secuencia de comandos de Bash verifica el estado de la región de tu única región. Si el botón está en buen estado, la secuencia de comandos ejecutará gcloud spanner databases change-quorum para conmutar por error el quórum birregional de forma manual de en una sola región.

  2. Reemplaza las siguientes variables en la secuencia de comandos:

    • PROJECT: el ID de tu proyecto
    • INSTANCE: Es el ID de tu instancia.
    • DATABASE: Es el ID de tu base de datos.
    • SERVING_LOCATION: Es la ubicación de la región en la región doble que que quieres comprobar.
  3. Ejecuta la secuencia de comandos en el entorno de desarrollo que prefieras. Para ver más información, consulta Instala Google Cloud CLI y configura la API de Spanner.

  4. Realiza una recuperación manual si la región no está en buen estado y tiene fue una conmutación por error.

Cambia el quórum birregional de birregional a una sola región (conmutación por error)

Para realizar la conmutación por error de forma manual si hay una interrupción regional o un problema de partición de la red, haz lo siguiente:

Consola de Google Cloud

  1. Ve a la página Instancias de Spanner en la consola de Google Cloud.

    Ir a la página Instancias

  2. Haz clic en el nombre de la instancia que tiene una configuración de región doble.

  3. Haz clic en Estadísticas del sistema en el menú de navegación.

  4. Busca la métrica Disponibilidad del quórum birregional.

  5. Si la métrica de disponibilidad de quórum birregional muestra que hay interrupciones En una región, haz clic en Ícono del botón Activar Cloud Shell. Activa Cloud Shell en la parte superior de la consola de Google Cloud.

    Se abrirá Cloud Shell.

  6. Para cambiar el quórum birregional de una región doble a una única, Ingresa el siguiente comando que se encuentra en la pestaña de gcloud CLI: gcloud spanner databases change-quorum Para obtener instrucciones detalladas, consulta la pestaña gcloud.

gcloud CLI

Usa la gcloud spanner databases change-quorum. para cambiar el quórum birregional de una región doble a una única.

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

Reemplaza lo siguiente:

  • DATABASE_ID: Es el identificador permanente de la base de datos.

  • INSTANCE_ID: Identificador permanente de la instancia.

  • SERVING_LOCATION: La instancia regional de configuración con la que quieres hacer la conmutación por error. Por ejemplo, si asia-south1 (Bombay) no está en buen estado y deseas realizar la conmutación por error a asia-south2 (Delhi), ingresa asia-south2. Asegúrate de que SERVING_LOCATION sea la región en buen estado. Elegir una región incorrecta para la conmutación por error genera una base de datos disponibilidad, que no se puede recuperar antes de que la región vuelva a estar en línea.

Marcas opcionales:

  • --etag=ETAG: ETAG se puede usar para proteger la reproducción.

Para verificar el estado de la operación de cambio de quórum, ejecuta el siguiente comando: gcloud spanner databases describe . El campo quorumInfo proporciona información sobre la operación.

gcloud spanner databases describe DATABASE_ID
    --instance=INSTANCE_ID

Cambia el quórum de birregión de una sola región a birregión (conmutación por error)

Realizar una conmutación por recuperación manual después de que la región interrumpida esté en buen estado o después de que la red partición esté resuelto:

Consola de Google Cloud

  1. Ve a la página Instancias de Spanner en la consola de Google Cloud.

    Ir a la página Instancias

  2. Haz clic en el nombre de la instancia que tiene una configuración de región doble.

  3. Haz clic en Estadísticas del sistema en el menú de navegación.

  4. Busca la métrica Disponibilidad del quórum birregional.

  5. En la métrica Disponibilidad de quórum birregional, haz clic en Cambiar quórum de la región.

    Se abrirá Cloud Shell.

  6. Para cambiar el quórum de dos regiones a una sola, ingresa el siguiente comando que se encuentra en la pestaña de la CLI de gcloud: gcloud spanner databases change-quorum. Para obtener instrucciones detalladas, consulta la pestaña gcloud.

gcloud CLI

Usa el comando gcloud spanner databases change-quorum para cambiar el quórum de región doble de una sola región a dos regiones.

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

Reemplaza lo siguiente:

  • DATABASE_ID: Es el identificador permanente de la base de datos.

  • INSTANCE_ID: Identificador permanente de la instancia.

Marcas opcionales:

  • --etag=ETAG: ETAG se puede usar para el control de simultaneidad optimista.

Para verificar el estado de la operación de cambio de quórum, ejecuta el siguiente comando: gcloud spanner databases describe . El campo quorumInfo proporciona información sobre la operación.

gcloud spanner databases describe DATABASE_ID
    --instance=INSTANCE_ID

¿Qué sigue?