View a markdown version of this page

El pilar ElastiCache Well-Architected de fiabilidad de Amazon Lens - Amazon ElastiCache

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

El pilar ElastiCache Well-Architected de fiabilidad de Amazon Lens

El pilar de la fiabilidad se centra en las cargas de trabajo que realizan las funciones previstas y en cómo recuperarse rápidamente de la incapacidad de satisfacer las demandas. Entre los temas clave, se incluyen el diseño de sistemas distribuidos, la planificación de la recuperación y cómo adaptarse a los cambios de requisitos.

REL 1: ¿Cómo se respaldan las implementaciones de arquitecturas de alta disponibilidad (HA)?

Question-level introducción: comprender la arquitectura de alta disponibilidad de Amazon ElastiCache le permitirá operar en un estado resiliente durante los eventos de disponibilidad.

Question-level beneficio: Diseñar la arquitectura de sus ElastiCache clústeres para que sean resistentes a los fallos garantiza una mayor disponibilidad para sus ElastiCache despliegues.

  • [Obligatorio] Determine el nivel de confiabilidad que necesita para su ElastiCache clúster. Las diferentes cargas de trabajo tienen diferentes estándares de resiliencia, desde cargas de trabajo totalmente efímeras hasta cargas de trabajo cruciales para la misión. Defina las necesidades de cada tipo de entorno en el que opere, como desarrollo, pruebas y producción.

    Motor de almacenamiento en caché: ElastiCache para Memcached o ElastiCache para Valkey y Redis OSS

    1. ElastiCache for Memcached no proporciona ningún mecanismo de replicación y se utiliza principalmente para cargas de trabajo efímeras.

    2. ElastiCache para Valkey y Redis, OSS ofrece las funciones de alta disponibilidad que se describen a continuación

  • [Lo mejor] Para las cargas de trabajo que requieren alta disponibilidad, ElastiCache utilícelas en modo clúster con un mínimo de dos réplicas por partición, incluso para cargas de trabajo pequeñas que requieren un solo fragmento.

    1. Si el modo de clúster está activado, multi-AZ se habilita automáticamente.

      Multi-AZ minimiza el tiempo de inactividad realizando conmutaciones por error automáticas desde el nodo principal a las réplicas, en caso de cualquier mantenimiento planificado o imprevisto, y mitiga los fallos de la zona de disponibilidad.

    2. En cuanto a las cargas de trabajo particionadas, un mínimo de tres particiones proporciona una recuperación más rápida durante los eventos de conmutación por error, ya que el protocolo de clúster de Valkey o Redis OSS requiere que la mayoría de los nodos principales estén disponibles para alcanzar el quórum.

    3. Configure dos o más réplicas para ofrecer disponibilidad.

      Tener dos réplicas proporciona escalabilidad de lectura mejorada así como disponibilidad de lectura en situaciones en las que una réplica está en mantenimiento.

    4. Utilice tipos de Graviton2-based nodos (nodos predeterminados en la mayoría de las regiones).

      ElastiCache ha añadido un rendimiento optimizado en estos nodos. Como resultado, obtiene un mejor rendimiento de replicación y sincronización, lo que se traduce en una mejora general de la disponibilidad.

    5. Supervise y ajuste el tamaño para hacer frente a los picos de tráfico previstos: con una carga pesada, el motor puede dejar de responder, lo que afecta a la disponibilidad. BytesUsedForCache y DatabaseMemoryUsagePercentage son buenos indicadores del uso de la memoria, mientras que ReplicationLag es un indicador del estado de la replicación en función de la velocidad de escritura. Puede usar estas métricas para activar el escalado de clústeres.

    6. Para garantizar la resiliencia del cliente realice pruebas con la API de conmutación por error antes de un evento de conmutación por error en producción.

    [Recursos]:

REL 2: ¿Cómo cumple sus objetivos de puntos de recuperación (RPO)? ElastiCache

Question-level introducción: Conozca el RPO de las cargas de trabajo para tomar decisiones informadas sobre las estrategias ElastiCache de respaldo y recuperación.

Question-level beneficio: contar con una estrategia de RPO implementada puede mejorar la continuidad del negocio en caso de que se produzcan escenarios de recuperación ante desastres. Diseñar sus políticas de respaldo y restauración puede ayudarlo a cumplir sus objetivos de punto de recuperación (RPO) para sus datos. ElastiCache ElastiCache ofrece capacidades de instantáneas que se almacenan en Amazon S3, junto con una política de retención configurable. Estas instantáneas se toman durante un período de copia de seguridad definido y el servicio las gestiona automáticamente. Si la carga de trabajo requiere un grado de detalle de respaldo adicional, tiene la opción de crear hasta 20 copias de seguridad manuales por día. Las copias de seguridad creadas manualmente no tienen una política de retención de servicios y se pueden conservar indefinidamente.

  • [Obligatorio] Comprenda y documente el RPO de sus ElastiCache implementaciones.

    • Tenga en cuenta que Memcached no ofrece ningún proceso de copia de seguridad.

    • Revise las capacidades de las funciones de ElastiCache Backup and Restore.

  • [Lo mejor]Disponga de un proceso que se haya comunicado bien para hacer copias de seguridad de su clúster.

    • Inicie copias de seguridad manuales según sea necesario.

    • Revise las políticas de retención de las copias de seguridad automáticas.

    • Tenga en cuenta que las copias de seguridad manuales se conservarán indefinidamente.

    • Programe las copias de seguridad automáticas durante los períodos de bajo uso.

    • Realice operaciones de respaldo contra réplicas de lectura para asegurarse de minimizar el impacto en el rendimiento del clúster.

  • [Bueno] Aproveche la función de copia de seguridad programada ElastiCache para realizar copias de seguridad periódicas de sus datos durante un período definido.

    • Haga pruebas periódicas de las restauraciones a partir de las copias de seguridad.

  • [Recursos]:

REL 3: ¿Cómo se cumplen los requisitos de recuperación de desastres (DR)?

Question-level introducción: La recuperación ante desastres es un aspecto importante de cualquier planificación de la carga de trabajo. ElastiCache ofrece varias opciones para implementar la recuperación ante desastres en función de los requisitos de resiliencia de la carga de trabajo. Con Amazon ElastiCache Global Datastore, puede escribir en su clúster de una región y tener los datos disponibles para su lectura desde otros dos clústeres de réplicas entre regiones, lo que permite lecturas de baja latencia y recuperación ante desastres en todas las regiones.

Question-level beneficio: comprender y planificar una variedad de escenarios de desastre puede garantizar la continuidad del negocio. Las estrategias de DR deben equilibrarse en relación al costo, el impacto en el rendimiento y la posible pérdida de datos.

  • [Obligatorio] Desarrolle y documente estrategias de recuperación ante desastres para todos sus ElastiCache componentes en función de los requisitos de carga de trabajo. ElastiCache tiene la particularidad de que algunos casos de uso son totalmente efímeros y no requieren ninguna estrategia de DR, mientras que otros se encuentran en el extremo opuesto del espectro y requieren una estrategia de DR extremadamente sólida. Todas las opciones deben soparse teniendo en cuenta la optimización de costos: una mayor resiliencia requiere más infraestructura.

    Conozca las opciones de DR disponibles a nivel regional y multirregional.

    • Multi-AZ Se recomienda realizar despliegues para evitar que el AZ falle. Asegúrese de realizar la implementación con Multi-AZ las arquitecturas Cluster-Mode habilitadas, con un mínimo de 3 zonas de disponibilidad disponibles.

    • Se recomienda utilizar Global Datastore para protegerse contra los errores regionales.

  • [Lo mejor] Habilite Global Datastore para cargas de trabajo que requieran resiliencia a nivel de región.

    • Tenga un plan para realizar una conmutación por error a la región secundaria en caso de degradación de la primaria.

    • Pruebe el proceso de conmutación por error multirregional antes de llevar a cabo una conmutación por error en producción.

    • Supervise la métrica ReplicationLag para conocer el posible impacto de la pérdida de datos durante los eventos de conmutación por error.

  • [Recursos]:

REL 4: ¿Cómo se planifican eficazmente las conmutaciones por error?

Question-level introducción: La mejor práctica es habilitar Multi-AZ con conmutaciones por error automáticas. ElastiCache En algunos casos, en el caso ElastiCache de Valkey y Redis, el OSS sustituye a los nodos principales como parte de las operaciones de servicio. Algunos ejemplos son eventos de mantenimiento planificado y el improbable caso de que haya un problema en el nodo o en la zona de disponibilidad. El éxito de las conmutaciones por error depende tanto de la configuración de la biblioteca cliente como de ElastiCache la configuración de la biblioteca.

Question-level beneficio: seguir las prácticas recomendadas para las ElastiCache conmutaciones por error junto con su biblioteca ElastiCache cliente específica le ayuda a minimizar el posible tiempo de inactividad durante las conmutaciones por error.

  • [Obligatorio] Si el modo de clúster está deshabilitado, utilice los tiempos de espera para que sus clientes detecten si es necesario desconectarse del nodo principal anterior y volver a conectarse al nuevo nodo principal, mediante la dirección IP del punto de conexión principal actualizada. Si el modo de clúster está habilitado, la biblioteca cliente es responsable de detectar los cambios en la topología del clúster subyacente. En la mayoría de los casos, esto se consigue mediante los ajustes de configuración de la biblioteca ElastiCache cliente, que también permiten configurar la frecuencia y el método de actualización. Cada biblioteca cliente ofrece su propia configuración. Encontrará más información en la documentación correspondiente.

    [Recursos]:

  • [Obligatorio] Las conmutaciones por error correctas dependen de un entorno de replicación en buen estado entre los nodos principal y de réplica. Revise y comprenda la naturaleza asíncrona de la replicación de OSS de Valkey y Redis, así como CloudWatch las métricas disponibles para informar sobre el retraso en la replicación entre los nodos principal y de réplica. Para los casos de uso que requieran una mayor seguridad de los datos, utilice el comando WAIT para obligar a las réplicas a confirmar las escrituras antes de responder a los clientes conectados.

    [Recursos]:

  • [Lo mejor] Valide periódicamente la capacidad de respuesta de su aplicación durante la conmutación por error mediante la API ElastiCache Test Failover.

    [Recursos]:

REL 5: ¿Sus ElastiCache componentes están diseñados para escalarse?

Question-level introducción: Al comprender las capacidades de escalado y las topologías de implementación disponibles, sus ElastiCache componentes se pueden ajustar con el tiempo para cumplir con los requisitos cambiantes de la carga de trabajo. ElastiCacheofrece un escalado en cuatro direcciones: in/out (horizontal) y up/down (vertical).

Question-level beneficio: seguir las mejores prácticas para las ElastiCache implementaciones proporciona la mayor flexibilidad de escalado, además de cumplir con el principio bien diseñado de escalar horizontalmente para minimizar el impacto de los fallos.

  • [Obligatorio] Comprenda la diferencia entre las topologías Cluster-mode habilitadas y Cluster-mode deshabilitadas. En casi todos los casos, se recomienda realizar la implementación con la Cluster-mode opción habilitada, ya que permite una mayor escalabilidad a lo largo del tiempo. Cluster-mode Los componentes deshabilitados tienen una capacidad limitada para escalar horizontalmente al agregar réplicas de lectura.

  • [Obligatorio] Comprenda cuándo y cómo escalar.

    • Para más READIOPS: añada réplicas

    • Para más WRITEOPS: añada particiones (escale horizontamente)

    • Para más E/S de red: utilice instancias optimizadas para la red y escale verticalmente

  • [Lo mejor] Implemente sus ElastiCache componentes con la Cluster-mode opción habilitada, opte por más nodos más pequeños en lugar de tener menos nodos más grandes. Esto limita de manera efectiva el radio de acción de un error de nodo.

  • [Lo mejor] Incluya réplicas en los clústeres para mejorar la capacidad de respuesta durante los eventos de escalado.

  • [Bueno] Si el modo de clúster está desactivado, aproveche las réplicas de lectura para aumentar la capacidad de lectura general. ElastiCache tiene deshabilitada la compatibilidad con hasta 5 réplicas de lectura en el modo de clúster, así como el escalado vertical.

  • [Recursos]: