ElastiCache componentes y características - 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.

ElastiCache componentes y características

A continuación, encontrarás un resumen de los principales componentes de una ElastiCache implementación de Amazon.

ElastiCache nodos

Un nodo es el componente básico más pequeño de una ElastiCache implementación. Un nodo puede existir de forma aislada o con alguna relación con otros nodos.

Un nodo es una parcición de tamaño fijo de RAM segura conectada a la red. Cada nodo ejecuta una instancia del motor y la versión elegidos al crear el clúster. Si es necesario, puede escalar los nodos de un clúster para ampliar o reducir a un tipo de instancia diferente. Para obtener más información, consulte Escalado ElastiCache.

Todos los nodos contenidos en un clúster son del mismo tipo de instancia y ejecutan el mismo motor de caché. Cada nodo de caché tiene su propio puerto y nombre de servicio de nombres de dominio (DNS). Se admiten varios tipos de nodos de caché, cada uno de los cuales tiene una cantidad diferente de memoria asociada. Para ver una lista de los tipos de instancia de nodos admitidos, consulte Tipos de nodos compatibles.

Puede comprar nodos de forma pay-as-you-go individual, pagando solo por el uso de un nodo. También puede adquirir nodos reservados a una tarifa por hora más reducida. Si la tasa de uso es alta, adquirir nodos reservados podría ayudar a que ahorre dinero. Supongamos que el clúster está casi siempre en uso, por lo que de vez en cuando agregue nodos para gestionar los picos de uso. En este caso, puede adquirir una serie de nodos reservados para ejecutar la mayor parte del tiempo. A continuación, puede comprar pay-as-you-go nodos para las veces que necesite añadir nodos de vez en cuando. Para obtener más información sobre los nodos reservados, consulte Nodos reservados.

Para obtener más información sobre los nodos, consulte Administrar nodos en ElastiCache.

ElastiCache fragmentos

Una partición de Valkey o Redis OSS (denominada grupo de nodos en la API y en la CLI) es un conjunto de uno a seis nodos relacionados. Un clúster de Valkey o Redis OSS con el modo de clúster habilitado siempre tiene al menos una partición.

Las particiones son un método de división de bases de datos que separa las bases de datos grandes en partes más pequeñas, rápidas y fáciles de administrar denominadas particiones de datos. Esto puede aumentar la eficiencia de la base de datos al distribuir las operaciones en varias secciones independientes. El uso de particiones puede tener muchas ventajas, como la mejora del rendimiento, la escalabilidad y la rentabilidad.

Los clústeres de Valkey y Redis OSS con el modo de clúster habilitado pueden tener hasta 500 particiones, con sus datos particionados en las particiones. El límite de nodos o particiones se puede aumentar a un máximo de 500 por clúster si la versión del motor de Valkey o Redis OSS es 5.0.6 o posteriores. Por ejemplo, puede elegir configurar un clúster de 500 nodos que oscila entre 83 particiones (uno primario y 5 réplicas por partición) y 500 particiones (único primario y sin réplicas). Asegúrese de que hay suficientes direcciones IP disponibles para acomodar el aumento. Algunos problemas comunes incluyen que las subredes del grupo de subredes tienen un rango CIDR demasiado pequeño o que otros clústeres comparten y utilizan considerablemente las subredes. Para obtener más información, consulte Creación de un grupo de subredes. Para las versiones inferiores a 5.0.6, el límite es de 250 por clúster.

Para solicitar un aumento del límite, consulte AWS Service Limits y elija el tipo de límite Nodes per cluster per instance type (Nodos por clúster por tipo de instancias).

Una partición de varios nodos implementa la reproducción al tener un nodo primario de lectura/escritura y 1 a 5 nodos de réplica. Para obtener más información, consulte Alta disponibilidad a través de grupos de reproducción.

Para obtener más información acerca de las particiones, consulte Trabajar con fragmentos en ElastiCache.

ElastiCache cúmulos

Un clúster es una agrupación lógica de uno o más nodos. Los datos se particionan entre los nodos de un clúster de Memcached y entre las particiones de un clúster de Valkey o Redis OSS que tenga habilitado el modo de clúster.

Muchas ElastiCache operaciones están dirigidas a los clústeres:

  • creación de un clúster

  • Modificación de un clúster

  • Uso de instantáneas de un clúster (todas las versiones de Redis)

  • Eliminación de un clúster

  • Visualización de elementos de un clúster

  • Adición o eliminación de etiquetas de asignación de costos en un clúster

Para obtener información más detallada, consulte los siguientes temas relacionados:

Configuraciones típicas de clúster

A continuación se muestran configuraciones típicas de clúster.

Clústeres de Valkey o Redis OSS

Los clústeres de Valkey o Redis OSS con el modo de clúster deshabilitado siempre contienen solo una partición (en la API y en la CLI, solo un grupo de nodos). Una partición de Valkey o Redis OSS contiene de uno a seis nodos. Si hay más de un nodo en una partición, esta admite la reproducción. En este caso, un nodo es el nodo read/write principal y los demás son nodos de réplica de solo lectura.

Para mejorar la tolerancia a errores, le recomendamos tener al menos dos nodos en un clúster de Valkey o Redis OSS y habilitar multi-AZ. Para obtener más información, consulte Mitigación de errores.

A medida que cambie la demanda en su clúster de Valkey o Redis OSS, puede reducir o escalar verticalmente. Para ello, mueva el clúster a un tipo de instancia de nodo diferente. Si la aplicación tiene una gran intensidad de lectura, recomendamos agregar al clúster réplicas de solo lectura. Al hacerlo, puede distribuir las lecturas entre un número más apropiado de nodos.

También puede utilizar la organización de datos en niveles. Los datos a los que se accede con más frecuencia se almacenan en la memoria y los datos a los que se accede con menos frecuencia se almacenan en el disco. La ventaja de utilizar la organización de datos en niveles es que disminuye las necesidades de memoria. Para obtener más información, consulte Organización de datos por niveles en ElastiCache.

ElastiCache permite cambiar el tipo de nodo de un clúster OSS de Valkey o Redis a un tipo de nodo más grande de forma dinámica. Para obtener información acerca del escalado mediante ampliación o reducción, consulte Escalado de clústeres de un solo nodo para Valkey o Redis OSS (modo de clúster deshabilitado) o Escalado de nodos de réplica para Valkey o Redis OSS (modo de clúster deshabilitado).

Configuraciones típicas de clúster para Memcached

Memcached admite hasta 300 nodos por cliente para cada AWS región, y cada clúster tiene de 1 a 60 nodos. Los datos se particionan entre los nodos del clúster de Memcached.

Cuando ejecuta el motor de Memcached, los clústeres pueden contener de 1 a 60 nodos. La base de datos se particiona entre los nodos. Su aplicación lee y escribe en cada punto de enlace del nodo. Para obtener más información, consulte Detección automática.

Para mejorar la tolerancia a los errores, ubique los nodos de Memcached en varias zonas de disponibilidad (AZs) dentro de la región del clúster. AWS De ese modo, un error de una zona de disponibilidad tendrá un impacto mínimo en todo su clúster y su aplicación. Para obtener más información, consulte Mitigación de errores.

A medida que cambie la demanda de su clúster de Memcached, puede escalar de forma ascendente o descendente al agregar o quitar nodos, con lo que se vuelven a particionar los datos entre el nuevo número de nodos. Al particionar los datos, recomendamos hacer un uso consistente de la función hash. Para obtener más información acerca del uso consistente de la función hash, consulte Configuración del ElastiCache cliente para un equilibrio de carga eficiente (Memcached).

ElastiCache replicación

La replicación de Valkey y Redis OSS se implementa al agrupar de dos a seis nodos en una partición (denominada grupo de nodos en la API y la CLI). Uno de estos nodos es el nodo principal de lectura/escritura. Todos los demás nodos son nodos de réplicas de solo lectura. Las réplicas solo están disponibles ElastiCache para Valkey y Redis OSS, y no para ElastiCache Memcached.

Cada nodo de réplica de lectura mantiene una copia de los datos del nodo principal. Los nodos de réplica usan mecanismos de reproducción asíncronos para mantener la sincronización con el nodo principal. Las aplicaciones pueden leer desde cualquiera de los nodos del clúster, pero solo pueden escribir en los nodos principales. Las réplicas de lectura mejoran la escalabilidad al distribuir las lecturas entre varios puntos de enlace. Las réplicas de lectura también mejoran la tolerancia a errores al mantener varias copias de los datos. Ubicar réplicas de lectura en múltiples zonas de disponibilidad mejora aún más la tolerancia a errores. Para obtener más información sobre la tolerancia a errores, consulte Mitigación de errores.

Los clústeres de Valkey o Redis OSS admiten una sola partición (denominada grupo de nodos en la API y la CLI).

La reproducción desde la perspectiva de la API y la CLI utiliza una terminología diferente para mantener la compatibilidad con las versiones anteriores, pero los resultados son los mismos. En la siguiente tabla se muestran los términos de la API y la CLI para la implementación de la reproducción.

Comparación de la replicación: Valkey o Redis OSS (modo de clúster deshabilitado) y Valkey o Redis OSS (modo de clúster habilitado): el clúster de Valkey o Redis OSS con el modo de clúster habilitado comparado con el clúster de Valkey o Redis OSS con el modo de clúster deshabilitado

En la siguiente tabla, puede encontrar una comparación de las características de los grupos de replicación de Valkey o Redis OSS (modo de clúster deshabilitado) y Valkey o Redis OSS (modo de clúster habilitado).

Clúster de Valkey o Redis OSS con el modo de clúster deshabilitado Clúster de Valkey o Redis OSS con el modo de clúster habilitado
Particiones (grupos de nodos) 1 1 a 500  
Réplicas para cada partición (grupo de nodos) 0 a 5 0 a 5
Particiones de datos No
Agregar o eliminar réplicas
Agregar o eliminar grupos de nodos No
Compatible con el escalado vertical
Compatible con las actualizaciones del motor
Promociona la réplica a principal Automático
Multi-AZ Opcional Obligatorio
Copia de seguridad y restauración
Notas:
Si cualquier primario no tiene réplicas y falla, se perderán todos los datos de ese primario.
Se puede utilizar la copia de seguridad y la restauración para migrar a Valkey o Redis OSS (modo de clúster habilitado).
Se puede utilizar la copia de seguridad y la restauración para cambiar el tamaño del clúster de Valkey o Redis OSS (modo de clúster habilitado).

Todas las particiones (grupos de nodos en la API y en la CLI) y todos los nodos deben residir en la misma región de AWS . Sin embargo, puede aprovisionar los nodos individuales en varias zonas de disponibilidad dentro de esa región. AWS

Las réplicas de lectura evitan las posibles pérdidas de datos, ya que los datos se replican a través de dos o varios nodos: el principal y una o varias réplicas de lectura. Para una mayor fiabilidad y una recuperación más rápida, recomendamos crear una o varias réplicas de lectura en distintas zonas de disponibilidad.

También puede aprovechar los almacenes de datos Globales. Al utilizar la función OSS Global Datastore for Redis, puede trabajar con una replicación totalmente gestionada, rápida, fiable y segura en todas las regiones. AWS Con esta función, puede crear clústeres de réplicas de lectura entre regiones para permitir las lecturas de baja latencia y ElastiCache la recuperación ante desastres en todas las regiones. AWS Para obtener más información, consulte Replicación entre AWS regiones mediante almacenes de datos globales.

Replicación: límites y exclusiones
  • Multi-AZ no se admite en los tipos de nodo T1.

ElastiCache puntos finales

Un punto final es la dirección única que utiliza su aplicación para conectarse a un ElastiCache nodo o clúster.

Puntos de conexión de un solo nodo para Valkey o Redis OSS con el modo de clúster deshabilitado

El punto de conexión de un clúster de Valkey o Redis OSS de un solo nodo se utiliza para conectarse al clúster tanto para lecturas como para escrituras.

Puntos de conexión de varios nodos para Valkey o Redis OSS con el modo de clúster deshabilitado

Un clúster de varios nodos de Valkey o Redis OSS con el modo de clúster deshabilitado tiene dos tipos de puntos de conexión. El punto de conexión principal siempre se conecta al nodo principal en el clúster, incluso si el nodo específico de la función principal cambia. Utilice el punto de conexión principal para todas las escrituras en el clúster.

Use el punto de conexión de lector para dividir de manera uniforme las conexiones entrantes al punto de enlace entre todas las réplicas de lectura. Utilice los puntos finales de los nodos individuales para las operaciones de lectura (en API/CLI ellas se denominan puntos finales de lectura).

Puntos de conexión de Valkey o Redis OSS (modo de clúster habilitado)

Un clúster de Valkey o Redis OSS con el modo de clúster habilitado tiene un único punto de conexión de configuración. Al conectarse al punto de conexión de configuración, la aplicación puede detectar los puntos de conexión principal y de lectura de cada partición del clúster.

Para obtener más información, consulte Búsqueda de puntos finales de conexión en ElastiCache.

ElastiCache para los puntos finales de Memcached

Cada nodo de un clúster de Memcached tiene su propio punto de enlace. El clúster también tiene un punto de enlace, denominado punto de enlace de configuración. Si habilita la función Auto Discovery y se conecta al punto de enlace de configuración, su aplicación conocerá automáticamente cada punto de enlace de nodo, incluso después de agregar o quitar nodos en el clúster. Para obtener más información, consulte Detección automática.

Para obtener más información, consulte Búsqueda de puntos finales de conexión en ElastiCache.

ElastiCache grupos de parámetros

Los grupos de parámetros de caché son una forma sencilla de administrar la configuración de tiempo de ejecución para el software del motor compatible. Los parámetros se utilizan para controlar el uso de la memoria, las políticas de expulsión, los tamaños de elementos y mucho más. Un grupo de ElastiCache parámetros es una colección con nombre de parámetros específicos del motor que se puede aplicar a un clúster. De este modo, se asegura de que todos los nodos de ese clúster estén configurados exactamente de la misma forma.

Para obtener una lista de los parámetros compatibles, sus valores predeterminados y cuáles se pueden modificar, consulte DescribeEngineDefaultParameters (CLI: describe-engine-default-parameters).

Para obtener información más detallada sobre los grupos de ElastiCache parámetros, consulte. Configuración de los parámetros del motor mediante grupos de ElastiCache parámetros

ElastiCache seguridad

Para mejorar la seguridad, el acceso a los ElastiCache nodos está restringido a las aplicaciones que se ejecutan en las EC2 instancias de Amazon que usted permita. Puede controlar las EC2 instancias de Amazon que pueden acceder a su clúster mediante grupos de seguridad.

De forma predeterminada, todos los ElastiCache clústeres nuevos se lanzan en un entorno de Amazon Virtual Private Cloud (Amazon VPC). Puedes usar grupos de subredes para conceder acceso al clúster desde EC2 instancias de Amazon que se ejecuten en subredes específicas.

Además de restringir el acceso a los nodos, ElastiCache admite el TLS y el cifrado local para los nodos que ejecutan versiones específicas de. ElastiCache Para obtener más información, consulte los siguientes temas:

ElastiCache grupos de subredes

Un grupo de subredes es una colección de subredes (que suelen ser privadas) que se puede designar para los clústeres que se ejecuten en un entorno de Amazon VPC.

Si crea un clúster en una Amazon VPC, debe especificar un grupo de subredes de caché. ElastiCache usa dicho grupo de subredes de la caché para elegir una subred y direcciones IP pertenecientes a ella y asociarlas a los nodos de caché.

Para obtener más información sobre el uso de los grupos de subredes de caché en entornos de Amazon VPC, consulte lo siguiente:

ElastiCache copias de seguridad

Una copia de seguridad es una point-in-time copia de un clúster de OSS de Valkey o Redis, o de una caché sin servidor de Memcached. Dichas copias de seguridad pueden usarse para restaurar un clúster existente o para propagar datos en un nuevo clúster. Las copias de seguridad se componen de todos los datos en un clúster, además de algunos metadatos.

Dependiendo de la versión de Valkey o Redis OSS que se ejecute en el clúster, el proceso de copia de seguridad requiere diferentes cantidades de memoria reservada para realizarse correctamente. Para obtener más información, consulte los siguientes temas:

ElastiCache eventos

Cuando se producen eventos importantes en un clúster de caché, ElastiCache envía una notificación a un tema específico de Amazon SNS. Algunos eventos significativos pueden ser, por ejemplo, errores al agregar un nodo, adiciones de nodos correctas, cambios en los grupos de seguridad, entre otros. Al monitorear los eventos clave podrá conocer el estado actual de los clústeres y, según el evento, adoptar medidas correctivas.

Para obtener más información sobre ElastiCache los eventos, consulteSupervisión de eventos en Amazon SNS ElastiCache .