Creación de un grupo de replicación en Valkey o Redis OSS (modo de clúster habilitado) desde cero
Puede crear un clúster de Valkey o Redis OSS (modo de clúster habilitado) (API/CLI: grupo de replicación) con la consola de ElastiCache, la AWS CLI o la API de ElastiCache. Un grupo de replicación de Valkey o Redis OSS (modo de clúster habilitado) tiene de 1 a 500 particiones (API/CLI: grupos de nodos), un nodo principal en cada partición y hasta 5 réplicas de lectura en cada partición. Puede crear un clúster con un mayor número de particiones y un menor número de réplicas con un total de hasta 90 nodos por clúster. Esta configuración de clúster puede variar desde 90 particiones y 0 réplicas hasta 15 particiones y 5 réplicas, que es el número máximo de réplicas permitido.
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).
Creación de un clúster en Valkey o Redis OSS (modo de clúster habilitado)
Creación de un clúster de Valkey o Redis OSS (modo de clúster habilitado) (consola)
Para crear un clúster de Valkey o Redis OSS (modo de clúster habilitado), consulte Creación de un clúster de Valkey o Redis OSS (modo de clúster habilitado) (consola). Asegúrese de habilitar el modo de clúster, Cluster Mode enabled (Scale Out) y especifique al menos dos particiones y un nodo de réplica en cada uno.
Creación de un grupo de replicación de Valkey o Redis OSS (modo de clúster habilitado) desde cero (AWS CLI)
El siguiente procedimiento crea un grupo de replicación de Valkey o Redis OSS (modo de clúster habilitado) mediante la AWS CLI.
Al crear un grupo de replicación de Valkey o Redis OSS (modo de clúster habilitado) desde cero, debe crear el grupo de replicación y todos sus nodos con una sola llamada al comando create-replication-group de la AWS CLI. Incluya los siguientes parámetros.
- --replication-group-id
El nombre del grupo de replicación que va a crear.
Estas son las restricciones de nomenclatura de los grupos de replicación de Valkey o Redis OSS (modo de clúster habilitado):
Deben contener entre 1 y 40 caracteres alfanuméricos o guiones.
Deben comenzar por una letra.
No pueden contener dos guiones consecutivos.
No pueden terminar con un guion.
- --replication-group-description
Descripción del grupo de replicación.
- --cache-node-type
El tipo de nodo para cada nodo en el grupo de replicación.
ElastiCache admite los siguientes tipos de nodos. En general, los tipos de la generación actual ofrecen más capacidad de memoria y potencia de computación a menor costo comparados con sus equivalentes de generaciones previas.
Para obtener más información sobre los detalles del rendimiento de cada tipo de nodo, consulte Tipos de instancia de Amazon EC2
. - --habilitado para organización de datos en niveles
Establezca este parámetro si está utilizando un tipo de nodo r6gd. Si no quiere la organización de datos en niveles, defina
--no-data-tiering-enabled. Para obtener más información, consulte Organización de datos en niveles en ElastiCache.- --cache-parameter-group
Especifique el grupo de parámetros
default.redis6.x.cluster.ono un grupo de parámetros derivado dedefault.redis6.x.cluster.onpara crear un grupo de replicación de Valkey o Redis OSS (modo de clúster habilitado). Para obtener más información, consulte Cambios de parámetros de Redis OSS 6.x.- --engine
redis
- --engine-version
3.2.4
- --num-node-groups
El número de grupos de nodo de este grupo de reproducción. Los valores válidos son de 1 a 500.
nota
El límite de nodos o de particiones puede aumentarse hasta un máximo de 500 por clúster. Para solicitar un aumento del límite, consulte AWS Service Limits y seleccione el tipo de límite “Nodes per cluster per instance type” (Nodos por clúster por tipo de instancias).
- --replicas-per-node-group
El número de nodos de réplica de cada grupo de nodos. Los valores válidos son de 0 a 5.
- --network-type
ipv4,ipvodual-stack. Si elige la doble pila, debe establecer el parámetro--IpDiscoveryenipv4oipv6.
Si desea habilitar el cifrado en tránsito o en reposo en este grupo de replicación, agregue uno o estos dos parámetros, --transit-encryption-enabled y --at-rest-encryption-enabled, y ajústese a las siguientes condiciones.
-
El grupo de replicación debe ejecutar la versión de Redis OSS 3.2.6 o 4.0.10.
-
El grupo de reproducción debe crearse en una Amazon VPC.
-
Debe incluirse también el parámetro
--cache-subnet-group. -
Debe incluirse el parámetro
--auth-tokencon el valor de cadena especificado por el cliente para el token AUTH (contraseña) que es necesario para realizar las operaciones en este grupo de replicación.
La siguiente operación crea el grupo de replicación sample-repl-group de Valkey o Redis OSS (modo de clúster habilitado) con tres grupos de nodos/particiones (--num-node-groups), cada uno de ellos con tres nodos, uno principal y dos réplicas de lectura (--replicas-per-node-group).
Para Linux, macOS o Unix:
aws elasticache create-replication-group \ --replication-group-idsample-repl-group\ --replication-group-description"Demo cluster with replicas"\ --num-node-groups3\ --replicas-per-node-group2\ --cache-node-typecache.m4.large\ --engineredis\ --security-group-idsSECURITY_GROUP_ID\ --cache-subnet-group-nameSUBNET_GROUP_NAME>
Para Windows:
aws elasticache create-replication-group ^ --replication-group-idsample-repl-group^ --replication-group-description"Demo cluster with replicas"^ --num-node-groups3^ --replicas-per-node-group2^ --cache-node-typecache.m4.large^ --engineredis^ --security-group-idsSECURITY_GROUP_ID^ --cache-subnet-group-nameSUBNET_GROUP_NAME>
El comando anterior genera la siguiente salida.
{
"ReplicationGroup": {
"Status": "creating",
"Description": "Demo cluster with replicas",
"ReplicationGroupId": "sample-repl-group",
"SnapshotRetentionLimit": 0,
"AutomaticFailover": "enabled",
"SnapshotWindow": "05:30-06:30",
"MemberClusters": [
"sample-repl-group-0001-001",
"sample-repl-group-0001-002",
"sample-repl-group-0001-003",
"sample-repl-group-0002-001",
"sample-repl-group-0002-002",
"sample-repl-group-0002-003",
"sample-repl-group-0003-001",
"sample-repl-group-0003-002",
"sample-repl-group-0003-003"
],
"PendingModifiedValues": {}
}
}
Al crear un grupo de replicación de Valkey o Redis OSS (modo de clúster habilitado) desde cero, puede configurar cada partición en el clúster con el parámetro --node-group-configuration, tal y como se muestra en el siguiente ejemplo, que configura dos grupos de nodos (consola: particiones). La primera partición tiene dos nodos, un principal y una réplica de lectura. La segunda partición tiene tres nodos, un principal y dos réplicas de lectura.
- --node-group-configuration
La configuración para cada grupo de nodos. El parámetro
--node-group-configurationconsta de los siguientes campos.-
PrimaryAvailabilityZone: la zona de disponibilidad en la que se encuentra el nodo primario de este grupo de nodos. Si se omite este parámetro, ElastiCache elige la zona de disponibilidad del nodo primario.Por ejemplo: us-west-2a.
-
ReplicaAvailabilityZones: una lista separada por comas de las zonas de disponibilidad en las que se encuentran las réplicas de lectura. El número de zonas de disponibilidad de esta lista debe coincidir con el valor deReplicaCount. Si se omite este parámetro, ElastiCache elige las zonas de disponibilidad de los nodos de réplica.Ejemplo: "us-west-2a,us-west-2b,us-west-2c"
-
ReplicaCount: el número de nodos de réplica de este grupo de nodos. -
Slots: una cadena que especifica el espacio de claves para el grupo de nodos. La cadena está en formatostartKey-endKey. Si se omite este parámetro, ElastiCache asigna claves igualmente entre los grupos de nodos.Ejemplo: "0-4999"
-
La siguiente operación crea el grupo de replicación new-group de Valkey o Redis OSS (modo de clúster habilitado) con dos grupos de nodos/particiones (--num-node-groups). A diferencia del ejemplo anterior, cada grupo de nodos se configura de forma distinta a los demás grupos de nodos (--node-group-configuration).
Para Linux, macOS o Unix:
aws elasticache create-replication-group \ --replication-group-idnew-group\ --replication-group-description "Sharded replication group" \ --engineredis\ --snapshot-retention-limit8\ --cache-node-typecache.m4.medium\ --num-node-groups2\ --node-group-configuration \ "ReplicaCount=1,Slots=0-8999,PrimaryAvailabilityZone='us-east-1c',ReplicaAvailabilityZones='us-east-1b'" \ "ReplicaCount=2,Slots=9000-16383,PrimaryAvailabilityZone='us-east-1a',ReplicaAvailabilityZones='us-east-1a','us-east-1c'"
Para Windows:
aws elasticache create-replication-group ^ --replication-group-idnew-group^ --replication-group-description "Sharded replication group" ^ --engineredis^ --snapshot-retention-limit8^ --cache-node-typecache.m4.medium^ --num-node-groups2^ --node-group-configuration \ "ReplicaCount=1,Slots=0-8999,PrimaryAvailabilityZone='us-east-1c',ReplicaAvailabilityZones='us-east-1b'" \ "ReplicaCount=2,Slots=9000-16383,PrimaryAvailabilityZone='us-east-1a',ReplicaAvailabilityZones='us-east-1a','us-east-1c'"
La operación anterior genera la siguiente salida.
{
"ReplicationGroup": {
"Status": "creating",
"Description": "Sharded replication group",
"ReplicationGroupId": "rc-rg",
"SnapshotRetentionLimit": 8,
"AutomaticFailover": "enabled",
"SnapshotWindow": "10:00-11:00",
"MemberClusters": [
"rc-rg-0001-001",
"rc-rg-0001-002",
"rc-rg-0002-001",
"rc-rg-0002-002",
"rc-rg-0002-003"
],
"PendingModifiedValues": {}
}
}
Para obtener información adicional y parámetros que puede querer utilizar, consulte el tema AWS CLI de la create-replication-group.
Creación de un grupo de replicación en Valkey o Redis OSS (modo de clúster habilitado) desde cero (API de ElastiCache)
El siguiente procedimiento crea un grupo de replicación de Valkey o Redis OSS (modo de clúster habilitado) mediante la API de ElastiCache.
Al crear un grupo de replicación de Valkey o Redis OSS (modo de clúster habilitado) desde cero, debe crear el grupo de replicación y todos sus nodos con una sola llamada a la operación de la API de ElastiCache CreateReplicationGroup. Incluya los siguientes parámetros.
- ReplicationGroupId
El nombre del grupo de replicación que va a crear.
Estas son las restricciones de nomenclatura de los grupos de replicación de Valkey o Redis OSS (modo de clúster habilitado):
Deben contener entre 1 y 40 caracteres alfanuméricos o guiones.
Deben comenzar por una letra.
No pueden contener dos guiones consecutivos.
No pueden terminar con un guion.
- ReplicationGroupDescription
Descripción del grupo de replicación.
- NumNodeGroups
El número de grupos de nodo que desea crear con este grupo de reproducción. Los valores válidos son de 1 a 500.
- ReplicasPerNodeGroup
El número de nodos de réplica de cada grupo de nodos. Los valores válidos son de 1 a 5.
- NodeGroupConfiguration
La configuración para cada grupo de nodos. El parámetro
NodeGroupConfigurationconsta de los siguientes campos.-
PrimaryAvailabilityZone: la zona de disponibilidad en la que se encuentra el nodo primario de este grupo de nodos. Si se omite este parámetro, ElastiCache elige la zona de disponibilidad del nodo primario.Por ejemplo: us-west-2a.
-
ReplicaAvailabilityZones: una lista de las zonas de disponibilidad en las que se encuentran las réplicas de lectura. El número de zonas de disponibilidad de esta lista debe coincidir con el valor deReplicaCount. Si se omite este parámetro, ElastiCache elige las zonas de disponibilidad de los nodos de réplica. -
ReplicaCount: el número de nodos de réplica de este grupo de nodos. -
Slots: una cadena que especifica el espacio de claves para el grupo de nodos. La cadena está en formatostartKey-endKey. Si se omite este parámetro, ElastiCache asigna claves igualmente entre los grupos de nodos.Ejemplo: "0-4999"
-
- CacheNodeType
El tipo de nodo para cada nodo en el grupo de replicación.
ElastiCache admite los siguientes tipos de nodos. En general, los tipos de la generación actual ofrecen más capacidad de memoria y potencia de computación a menor costo comparados con sus equivalentes de generaciones previas.
Para obtener más información sobre los detalles del rendimiento de cada tipo de nodo, consulte Tipos de instancia de Amazon EC2
. - --habilitado para organización de datos en niveles
Establezca este parámetro si está utilizando un tipo de nodo r6gd. Si no quiere la organización de datos en niveles, defina
--no-data-tiering-enabled. Para obtener más información, consulte Organización de datos en niveles en ElastiCache.- CacheParameterGroup
Especifique el grupo de parámetros
default.redis6.x.cluster.ono un grupo de parámetros derivado dedefault.redis6.x.cluster.onpara crear un grupo de replicación de Valkey o Redis OSS (modo de clúster habilitado). Para obtener más información, consulte Cambios de parámetros de Redis OSS 6.x.- --network-type
ipv4,ipvodual-stack. Si elige la doble pila, debe establecer el parámetro--IpDiscoveryenipv4oipv6.- Motor
redis
- EngineVersion
6.0
Si desea habilitar el cifrado en tránsito o en reposo en este grupo de replicación, agregue uno o estos dos parámetros, TransitEncryptionEnabled=true y AtRestEncryptionEnabled=true, y ajústese a las siguientes condiciones.
-
El grupo de replicación debe ejecutar la versión de Redis OSS 3.2.6 o 4.0.10.
-
El grupo de reproducción debe crearse en una Amazon VPC.
-
Debe incluirse también el parámetro
CacheSubnetGroup. -
Debe incluirse el parámetro
AuthTokencon el valor de cadena especificado por el cliente para el token AUTH (contraseña) que es necesario para realizar las operaciones en este grupo de replicación.
Se agregan saltos de línea para facilitar la lectura.
https://elasticache.us-west-2.amazonaws.com/ ?Action=CreateReplicationGroup &CacheNodeType=cache.m4.large &CacheParemeterGroup=default.redis6.xcluster.on &Engine=redis &EngineVersion=6.0 &NumNodeGroups=3 &ReplicasPerNodeGroup=2 &ReplicationGroupDescription=test%20group &ReplicationGroupId=myReplGroup &Version=2015-02-02 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20150202T192317Z &X-Amz-Credential=<credential>
Para obtener información adicional y parámetros que puede querer utilizar, consulte el tema de la API de ElastiCache CreateReplicationGroup.