Resiliencia y alta disponibilidad
La infraestructura de CrowdHandler está diseñada para garantizar una disponibilidad y un tiempo de funcionamiento continuos. Utilizamos los siguientes mecanismos de resiliencia y tolerancia a fallos:
de disponibilidad de AWS#
Utilizamos varias zonas de disponibilidad en cada región de AWS para garantizar la redundancia a nivel de centro de datos. Esto nos protege frente a fallos que podrían afectar a toda una zona.
de bases de datos en múltiples zonas de disponibilidad#
Nuestras bases de datos MySQL RDS se implementan en modo multi-AZ en tres zonas de disponibilidad. Esto permite la replicación sincrónica de los datos con conmutación automática por error en caso de fallos en la instancia de la base de datos o de interrupciones en las zonas de disponibilidad.
entre regiones de AWS#
Replicamos toda la infraestructura y los datos de nuestra región principal US-East-1 a US-East-2. Esto incluye:
- Instantáneas de bases de datos: realizamos instantáneas cada hora de las bases de datos de producción, que luego se replican en US-East-2. Podemos restaurar el sistema a partir de una instantánea en caso de que se produzca un desastre a nivel regional.
- Replicación de buckets de S3: todos los datos de los buckets de producción de S3 se replican de forma asíncrona a los buckets de US-East-2.
- Copias de seguridad de AMI: se realizan copias de seguridad de las imágenes de los servidores EC2 (cuando se utilizan) en la región US-East-2, por si necesitamos poner en marcha servidores de sustitución.
- Comprobaciones de estado de Route53: utilizamos las comprobaciones de estado de Route53 para supervisar los puntos finales tanto en US-East-1 como en US-East-2. En caso necesario, el tráfico se puede redirigir rápidamente a la región secundaria.
de recuperación ante desastres#
Realizamos pruebas anuales de recuperación ante desastres para garantizar que podamos redirigir todo el tráfico y realizar la conmutación a US-East-2 en caso de que se produzca una interrupción significativa del servicio en US-East-1. Estas pruebas incluyen:
- Simulación de una interrupción del servicio en US-East-1 que requeriría una conmutación por error
- Promoción de las bases de datos en espera de US-East-2 para que pasen a ser primarias
- Actualización del DNS o de los orígenes de las aplicaciones para redirigir todo el tráfico a US-East-2
- Realización de pruebas para validar la disponibilidad de la aplicación y el acceso a la base de datos
- Volver a US-East-1 una vez finalizadas las pruebas
Las medidas de resiliencia de CrowdHandler ofrecen garantías frente a fallos de infraestructura, interrupciones de software y cortes regionales. Los sistemas tolerantes a fallos, la replicación de datos entre regiones y las pruebas periódicas de recuperación ante desastres nos dan confianza en nuestra capacidad para restablecer los servicios con un tiempo de inactividad mínimo, incluso tras sucesos catastróficos. Nuestra arquitectura de disponibilidad está diseñada para garantizar un tiempo de actividad continuo y una experiencia fluida para el cliente.