Descripción general del restablecimiento de Cassandra

En esta página, se proporciona una descripción general del restablecimiento de Cassandra en Apigee Hybrid.

¿Por qué usar la opción de restablecimiento?

Puedes usar copias de seguridad para restablecer la infraestructura de Apigee desde cero en caso de fallas catastróficas, como la pérdida de datos irrecuperable en la instancia híbrida de Apigee desde un desastre. El restablecimiento toma tus datos de la ubicación de la copia de seguridad y los restablece en un clúster de Cassandra nuevo con la misma cantidad de nodos. No se toman datos del clúster anterior de Cassandra. El objetivo del proceso de restablecimiento es regresar una instalación híbrida de Apigee a un estado operativo anterior mediante los datos de copia de seguridad de una instantánea.

No se recomienda usar copias de seguridad para los siguientes casos:

  • Fallas en los nodos de Cassandra
  • Eliminación accidental de datos como apps, developers y api_credentials
  • Una o más regiones fallan en una implementación multirregional.

Las implementaciones de Apigee Cassandra y la arquitectura operativa se encargan de la redundancia y la tolerancia a errores para una sola región. En la mayoría de los casos, la implementación de producción multirregional para una instalación híbrida implica que una falla de la región se puede recuperar a partir de otra región activa mediante los procedimientos de retiro y expansión de región en lugar de restablecer desde una copia de seguridad.

Antes de comenzar a implementar un restablecimiento desde una copia de seguridad de Cassandra, ten en cuenta lo siguiente:

  • Tiempo de inactividad: se producirá tiempo de inactividad durante el restablecimiento.
  • Pérdida de datos: se producirá una pérdida de datos entre la última copia de seguridad válida y el momento en que se completa el restablecimiento.
  • Tiempo de restablecimiento: el tiempo de restablecimiento depende del tamaño de los datos y el clúster.
  • Datos de selección: no puedes seleccionar solo datos específicos para restablecer. El restablecimiento restablece toda la copia de seguridad que seleccionaste.

Restablecimientos multirregionales

Si instalaste Apigee Hybrid en varias regiones, debes verificar el archivo de anulación para la región que estás restableciendo a fin de asegurarte de que cassandra:hostNetwork esté configurado como false antes de realizar el restablecimiento. Para obtener más información, consulta Restablece en varias regiones.

Requisitos previos

Comprueba que todos los requisitos previos sean correctos. Investiga las fallas de requisitos previos antes de continuar con el restablecimiento.

  1. Verifica que todos los pods de Cassandra estén en funcionamiento con el siguiente comando.
    kubectl get pods -n apigee -l app=apigee-cassandra

    El resultado debería ser similar al siguiente:

    NAME                         READY   STATUS    RESTARTS   AGE
    apigee-cassandra-default-0   1/1     Running   0          14m
    apigee-cassandra-default-1   1/1     Running   0          13m
    apigee-cassandra-default-2   1/1     Running   0          11m
    exampleuser@example hybrid-files %
          
  2. Verifica que el conjunto con estado de Cassandra muestre que todos los pods se están ejecutando con el siguiente comando.
    kubectl get sts -n apigee -l app=apigee-cassandra

    El resultado debería ser similar al siguiente:

    NAME                       READY   AGE
    apigee-cassandra-default   3/3     15m
        
  3. Verifica que el recurso de ApigeeDatastore esté en estado en ejecución con el siguiente comando.
    kubectl get apigeeds -n apigee

    El resultado debería ser similar al siguiente:

    NAME      STATE     AGE
    default   running   16m
        
  4. Verifica que todos los PVC de Cassandra estén en el estado Vinculado con el siguiente comando.
    kubectl get pvc -n apigee -l app=apigee-cassandra

    El resultado debería ser similar al siguiente:

    NAME                                        STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS   AGE
    cassandra-data-apigee-cassandra-default-0   Bound    pvc-a14184e7-8745-4b30-8069-9d50642efe04   10Gi       RWO            standard-rwo   17m
    cassandra-data-apigee-cassandra-default-1   Bound    pvc-ed129dcb-4706-4bad-a692-ac7c78bad64d   10Gi       RWO            standard-rwo   15m
    cassandra-data-apigee-cassandra-default-2   Bound    pvc-faed0ad1-9019-4def-adcd-05e7e8bb8279   10Gi       RWO            standard-rwo   13m
        
  5. Verifica que todos los PV de Cassandra estén en estado delimitado con el siguiente comando.
    kubectl get pv -n apigee

    El resultado debería ser similar al siguiente:

    NAME                                       CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS   CLAIM                                              STORAGECLASS   REASON   AGE
    pvc-a14184e7-8745-4b30-8069-9d50642efe04   10Gi       RWO            Delete           Bound    apigee/cassandra-data-apigee-cassandra-default-0   standard-rwo            17m
    pvc-ed129dcb-4706-4bad-a692-ac7c78bad64d   10Gi       RWO            Delete           Bound    apigee/cassandra-data-apigee-cassandra-default-1   standard-rwo            16m
    pvc-faed0ad1-9019-4def-adcd-05e7e8bb8279   10Gi       RWO            Delete           Bound    apigee/cassandra-data-apigee-cassandra-default-2   standard-rwo            14m
        
  6. Verifica que el recurso del controlador de Apigee esté en ejecución con el siguiente comando.
    kubectl get pods -n apigee-system -l app=apigee-controller

    El resultado debería ser similar al siguiente:

    NAME                                         READY   STATUS    RESTARTS   AGE
    apigee-controller-manager-856d9bb7cb-cfvd7   2/2     Running   0          20m
        

¿Cómo realizar el restablecimiento?

Los pasos de restablecimiento de Cassandra difieren un poco en función de si tu sistema de Apigee Hybrid se implementa en una sola región o varias regiones. Para ver los pasos detallados de restablecimiento, consulta la siguiente documentación: