Restablecer en varias regiones

En esta página, se describe cómo restablecer Cassandra en varias regiones.

En una implementación multirregional, Apigee Hybrid se implementa en varias ubicaciones geográficas en diferentes centros de datos. Es importante tener en cuenta que, si tienes varias organizaciones de Apigee en tu implementación, el proceso de restablecimiento restablece los datos de todas las organizaciones. En una configuración de varias organizaciones, no se admite restablecer solo una organización específica.

Restablece cassandra

En una implementación de varias regiones, hay dos formas posibles de recuperar una región con errores. En este tema, se describen los siguientes enfoques:

  • Recuperar regiones con errores: Describe los pasos para recuperar regiones con errores en función de una región en buen estado.
  • Restablecer regiones con errores: Describe los pasos para restablecer regiones con errores desde una copia de seguridad. Este enfoque solo es necesario si todas las regiones híbridas se ven afectadas.

Recupera las regiones con errores

Para recuperar regiones con errores a partir de una región en buen estado, sigue estos pasos:

  1. Redirecciona el tráfico de la API de las regiones afectadas a la región que funciona. Planifica la capacidad según corresponda para admitir el tráfico desviado de las regiones con errores.
  2. Quita la región afectada. Para cada región afectada, sigue los pasos descritos en Retira una región híbrida. Espera a que se complete el retiro de servicio antes de continuar con el siguiente paso.
  3. Restablece la región afectada. Para restablecer, crea una región nueva, como se describe en Implementación multirregional en GKE, GKE On-Prem y AKS.

Restablece a partir de una copia de seguridad

La copia de seguridad de Cassandra puede residir en Cloud Storage o en un servidor remoto según la configuración. Para restablecer Cassandra desde una copia de seguridad, realiza los siguientes pasos:

  1. Borra la implementación de Apigee Hybrid de todas las regiones:
    apigeectl delete -f overrides.yaml
  2. Restablece la región deseada a partir de una copia de seguridad. Para obtener más información, consulta Restablece una región a partir de una copia de seguridad.

  3. Quita las referencias de las regiones borradas y agrega las referencias de las regiones restablecidas en los metadatos KeySpaces.
  4. Obtén el nombre de la región mediante la opción nodetool status.
    kubectl exec -n apigee -it apigee-cassandra-default-0 -- bash
          nodetool  -u APIGEE_JMX_USER -pw APIGEE_JMX_PASSWORD status |grep -i Datacenter

    Donde:

    • APIGEE_JMX_USER es el nombre de usuario para el usuario de operaciones de Cassandra JMX. Se usa para autenticar y comunicarse con la interfaz de Cassandra JMX. Consulta cassandra:auth:jmx:username.
    • APIGEE_JMX_PASSWORD es la contraseña para el usuario de operaciones de Cassandra JMX. Consulta cassandra:auth:jmx:password.
  5. Actualiza la replicación KeySpaces.
    1. Crea un contenedor de cliente y conéctate al clúster de Cassandra a través de la interfaz de CQL.
    2. Obtén la lista de espacios de claves de usuario de la interfaz de CQL:
      cqlsh CASSANDRA_SEED_HOST -u APIGEE_DDL_USER -p APIGEE_DDL_PASSWORD
            --ssl -e "select keyspace_name from system_schema.keyspaces;"|grep -v system

      Donde:

      • CASSANDRA_SEED_HOST es el host de origen multirregión de Cassandra. Para la mayoría de las instalaciones multirregionales, usa la dirección IP de un host en tu primera región. Consulta Configura Apigee Hybrid para multirregión y cassandra:externalSeedHost.
      • APIGEE_DDL_USER y APIGEE_DDL_PASSWORD son el nombre de usuario y la contraseña del administrador para el usuario del lenguaje de definición de datos (DDL) de Cassandra. Los valores predeterminados son “ddl_user” y “iloveapis123”.

        Consulta cassandra.auth.ddl.password en la referencia de las propiedades de configuración y las Opciones de la línea de comandos en la documentación de cqlsh de Apache Cassandra.

    3. En cada espacio de clave, ejecuta el siguiente comando desde la interfaz de CQL para actualizar la configuración de la replicación:
      ALTER KEYSPACE KEYSPACE_NAME WITH replication = {'class': 'NetworkTopologyStrategy', 'REGION_NAME':3};

      Donde:

      • KEYSPACE_NAME es el nombre del espacio de claves que aparece en el resultado del paso anterior.
      • REGION_NAME es el nombre de la región que se obtuvo en el paso 4.