Componentes del clúster de DAX - Amazon DynamoDB

Componentes del clúster de DAX

Un clúster de Amazon DynamoDB Accelerator (DAX) consta de componentes de la infraestructura de AWS. En esta sección se describen estos componentes y cómo funcionan entre sí.

Nodos

Un nodo es el bloque de creación más pequeño de un clúster de DAX. Cada nodo ejecuta una instancia del software DAX y mantiene una única réplica de los datos almacenados en caché.

Puede escalar el clúster de DAX de una de las dos formas siguientes:

  • Agregando más nodos al clúster. Con ello aumenta el desempeño de lectura general del clúster.

  • Utilizando un tipo de nodo mayor. Los tipos nodos mayores proporcionan más capacidad y pueden aumentar el desempeño. (Debe crear un nuevo clúster con el nuevo tipo de nodo).

Todos los nodos contenidos en un clúster son del mismo tipo y ejecutan el mismo software de almacenamiento en caché de DAX. Para obtener una lista de tipos de nodos disponibles, consulte Precios de Amazon DynamoDB.

Clústeres

Un clúster es una agrupación lógica de uno o varios nodos que DAX administra como una unidad. Uno de los nodos del clúster se designa como nodo principal y los demás (si los hay), son las réplicas de lectura.

El nodo principal es responsable de lo siguiente:

  • Responder a las solicitudes de datos en caché que formulan las aplicaciones.

  • Transmitir las operaciones de escritura a DynamoDB.

  • Expulsar los datos de la caché, de acuerdo con la política de expulsión del clúster.

Cuando se producen cambios en los datos almacenados en caché en el nodo principal, DAX propaga los cambios a todos los nodos de réplica de lectura mediante registros de replicación. Una vez recibida la confirmación de todas las réplicas de lectura, DynamoDB elimina los registros de replicación del nodo principal.

Las réplicas de lectura son responsables de lo siguiente:

  • Responder a las solicitudes de datos en caché que formulan las aplicaciones.

  • Expulsar los datos de la caché, de acuerdo con la política de expulsión del clúster.

Sin embargo, al contrario que el nodo primario, las réplicas de lectura no escriben en DynamoDB.

Las réplicas de lectura cumplen dos funciones adicionales:

  • Escalabilidad. Si tiene gran cantidad de clientes de aplicación que deben obtener acceso a DAX simultáneamente, puede agregar más réplicas para escalar la lectura. DAX distribuirá la carga de forma uniforme entre todos los nodos del clúster. (Otra forma de aumentar el desempeño es utilizar tipos de nodos de caché mayores).

  • Alta disponibilidad En el caso de que se produzca un error en el nodo primario, DAX automáticamente realiza una conmutación por error a una réplica de lectura y la designa como nuevo nodo primario. Si se produce un error en un nodo de réplica, otros nodos del clúster de DAX pueden seguir atendiendo las solicitudes hasta que se consigue recuperar el nodo defectuoso. Para disfrutar de la máxima tolerancia a errores, debe implementar réplicas de lectura en zonas de disponibilidad distintas. Esta configuración garantiza que el clúster de DAX continúe funcionando incluso si una zona de disponibilidad completa deja de estar disponible.

Un clúster de DAX admite hasta 11 nodos por clúster (el nodo principal y un máximo de 10 réplicas de lectura).

importante

Para su uso en producción, se recomienda encarecidamente utilizar DAX con al menos tres nodos, en donde cada nodo se coloca en zonas de disponibilidad diferentes. Se requieren tres nodos para que un clúster de DAX sea tolerante a errores.

Un clúster de DAX se puede implementar con uno o dos nodos para cargas de trabajo de desarrollo o pruebas. Los clústeres de uno o dos nodos no son tolerantes a errores y no se recomiendan menos de tres nodos para su uso en producción. Si los clústeres de uno o dos nodos tienen errores de software o hardware, el clúster podría dejar de estar disponible o podrían perderse los datos almacenados en caché.

Regiones y zonas de disponibilidad

Un clúster de DAX de una región de AWS solo puede interaccionar con las tablas de DynamoDB que se encuentran en esa misma región. Por este motivo, debe asegurarse de lanzar el clúster de DAX en la región correcta. Si tiene tablas de DynamoDB en otras regiones, debe lanzar clústeres de DAX en esas regiones también.

Cada región de se ha diseñado para que se encuentre totalmente aislada de las demás regiones de . Dentro de cada región hay varias zonas de disponibilidad. Al lanzar los nodos en zonas de disponibilidad diferentes, puede lograr la máxima tolerancia a errores.

importante

No coloque todos los nodos del clúster en la misma zona de disponibilidad. En una configuración así, el clúster de DAX deja de estar disponible si se produce un error en la zona de disponibilidad.

Para su uso en producción, se recomienda encarecidamente utilizar DAX con al menos tres nodos, en donde cada nodo se coloca en zonas de disponibilidad diferentes. Se requieren tres nodos para que un clúster de DAX sea tolerante a errores.

Un clúster de DAX se puede implementar con uno o dos nodos para cargas de trabajo de desarrollo o pruebas. Los clústeres de uno o dos nodos no son tolerantes a errores y no se recomiendan menos de tres nodos para su uso en producción. Si los clústeres de uno o dos nodos tienen errores de software o hardware, el clúster podría dejar de estar disponible o podrían perderse los datos almacenados en caché.

Grupos de parámetros

Los grupos de parámetros se utilizan para administrar los ajustes de tiempo de ejecución de los clústeres de DAX. DAX tiene varios parámetros que puede utilizar para optimizar el rendimiento (por ejemplo, puede definir una política de TTL para los datos almacenados en caché). Un grupo de parámetros es un conjunto de parámetros con nombre que se pueden aplicar a un clúster. De este modo, se garantiza que todos los nodos de ese clúster estén configurados exactamente de la misma forma.

Grupos de seguridad

Un clúster de DAX se ejecuta en un entorno de Amazon Virtual Private Cloud (Amazon VPC). Este entorno es una red virtual que está dedicada a su cuenta de AWS y está aislada de las demás VPC. Un grupo de seguridad funciona como un firewall virtual para la VPC que le permite para controlar el tráfico de red entrante y saliente.

Al lanzar un clúster en la VPC, puede agregar una regla de entrada al grupo de seguridad para que permita el tráfico procedente de la red. La regla de entrada especifica el protocolo (TCP) y el número de puerto (8111) del clúster. Después de agregar esta regla al grupo de seguridad, las aplicaciones que se ejecutan dentro de la VPC podrán acceder al clúster de DAX.

ARN del clúster

A cada clúster de DAX se le asigna un nombre de recurso de Amazon (ARN). El formato del ARN es el siguiente.

arn:aws:dax:region:accountID:cache/clusterName

Utilice el ARN del clúster en la política de IAM para definir los permisos para las operaciones de la API de DAX. Para obtener más información, consulte Control de acceso a DAX.

Punto de conexión de clúster

Cada clúster de DAX proporciona un punto de enlace de clúster para que la aplicación lo utilice. Al obtener acceso al clúster a través de este punto de enlace, la aplicación no tiene que conocer los nombres de los hosts ni los números de los puertos de los nodos individuales del clúster. Su aplicación "conoce" automáticamente todos los nodos del clúster, aunque se agreguen o eliminen réplicas de lectura.

A continuación, se muestra un ejemplo de punto de enlace de un clúster en la región us-east-1 que no está configurado para utilizar el cifrado en tránsito.

dax://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com

A continuación, se muestra un ejemplo de punto de enlace de un clúster en la misma región que está configurado para utilizar el cifrado en tránsito.

daxs://my-encrypted-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com

Puntos de conexión del nodo

Cada uno de los nodos individuales de un clúster de DAX tiene su propio nombre de host y número de puerto. A continuación, se muestra un ejemplo de punto de enlace de un nodo.

myDAXcluster-a.2cmrwl.clustercfg.dax.use1.cache.amazonaws.com:8111

La aplicación puede obtener acceso directamente a un nodo utilizando su punto de enlace. Sin embargo, recomendamos tratar el clúster de DAX como una sola unidad y acceder a él mediante el punto de enlace de clúster. El punto de enlace de clúster aísla la aplicación para que no tenga que mantener una lista de nodos ni actualizarla cada vez que se agreguen o eliminen nodos del clúster.

Grupos de subredes

El acceso a los nodos del clúster de DAX está restringido a las aplicaciones que se ejecutan en las instancias de Amazon EC2 en un entorno de Amazon VPC. Puede utilizar grupos de subredes para conceder acceso al clúster desde las instancias de Amazon EC2 que se ejecutan en subredes concretas. Un grupo de subredes es una colección de subredes (que suelen ser privadas) que puede designar para los clústeres que se ejecutan en un entorno de Amazon VPC.

Al crear un clúster de DAX, debe especificar un grupo de subredes. DAX utiliza dicho grupo de subredes para seleccionar una subred y direcciones IP pertenecientes a ella, y asociárselas a los nodos.

Eventos

DAX registra los eventos significativos que tienen lugar en los clústeres, tales como los errores al agregar un nodo, las adiciones de nodos correctas o los cambios en los grupos de seguridad. Puede monitorizar los eventos clave para conocer el estado actual de los clústeres y, según el evento, adoptar medidas correctivas. Puede acceder a estos eventos desde la AWS Management Console o utilizando la acción DescribeEvents en la API de administración de DAX.

También puede solicitar que se envíen notificaciones a un tema específico de Amazon Simple Notification Service (Amazon SNS). De ese modo, sabrá de inmediato cuando se produce un evento en su clúster de DAX.

Periodo de mantenimiento

Cada clúster tiene un periodo de mantenimiento semanal para aplicar los cambios del sistema A medida que los cambios se aplican secuencialmente, se reemplaza un nodo existente y se agrega al clúster un nodo nuevo con los cambios aplicados. Durante este periodo, es posible que la aplicación experimente errores transitorios o limitaciones. Por lo tanto, le recomendamos que programe el periodo de mantenimiento durante el tiempo de uso más bajo y que ajuste este programa regularmente como sea necesario. Puede especificar un intervalo de tiempo de hasta 24 horas durante las cuales deban llevarse a cabo todas las actividades de mantenimiento que solicite.

Si no especifica un periodo de mantenimiento preferido al crear o modificar un clúster de caché, DAX asigna un periodo de mantenimiento de 60 minutos un día de la semana al azar. Este periodo de mantenimiento de 60 minutos se selecciona al azar dentro de un bloque de 8 horas por cada Región de AWS. En la siguiente tabla, se muestran los bloques de tiempo de cada región desde los que se asignan los periodos predeterminados de mantenimiento.

Código de región Nombres de las regiones Periodo de mantenimiento
ap-northeast-1 Región Asia-Pacífico (Tokio) 13:00 — 21:00 UTC
ap-southeast-1 Región Asia-Pacífico (Singapur) 14:00 — 22:00 UTC
ap-southeast-2 Región Asia-Pacífico (Sídney) 12:00 — 20:00 UTC
ap-south-1 Región Asia-Pacífico (Mumbai) 17:30 — 01:30 UTC
cn-northwest-1 Región China (Ningxia) 23:00 — 07:00 UTC
cn-north-1 Región China (Pekín) 14:00 — 22:00 UTC
eu-central-1 Región de Europa (Fráncfort) 23:00 — 07:00 UTC
eu-north-1 Región Europa (Estocolmo) 01:00 — 09:00 UTC
eu-south-2 Región Europa (España) 21:00 — 05:00 UTC
eu-west-1 Región de Europa (Irlanda) 22:00 — 06:00 UTC
eu-west-2 Región de Europa (Londres) 23:00 — 07:00 UTC
eu-west-3 Región Europa (París) 23:00 — 07:00 UTC
sa-east-1 Región de América del Sur (São Paulo) 01:00 — 09:00 UTC
us-east-1 Región del este de EE. UU. (Norte de Virginia) 03:00 — 11:00 UTC
us-east-2 Región del este de EE. UU. (Ohio) 23:00 — 07:00 UTC
us-west-1 Región del oeste de EE. UU. (Norte de California) 06:00 — 17:00 UTC
us-west-2 Región del oeste de EE. UU (Oregón) 06:00–14:00 UTC