

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.

# Administración de clústeres
<a name="clusters"></a>

La mayoría de las operaciones de MemoryDB se realizan en el clúster. Puede configurar un clúster con un número específico de nodos y un grupo de parámetros que controle las propiedades de cada nodo. Todos los nodos de un clúster están diseñados para ser del mismo tipo y tener los mismos valores de configuración de parámetros y grupo de seguridad. 

Cada clúster debe tener un identificador de clúster. El identificador del clúster es un nombre suministrado por el cliente para el clúster. Este identificador especifica un clúster determinado al interactuar con los comandos de la API de MemoryDB y de la AWS CLI . El identificador del clúster debe ser único para ese cliente en una AWS región.

Los clústeres de MemoryDB se han diseñado para poder obtener acceso a ellos mediante una instancia de Amazon EC2. Solo se puede lanzar el clúster de MemoryDB en una nube privada virtual (VPC) en función del servicio de Amazon VPC, se puede acceder a él desde fuera de AWS. Para obtener más información, consulte [Acceso a los recursos de MemoryDB desde fuera de AWS](accessing-memorydb.md#access-from-outside-aws).

# Organización de datos en niveles
<a name="data-tiering"></a>

Los clústeres que utilizan un tipo de nodo de la familia r6gd tienen sus datos en niveles entre la memoria y el almacenamiento SSD local (unidades de estado sólido). La organización de datos en niveles proporciona una nueva opción de precio y rendimiento para las cargas de trabajo de Redis OSS mediante el uso de unidades de estado sólido (SSD) de menor costo en cada nodo de clúster, además de almacenar datos en la memoria. Al igual que en otros tipos de nodos, los datos escritos en los nodos r6gd se almacenan de forma duradera en un registro de transacciones Multi-AZ. La organización de datos en niveles es ideal para cargas de trabajo que acceden regularmente hasta un 20 % de su conjunto de datos general y para aplicaciones que pueden tolerar latencia adicional al acceder a los datos en SSD.

En clústeres con organización de datos en niveles, MemoryDB supervisa la última hora de acceso de cada elemento que almacena. Cuando la memoria disponible (DRAM) se consume por completo, MemoryDB utiliza un algoritmo de menos usados recientemente (LRU) para trasladar automáticamente los elementos a los que se obtiene acceso con poca frecuencia de la memoria a la SSD. Cuando se obtiene acceso posteriormente a los datos de SSD, MemoryDB los mueve de nuevo a la memoria de forma automática y asíncrona antes de procesar la solicitud. Si tiene una carga de trabajo que solo accede a un subconjunto de sus datos regularmente, la organización de datos en niveles es una forma óptima de escalar su capacidad de forma rentable.

Tenga en cuenta que cuando se utiliza la organización de datos en niveles, las propias claves siempre permanecen en la memoria, mientras que la LRU rige la ubicación de los valores en la memoria frente al disco. En general, recomendamos que los tamaños de las claves sean más pequeños que los tamaños de los valores al usar la organización de datos en niveles.

La organización de datos en niveles está diseñada para tener un impacto mínimo en el rendimiento de las cargas de trabajo Por ejemplo, suponiendo valores de cadena de 500 bytes, puede esperar por lo general 450 microsegundos adicionales de latencia para las solicitudes de lectura de datos almacenados en SSD en comparación con las solicitudes de datos de la memoria. 

Con el mayor tamaño de nodo de organización de datos en niveles (db.r6gd.8xlarge), puede almacenar hasta \$1500 TB en un solo clúster de 500 nodos (250 TB cuando se utiliza 1 réplica de lectura). Para la organización de datos en niveles, MemoryDB reserva el 19 % de la memoria (DRAM) por nodo para usos distintos de los datos. La organización de datos en niveles es compatible con todos los comandos y estructuras de datos de Valkey y Redis OSS compatibles con MemoryDB. No es necesario cambiar el lado del cliente para usar esta característica.

**Topics**
+ [Prácticas recomendadas](data-tiering-best-practices.md)
+ [Limitaciones de almacenamiento de datos en niveles](data-tiering-prerequisites.md)
+ [Precios de organización de datos en niveles](data-tiering-pricing.md)
+ [Monitoreo del almacenamiento de datos en niveles](data-tiering-monitoring.md)
+ [Uso de la organización de datos en niveles](data-tiering-enabling.md)
+ [Restauración de datos en clústeres desde una instantánea](data-tiering-enabling-snapshots.md)

# Prácticas recomendadas
<a name="data-tiering-best-practices"></a>

Recomendamos que siga las siguientes prácticas recomendadas:
+ La organización de datos en niveles es ideal para cargas de trabajo que acceden regularmente hasta un 20 % de su conjunto de datos general y para aplicaciones que pueden tolerar latencia adicional al acceder a los datos en SSD.
+ Al utilizar la capacidad de SSD disponible en nodos con niveles de datos, recomendamos que el tamaño del valor sea mayor que el tamaño de la clave. El tamaño del valor no puede ser superior a 128 MB; de lo contrario, no se moverá al disco. Cuando se mueven elementos entre DRAM y SSD, las claves siempre permanecerán en la memoria y solo los valores se moverán al nivel de SSD.

# Limitaciones de almacenamiento de datos en niveles
<a name="data-tiering-prerequisites"></a>

La organización de datos en niveles tiene las siguientes restricciones:
+ El tipo de nodo que utilice debe pertenecer a la familia r6gd, que está disponible en las siguientes regiones: `us-east-2`, `us-east-1`, `us-west-2`, `us-west-1`, `eu-west-1`, `eu-west-3`, `eu-central-1`, `ap-northeast-1`, `ap-southeast-1`, `ap-southeast-2`, `ap-south-1`, `ca-central-1` y `sa-east-1`.
+ No se puede restaurar una instantánea de un clúster r6gd en otro clúster a menos que también utilice r6gd.
+ No se puede exportar una instantánea a Amazon S3 para clústeres de organización de datos en niveles.
+ No se admite el guardado sin ramificación.
+ No se admite el escalado desde un clúster de organización de datos en niveles (por ejemplo, un clúster que utiliza un tipo de nodo r6gd) a un clúster que no utiliza la organización de datos en niveles (por ejemplo, un clúster que utiliza un tipo de nodo r6g).
+ La organización de datos en niveles solo admite las políticas maxmemory `volatile-lru`, `allkeys-lru` y `noeviction`. 
+ Los artículos de más de 128 MiB no se mueven a SSD.

# Precios de organización de datos en niveles
<a name="data-tiering-pricing"></a>

Los nodos R6gd tienen 5 veces más capacidad total (memoria \$1 SSD) y pueden ayudarle a ahorrar más del 60 por ciento de los costos de almacenamiento cuando se ejecutan con la máxima utilización en comparación con los nodos R6g (solo memoria). Para obtener más información, consulte [Precios de MemoryDB](https://aws.amazon.com/memorydb/pricing/).

# Monitoreo del almacenamiento de datos en niveles
<a name="data-tiering-monitoring"></a>

MemoryDB ofrece métricas diseñadas específicamente para monitorear los clústeres de rendimiento que utilizan la organización de datos en niveles. Para monitorear la proporción de elementos en DRAM en comparación con SSD, puede utilizar la métrica `CurrItems` en [Métricas de MemoryDB](metrics.memorydb.md). Puede calcular el porcentaje de la siguiente manera:`(CurrItems with Dimension: Tier = Memory * 100) / (CurrItems with no dimension filter)`. 

 Si la política de expulsión configurada lo permite, MemoryDB empezará a expulsar elementos cuando el porcentaje de estos en la memoria disminuya por debajo del 5 %. En los nodos configurados con una política de no expulsión, en las operaciones de escritura aparecerá un error de memoria insuficiente. 

 Se sigue recomendado que considere [Escalado de clústeres de MemoryDB](scaling-cluster.md) cuando el porcentaje de elementos en la memoria disminuye por debajo del 5 %. Para obtener más información, consulte *Métricas para clústeres de MemoryDB que utilizan la organización de datos en niveles* en [Métricas de MemoryDB](metrics.memorydb.md).

# Uso de la organización de datos en niveles
<a name="data-tiering-enabling"></a>

## Uso de la organización de datos en niveles mediante la Consola de administración de AWS
<a name="data-tiering-enabling-console"></a>

Al crear un clúster, se utiliza la organización de datos en niveles seleccionando un tipo de nodo de la familia r6gd, como *db.r6gd.xlarge*. La selección de ese tipo de nodo habilita automáticamente la organización de datos en niveles. 

Para obtener más información sobre la creación de clústeres, consulte [Paso 2: crear un clúster](getting-started.md#getting-started.createcluster).

## Activación de la organización de datos en niveles mediante la AWS CLI
<a name="data-tiering-enabling-cli"></a>

Al crear un clúster utilizando la AWS CLI, puede utilizar la organización de datos en niveles seleccionando un tipo de nodo de la familia r6gd, como *db.r6gd.xlarge* y configurando el parámetro `--data-tiering`. 

No puede excluirse de la organización de datos en niveles al seleccionar un tipo de nodo de la familia r6gd. Si configura el parámetro `--no-data-tiering`, la operación no se llevará a cabo correctamente.

Para Linux, macOS o Unix:

```
aws memorydb create-cluster \
   --cluster-name my-cluster \
   --node-type db.r6gd.xlarge \
   --engine valkey  \
   --acl-name my-acl \
   --subnet-group my-sg \
   --data-tiering
```

Para Windows:

```
aws memorydb create-cluster ^
   --cluster-name my-cluster ^
   --node-type db.r6gd.xlarge ^
   --engine valkey ^
   --acl-name my-acl ^
   --subnet-group my-sg
   --data-tiering
```

Después de ejecutar esta operación, verá una respuesta parecida a la siguiente:

```
{
    "Cluster": {
        "Name": "my-cluster",
        "Status": "creating",
        "NumberOfShards": 1,
        "AvailabilityMode": "MultiAZ",
        "ClusterEndpoint": {
            "Port": 6379
        },
        "NodeType": "db.r6gd.xlarge",
        "EngineVersion": "7.2",
        "EnginePatchVersion": "7.2.6",
        "Engine": "valkey"
        "ParameterGroupName": "default.memorydb-valkey7",
        "ParameterGroupStatus": "in-sync",
        "SubnetGroupName": "my-sg",
        "TLSEnabled": true,
        "ARN": "arn:aws:memorydb:us-east-1:xxxxxxxxxxxxxx:cluster/my-cluster",
        "SnapshotRetentionLimit": 0,
        "MaintenanceWindow": "wed:03:00-wed:04:00",
        "SnapshotWindow": "04:30-05:30",        
        "ACLName": "my-acl",
        "DataTiering":"true",
        "AutoMinorVersionUpgrade": true
    }
}
```

# Restauración de datos en clústeres desde una instantánea
<a name="data-tiering-enabling-snapshots"></a>

Puede restaurar una instantánea en un nuevo clúster con la organización de datos en niveles habilitada mediante la (consola), la (CLI de AWS) o la (API de MemoryDB). Cuando crea un clúster mediante tipos de nodos de la familia r6gd, se habilita la organización de datos en niveles. 

## Restauración de datos desde una instantánea en clústeres con la organización de datos en niveles habilitada (consola)
<a name="data-tiering-enabling-snapshots-console"></a>

Para restaurar una instantánea a un nuevo clúster con la organización de datos en niveles habilitada (consola), siga los pasos que se indican en [Restauración a partir de una instantánea (consola)](snapshots-restoring.md#snapshots-restoring-CON).

Tenga en cuenta que para habilitar la organización de datos en niveles, debe seleccionar un tipo de nodo de la familia r6gd.

## Restauración de datos desde una instantánea en clústeres con la organización de datos en niveles habilitada (CLI de AWS)
<a name="data-tiering-enabling-snapshots-cli"></a>

Al crear un clúster utilizando la AWS CLI, la organización de datos en niveles se utiliza de forma predeterminada seleccionando un tipo de nodo de la familia r6gd, como *db.r6gd.xlarge* y configurando el parámetro `--data-tiering`. 

No puede excluirse de la organización de datos en niveles al seleccionar un tipo de nodo de la familia r6gd. Si configura el parámetro `--no-data-tiering`, la operación no se llevará a cabo correctamente.

Para Linux, macOS o Unix:

```
aws memorydb create-cluster \
   --cluster-name my-cluster \
   --node-type db.r6gd.xlarge \
   --engine valkey 
   --acl-name my-acl \
   --subnet-group my-sg \
   --data-tiering \
   --snapshot-name my-snapshot
```

Para Windows:

```
aws memorydb create-cluster ^
   --cluster-name my-cluster ^
   --node-type db.r6gd.xlarge ^
   --engine valkey ^
   --acl-name my-acl ^
   --subnet-group my-sg ^
   --data-tiering ^
   --snapshot-name my-snapshot
```

Después de ejecutar esta operación, verá una respuesta parecida a la siguiente:

```
{
    "Cluster": {
        "Name": "my-cluster",
        "Status": "creating",
        "NumberOfShards": 1,
        "AvailabilityMode": "MultiAZ",
        "ClusterEndpoint": {
            "Port": 6379
        },
        "NodeType": "db.r6gd.xlarge",
        "EngineVersion": "7.2",
        "EnginePatchVersion": "7.2.6",
        "Engine": "valkey"
        "ParameterGroupName": "default.memorydb-valkey7",
        "ParameterGroupStatus": "in-sync",
        "SubnetGroupName": "my-sg",
        "TLSEnabled": true,
        "ARN": "arn:aws:memorydb:us-east-1:xxxxxxxxxxxxxx:cluster/my-cluster",
        "SnapshotRetentionLimit": 0,
        "MaintenanceWindow": "wed:03:00-wed:04:00",
        "SnapshotWindow": "04:30-05:30",
        "ACLName": "my-acl",       
        "DataTiering": "true"
}
```

# Preparación de un clúster
<a name="clusters.prepare"></a>

A continuación, puede encontrar instrucciones acerca de cómo crear un clúster a través de la consola de MemoryDB, la AWS CLI o la API de MemoryDB.

Siempre que cree un clúster, es conveniente realizar algunos preparativos para que no sea necesario actualizar o efectuar cambios de inmediato.

**Topics**
+ [Determinación de los requisitos](cluster-create-determine-requirements.md)

# Determinación de los requisitos
<a name="cluster-create-determine-requirements"></a>

**Preparación**  
Conocer las respuestas a las siguientes preguntas ayuda a que la creación del clúster sea más fluida:
+ Asegúrese de crear un grupo de subredes en la misma VPC antes de comenzar a crear un clúster. También puede utilizar el grupo de subredes predeterminado proporcionado. Para obtener más información, consulte [Subredes y grupos de subredes](subnetgroups.md).

  MemoryDB está diseñado para que se pueda acceder a él desde dentro AWS mediante Amazon EC2. Sin embargo, si se lanza en una VPC basada en Amazon VPC, se puede proporcionar acceso desde fuera de AWS. Para obtener más información, consulte [Acceso a los recursos de MemoryDB desde fuera de AWS](accessing-memorydb.md#access-from-outside-aws).
+ ¿Necesita personalizar los valores de algún parámetro?

  Si lo hace, cree un grupo de parámetros personalizado. Para obtener más información, consulte [Creación de un grupo de parámetros](parametergroups.creating.md).
+ ¿Necesita crear un grupo de seguridad de VPC? 

  Para obtener más información, consulte [Seguridad en la VPC](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Security.html).
+ ¿Cómo pretende implementar la tolerancia a errores?

  Para obtener más información, consulte [Mitigación de errores](faulttolerance.md).

**Topics**
+ [Requisitos de procesador y memoria](#cluster-create-determine-requirements-memory)
+ [Configuración de los clústeres de MemoryDB](#cluster-configuration)
+ [I/O Multiplexación mejorada](#cluster-create-determine-requirements-multiplexing)
+ [Requisitos de escalado](#cluster-create-determine-requirements-scaling)
+ [Requisitos de acceso](#cluster-create-determine-requirements-access)
+ [Regiones y zonas de disponibilidad](#cluster-create-determine-requirements-region)

## Requisitos de procesador y memoria
<a name="cluster-create-determine-requirements-memory"></a>

El componente básico de MemoryDB es el nodo. Los nodos se configuran en particiones para formar clústeres. A la hora de determinar el tipo de nodo que desea utilizar para el clúster, tenga en cuenta la configuración del nodo del clúster y la cantidad de datos que tiene que almacenar.

## Configuración de los clústeres de MemoryDB
<a name="cluster-configuration"></a>

Los clústeres de MemoryDB se componen de 1 a 500 particiones. En un clúster de MemoryDB, los datos están particionados en las distintas particiones del clúster. Su aplicación se conecta con un clúster de MemoryDB mediante una dirección de red denominada punto de conexión. Además de los puntos de conexión del nodo, el clúster de MemoryDB tiene un punto de conexión denominado *punto de conexión de clúster*. Su aplicación puede usar este punto de conexión para leer o escribir en el clúster y no tener que determinar de qué nodo efectuar la lectura o hasta cuál escribir en MemoryDB. 

## I/O Multiplexación mejorada
<a name="cluster-create-determine-requirements-multiplexing"></a>

Si utiliza la versión 7.0 o superior de Valkey o Redis OSS, obtendrá una aceleración adicional con la I/O multiplexación mejorada, en la que cada subproceso de E/S de red dedicado canaliza los comandos de varios clientes al motor, lo que aprovecha la capacidad de procesar los comandos de manera eficiente en lotes. Para obtener más información, consulte [Rendimiento ultrarrápido](https://aws.amazon.com/memorydb/features/#Ultra-fast_performance) y [Tipos de nodos compatibles](nodes.supportedtypes.md).

## Requisitos de escalado
<a name="cluster-create-determine-requirements-scaling"></a>

Todos los clústeres se pueden ampliar a un tipo de nodo más grande. Al escalar verticalmente un clúster de MemoryDB, puede hacerlo en línea para que el clúster siga disponible o puede crear un nuevo clúster a partir de una instantánea y evitar que el nuevo clúster comience vacío.

Para obtener más información, consulte la sección [Escalado](scaling.md) de esta guía.

## Requisitos de acceso
<a name="cluster-create-determine-requirements-access"></a>

Por diseño, el acceso a los clústeres de MemoryDB se realiza desde instancias de Amazon EC2. El acceso de red a un clúster de MemoryDB se encuentra limitado a la cuenta que creó el clúster. Por lo tanto, antes de poder obtener acceso a un clúster desde una instancia de Amazon EC2, debe autorizar a dicha instancia el acceso al clúster. Para obtener instrucciones detalladas, consulte [Paso 3: autorizar acceso al clúster](getting-started.md#getting-started.authorizeaccess) en esta guía.

## Regiones y zonas de disponibilidad
<a name="cluster-create-determine-requirements-region"></a>

Al ubicar sus clústeres de MemoryDB en una AWS región cercana a su aplicación, puede reducir la latencia. Si el clúster tiene varios nodos, ubicar los nodos en distintas zonas de disponibilidad puede reducir el impacto de los errores en el clúster.

Para obtener más información, consulte los siguientes temas:
+ [Elección de regiones y zonas de disponibilidad](regionsandazs.md)
+ [Mitigación de errores](faulttolerance.md)

# creación de un clúster
<a name="cluster.create"></a>

MemoryDB ofrece tres formas de crear un clúster. Para obtener más información, consulte [Paso 2: crear un clúster](getting-started.md#getting-started.createcluster).

# Visualización de los detalles de un clúster
<a name="clusters.viewdetails"></a>

Puede ver información detallada sobre uno o más clústeres mediante la consola de MemoryDB o la API de MemoryDB. AWS CLI

## Visualización de los detalles de un clúster de MemoryDB (consola)
<a name="clusters.viewdetails.con"></a>

El siguiente procedimiento detalla cómo consultar los detalles de un clúster de MemoryDB utilizando la consola de MemoryDB.

****

1. Inicie sesión en la consola de MemoryDB Consola de administración de AWS y ábrala en. [https://console.aws.amazon.com/memorydb/](https://console.aws.amazon.com/memorydb/)

1. Para ver los detalles de un clúster, elija el botón de opción situado a la izquierda del nombre del clúster y, a continuación, elija **Ver detalles**. También puede hacer clic directamente en el clúster para ver la página de detalles del clúster.

   La página de **detalles del clúster** muestra los detalles sobre el clúster, incluido el punto de conexión del clúster. Puede ver más detalles en las múltiples pestañas disponibles en la página de **detalles del clúster**. 

1. Elija la pestaña **Particiones y nodos** para elegir una lista de las particiones del clúster y el número de nodos en cada partición.

1. Para ver información específica sobre un nodo, expanda la partición en la siguiente tabla. Como alternativa, también puede buscar la partición mediante el cuadro de búsqueda. 

   Al hacer esto, se muestra información sobre cada nodo, incluida su zona de disponibilidad slots/keyspaces y su estado.

1. Seleccione la pestaña **Métricas** para supervisar sus procesos respectivos, como la utilización de la CPU y **la utilización de la CPU** **del motor**. Para obtener más información, consulte [Métricas de MemoryDB](metrics.memorydb.md).

1. Seleccione la pestaña **Red y seguridad** para ver los detalles del grupo de subredes y los grupos de seguridad.

   1. En el **grupo de subredes**, puede ver el nombre del grupo de subredes, un enlace a la VPC a la que pertenece la subred y el nombre de recurso de Amazon (ARN) del grupo de subredes.

   1. En **Grupos de seguridad**, puede ver el ID, el nombre y la descripción del grupo de seguridad.

1. Seleccione la pestaña **Mantenimiento e instantáneas** para ver los detalles de la configuración de las instantáneas.

   1. En **Instantánea**, puede ver si las instantáneas automatizadas están habilitadas, el período de retención de las instantáneas y el período de instantáneas.

   1. En **Instantáneas**, verá una lista de todas las instantáneas de este clúster, con el nombre de la instantánea, el tamaño, la cantidad de particiones y el estado.

   Para obtener más información, consulte [Instantánea y restauración](snapshots.md).

1. Seleccione las pestañas **Mantenimiento e instantáneas** para ver los detalles del período de mantenimiento, junto con las actualizaciones pendientes de ACL, refragmentación o servicio. Para obtener más información, consulte [Administración del mantenimiento](maintenance-window.md).

1. Seleccione la pestaña **Actualizaciones de servicio** para ver los detalles de cualquier actualización de servicio que se aplique a este clúster. Para obtener más información, consulte [Actualizaciones de los servicios de MemoryDB](service-updates.md).

1. Seleccione la pestaña **Etiquetas** para ver los detalles de cualquier etiqueta de asignación de recursos o costos que esté asociada a este clúster. Para obtener más información, consulte [Etiquetado de instantáneas](snapshots-tagging.md).

## Visualización de los detalles de un clúster (AWS CLI)
<a name="clusters.viewdetails.cli"></a>

Puede ver los detalles de un clúster mediante el AWS CLI `describe-clusters` comando. Si el parámetro `--cluster-name` se omite, se devolverán los detalles de varios clústeres, hasta `--max-results`. Si se incluye el parámetro `--cluster-name`, se devolverán detalles del clúster especificado. Puede limitar el número de registros que devuelve con el parámetro `--max-results`.

El siguiente código enumera los detalles de `my-cluster`.

```
aws memorydb describe-clusters --cluster-name my-cluster
```

El siguiente código enumera los detalles de hasta 25 clústeres.

```
aws memorydb describe-clusters --max-results 25
```

**Example**  
Para Linux, macOS o Unix:  

```
aws memorydb describe-clusters \
    --cluster-name my-cluster \
    --show-shard-details
```
Para Windows:  

```
aws memorydb describe-clusters ^
    --cluster-name my-cluster ^
    --show-shard-details
```
La siguiente salida JSON muestra la respuesta:  

```
{
    "Clusters": [
        {
            "Name": "my-cluster",
            "Description": "my cluster",
            "Status": "available",
            "NumberOfShards": 1,
            "Shards": [
                {
                    "Name": "0001",
                    "Status": "available",
                    "Slots": "0-16383",
                    "Nodes": [
                        {
                            "Name": "my-cluster-0001-001",
                            "Status": "available",
                            "AvailabilityZone": "us-east-1a",
                            "CreateTime": 1629230643.961,
                            "Endpoint": {
                                "Address": "my-cluster-0001-001.my-cluster.abcdef.memorydb.us-east-1.amazonaws.com",
                                "Port": 6379
                            }
                        },
                        {
                            "Name": "my-cluster-0001-002",
                            "Status": "available",
                            "CreateTime": 1629230644.025,
       	       	       	    "Endpoint":	{
       	       	       	       	"Address": "my-cluster-0001-002.my-cluster.abcdef.memorydb.us-east-1.amazonaws.com",
       	       	       	       	"Port":	6379
       	       	       	    }
                        }
                    ],
                    "NumberOfNodes": 2
                }
            ],
            "ClusterEndpoint": {
                "Address": "clustercfg.my-cluster.abcdef.memorydb.us-east-1.amazonaws.com",
                "Port": 6379
            },
            "NodeType": "db.r6g.large",
            "EngineVersion": "6.2",
            "EnginePatchVersion": "6.2.6",
            "ParameterGroupName": "default.memorydb-redis6",
            "ParameterGroupStatus": "in-sync",
            "SubnetGroupName": "default",
            "TLSEnabled": true,
            "ARN": "arn:aws:memorydb:us-east-1:000000000:cluster/my-cluster",
            "SnapshotRetentionLimit": 0,
            "MaintenanceWindow": "sat:06:30-sat:07:30",
            "SnapshotWindow": "04:00-05:00",
            "ACLName": "open-access",
            "DataTiering": "false",
            "AutoMinorVersionUpgrade": true,            
        }
```

Para obtener más información, consulte el tema AWS CLI sobre MemoryDB. [https://docs.aws.amazon.com/cli/latest/reference/memorydb/describe-clusters.html](https://docs.aws.amazon.com/cli/latest/reference/memorydb/describe-clusters.html)

## Visualización de detalles de un clúster (API de MemoryDB)
<a name="clusters.viewdetails.api"></a>

Puede ver los detalles de un clúster utilizando la acción `DescribeClusters` de la API de MemoryDB. Si se incluye el parámetro `ClusterName`, se devolverán detalles del clúster especificado. Si el parámetro `ClusterName` se omite, se devolverán los detalles de hasta `MaxResults` clústeres (el valor predeterminado es 100). El valor de `MaxResults` no puede ser inferior a 20 ni superior a 100.

El siguiente código enumera los detalles de `my-cluster`.

```
https://memory-db.us-east-1.amazonaws.com/
   ?Action=DescribeClusters
   &ClusterName=my-cluster
   &Version=2021-01-01
   &SignatureVersion=4
   &SignatureMethod=HmacSHA256
   &Timestamp=20210802T192317Z
   &X-Amz-Credential=<credential>
```

El siguiente código enumera los detalles de hasta 25 clústeres.

```
https://memory-db.us-east-1.amazonaws.com/
   ?Action=DescribeClusters
   &MaxResults=25
   &Version=2021-02-02
   &SignatureVersion=4
   &SignatureMethod=HmacSHA256
   &Timestamp=20210802T192317Z
   &X-Amz-Credential=<credential>
```

Para obtener más información, consulte el tema de referencia de la API de MemoryDB [https://docs.aws.amazon.com/memorydb/latest/APIReference/API_DescribeClusters.html](https://docs.aws.amazon.com/memorydb/latest/APIReference/API_DescribeClusters.html).

# Modificación de un clúster de MemoryDB
<a name="clusters.modify"></a>

Además de agregar o quitar nodos de un clúster, puede que haya veces en las que necesite realizar otros cambios en un clúster existente, como, por ejemplo, agregar un grupo de seguridad o cambiar el período de mantenimiento o un grupo de parámetros.

Recomendamos que el período de mantenimiento corresponda al momento de mínimo uso. Esto puede requerir alguna modificación de vez en cuando.

Cuando cambia los parámetros de un clúster, el cambio se aplica al clúster inmediatamente. Esto es cierto tanto si se modifica el propio grupo de parámetros del clúster como si se modifica el valor de un parámetro del grupo.

También puede actualizar la versión del motor de sus clústeres. Por ejemplo, puede seleccionar una nueva versión secundaria del motor y MemoryDB empezará a actualizar su clúster inmediatamente. 

## Utilización del Consola de administración de AWS
<a name="clusters.modifyclusters.viewdetails"></a>

**Pasos para modificar un clúster**

1. Inicie sesión en la consola de MemoryDB Consola de administración de AWS y ábrala en. [https://console.aws.amazon.com/memorydb/](https://console.aws.amazon.com/memorydb/)

1. En la lista de la esquina superior derecha, elija la AWS región en la que se encuentra el clúster que desea modificar.

1. En el panel de navegación de la izquierda, vaya a **Clústeres**. En el **detalle de clústeres**, seleccione el clúster con el botón de opción y vaya a **Acciones** y, a continuación, a **Modificar**. 

1. Aparece la página **Modificar**.

1. En la ventana **Modificar**, haga las modificaciones que desee. Las opciones son:
   + Description (Descripción)
   + Grupos de subredes
   + Grupos de seguridad de VPC.
   + Tipo de nodo
**nota**  
Si el clúster utiliza un tipo de nodo de la familia r6gd, solo puede elegir un tamaño de nodo diferente dentro de esa familia. Si elige un tipo de nodo de la familia r6gd, la organización de datos en niveles se habilitará automáticamente. Para obtener más información, consulte [Organización de datos en niveles](data-tiering.md).
   + Compatibilidad de versiones de Valkey o Redis OSS
   + Habilitar instantáneas automáticas
   + período de retención de instantáneas
   + período de instantáneas
   + período de mantenimiento
   + Tema para la notificación de SNS

1. Seleccione **Save changes (Guardar cambios)**.

También puede ir a la página de **detalles del clúster** y hacer clic en **modificar** para realizar modificaciones en el clúster. Si desea modificar secciones específicas del clúster, puede ir a la pestaña correspondiente de la página de **detalles del clúster** y hacer clic en **Modificar**. 

## Usando el AWS CLI
<a name="clusters.modify.cli"></a>

Puede modificar un clúster existente mediante la AWS CLI `update-cluster` operación. Para modificar un valor de configuración de un clúster, especifique el ID del clúster, el parámetro que desea cambiar y el nuevo valor del parámetro. El siguiente ejemplo cambia el período de mantenimiento de un clúster denominado `my-cluster` y aplica el cambio inmediatamente.

Para Linux, macOS o Unix:

```
aws memorydb update-cluster \
    --cluster-name my-cluster \
    --preferred-maintenance-window sun:23:00-mon:02:00
```

Para Windows:

```
aws memorydb update-cluster ^
    --cluster-name my-cluster ^
    --preferred-maintenance-window sun:23:00-mon:02:00
```

Para obtener más información, consulte [update-cluster](https://docs.aws.amazon.com/cli/latest/reference/memorydb/update-cluster.html) en la Referencia de AWS CLI comandos.

## Uso de la API de MemoryDB
<a name="clusters.modify.api"></a>

Puede modificar un clúster existente mediante la operación de la API MemoryDB. [UpdateCluster](https://docs.aws.amazon.com/memorydb/latest/APIReference/API_UpdateCluster.html) Para modificar un valor de configuración de un clúster, especifique el ID del clúster, el parámetro que desea cambiar y el nuevo valor del parámetro. El siguiente ejemplo cambia el período de mantenimiento de un clúster denominado `my-cluster` y aplica el cambio inmediatamente.

```
https://memory-db.us-east-1.amazonaws.com/
    ?Action=UpdateCluster
    &ClusterName=my-cluster
    &PreferredMaintenanceWindow=sun:23:00-mon:02:00
    &SignatureVersion=4
    &SignatureMethod=HmacSHA256
    &Timestamp=20210801T220302Z
    &X-Amz-Algorithm=Amazon4-HMAC-SHA256
    &X-Amz-Date=20210802T220302Z
    &X-Amz-SignedHeaders=Host
    &X-Amz-Expires=20210801T220302Z
    &X-Amz-Credential=<credential>
    &X-Amz-Signature=<signature>
```

## Activación de una actualización de varios motores de Redis OSS a Valkey
<a name="clusters.modifyclusters.cross-engine"></a>

Puede actualizar un clúster existente de Redis OSS al motor de Valkey mediante la consola, la API o la CLI. 

Si tiene un clúster existente de Redis OSS que utiliza el grupo de parámetros predeterminado, puede actualizarlo a Valkey especificando el nuevo motor y la nueva versión del motor con la API update-cluster.

Para Linux, macOS o Unix:

```
aws memorydb update-cluster \
   --cluster-name myCluster \
   --engine valkey \
   --engine-version 7.2
```

Para Windows:

```
aws memorydb update-cluster ^
   --cluster-name myCluster ^
   --engine valkey ^
   --engine-version 7.2
```

Si tiene un grupo de parámetros personalizado aplicado al clúster existente de Redis OSS que desea actualizar, también tendrá que incluir un grupo de parámetros de Valkey personalizado en la solicitud. El grupo de parámetros personalizados de Valkey introducido debe tener los mismos valores de parámetros estáticos de Redis OSS que el grupo de parámetros personalizados de Redis OSS existente.

Para Linux, macOS o Unix:

```
aws memorydb update-cluster \
   --cluster-name myCluster \
   --engine valkey \
   --engine-version 7.2 \
   --parameter-group-name myParamGroup
```

Para Windows:

```
aws memorydb update-cluster ^
   --cluster-name myCluster ^
   --engine valkey ^
   --engine-version 7.2 ^
   --parameter-group-name myParamGroup
```

# Agregar/eliminar nodos de un clúster
<a name="clusters.deletenode"></a>

Puede añadir o eliminar nodos de un clúster mediante la Consola de administración de AWS, la o la API AWS CLI MemoryDB.

## Usando la Consola de administración de AWS
<a name="clusters.deletenodeclusters.viewdetails"></a>

****

1. Inicie sesión en la consola de MemoryDB Consola de administración de AWS y ábrala en. [https://console.aws.amazon.com/memorydb/](https://console.aws.amazon.com/memorydb/)

1. En la lista de clústeres, elija el nombre del clúster del que desea agregar o eliminar un nodo.

1. En la pestaña **Particiones y nodos**, seleccione **Agregar o eliminar nodos**

1. En **Nuevo número de nodos**, introduzca el número de nodos que desea. 

1. Elija **Confirmar**.
**importante**  
Si establece el número de nodos en 1, dejará de estar habilitado para Multi-AZ. También puede optar por activar la **conmutación por error automática**.

## Usando el AWS CLI
<a name="clusters.deletenode.cli"></a>

1. Especifique los nombres de los nodos que desea eliminar. Para obtener más información, consulte [Visualización de los detalles de un clúster](clusters.viewdetails.md).

1. Utilice la operación `update-cluster` de la CLI con una lista de los nodos que desea quitar, como en el siguiente ejemplo.

   Para quitar nodos de un clúster a través de la interfaz de línea de comandos, utilice el comando `update-cluster` con los siguientes parámetros:
   + `--cluster-name` El ID del clúster del que desea quitar nodos.
   + `--replica-configuration`: permite establecer el número de réplicas:
     + `ReplicaCount`: defina esta propiedad para especificar el número de nodos de réplica que desea. 
   + `--region`Especifica la AWS región del clúster de la que desea eliminar los nodos.

   Para Linux, macOS o Unix:

   ```
   aws memorydb update-cluster \
       --cluster-name my-cluster \
       --replica-configuration \
           ReplicaCount=1 \
       --region us-east-1
   ```

   Para Windows:

   ```
   aws memorydb update-cluster ^
       --cluster-name my-cluster ^
       --replica-configuration ^
           ReplicaCount=1 ^
       --region us-east-1
   ```

Para obtener más información, consulte los AWS CLI temas [https://docs.aws.amazon.com/cli/latest/reference/memorydb/update-cluster.html](https://docs.aws.amazon.com/cli/latest/reference/memorydb/update-cluster.html).

## Uso de la API de MemoryDB
<a name="clusters.deletenode.api"></a>

Para eliminar nodos utilizando la API de MemoryDB, llame a la operación de la API `UpdateCluster` con el ID de clúster y una lista de los nodos que desea eliminar, tal y como se muestra a continuación:
+ `ClusterName` El ID del clúster del que desea quitar nodos.
+ `ReplicaConfiguration`: permite establecer el número de réplicas:
  + `ReplicaCount`: defina esta propiedad para especificar el número de nodos de réplica que desea. 
+ `Region`Especifica la AWS región del clúster de la que desea eliminar un nodo.

Para obtener más información, consulte [UpdateCluster](https://docs.aws.amazon.com/memorydb/latest/APIReference/API_UpdateCluster.html).

# Acceso al clúster
<a name="accessing-memorydb"></a>

Las instancias de MemoryDB se han diseñado para obtener acceso a ellos a través de una instancia de Amazon EC2.

Puede acceder al nodo de MemoryDB desde una instancia de Amazon EC2 en la misma Amazon VPC. O, utilizando la conexión de emparejamiento de VPC, puede obtener acceso al nodo de MemoryDB desde una Amazon EC2 en otra Amazon VPC.

**Topics**
+ [Conceder acceso a su clúster](#grant-access)
+ [Acceso a los recursos de MemoryDB desde fuera de AWS](#access-from-outside-aws)

## Conceder acceso a su clúster
<a name="grant-access"></a>

Puede conectarse al clúster de MemoryDB solo desde una instancia de Amazon EC2 que se ejecuta en la misma Amazon VPC. En este caso, necesitará conceder acceso de red al clúster.

**Para conceder acceso de red desde un grupo de seguridad de Amazon VPC a un clúster**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon EC2 en [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. En el panel de navegación de la izquierda, debajo de **Network & Security**, elija **Security Groups**.

1. En la lista de grupos de seguridad, elija el grupo de seguridad para su Amazon VPC. A menos que haya creado un grupo de seguridad para que lo utilice MemoryDB, este grupo de seguridad se denominará *default*.

1. Elija la pestaña **Inbound** y haga lo siguiente:

   1. Elija **Editar**.

   1. Seleccione **Agregar regla**.

   1. En la columna **Type**, elija **Custom TCP rule**.

   1. En el cuadro **Port range**, escriba el número de puerto para su nodo de clúster. Este número debe ser el mismo que especificó cuando lanzó el clúster. El puerto predeterminado para Valkey y Redis OSS es **6379**.

   1. En el cuadro **Origen**, elija **Cualquier lugar** que tenga el rango de puertos (0.0.0.0/0) para que cualquier instancia de Amazon EC2 que lance en su Amazon VPC pueda conectarse a sus nodos de MemoryDB.
**importante**  
Al abrir el clúster de MemoryDB a 0.0.0.0/0 no se expone el clúster a Internet, ya que no tiene ninguna dirección IP pública y, por lo tanto, no se puede acceder a este desde fuera de la VPC. Sin embargo, el grupo de seguridad predeterminado se puede aplicar a otras instancias de Amazon EC2 en la cuenta del cliente y dichas instancias pueden tener una dirección IP pública. Si se está ejecutando algo en el puerto predeterminado, ese servicio podría exponerse de forma involuntaria. Por lo tanto, recomendamos crear un grupo de seguridad de VPC para que lo utilice exclusivamente MemoryDB. Para obtener más información, consulte [Grupos de seguridad personalizados](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html#creating-your-own-security-groups).

   1. Seleccione **Save**.

Al lanzar una instancia de Amazon EC2 en su Amazon VPC, esa instancia podrá conectarse a su clúster de MemoryDB.

## Acceso a los recursos de MemoryDB desde fuera de AWS
<a name="access-from-outside-aws"></a>

MemoryDB es un servicio diseñado para que se utilice internamente en su VPC. Se desaconseja el acceso externo debido a la latencia del tráfico de Internet y a los riesgos de seguridad. Sin embargo, si se requiere acceso externo a MemoryDB para fines de desarrollo o pruebas, puede obtenerse a través de una VPN.

Mediante la AWS Client VPN, puede permitir el acceso externo a los nodos de MemoryDB con los siguientes beneficios:
+ Acceso restringido a usuarios aprobados o claves de autenticación
+ Tráfico cifrado entre Client VPN y el punto de conexión de VPN de AWS
+ Acceso limitado a subredes o nodos específicos
+ Revocación sencilla del acceso de los usuarios o claves de autenticación
+ Conexiones de auditoría

Los siguientes procedimientos muestran cómo:

**Topics**
+ [Crear una entidad de certificación](#create-cert)
+ [Configuración de componentes de AWS Client VPN](#configure-vpn-components)
+ [Configurar el cliente de VPN](#configure-vpn-client)

### Crear una entidad de certificación
<a name="create-cert"></a>

Es posible crear una entidad de certificación (CA) utilizando diferentes técnicas o herramientas. Recomendamos la utilidad easy-rsa, proporcionada por el proyecto [OpenVPN](https://openvpn.net/community-resources/openvpn-project/) . Independientemente de la opción que elija, asegúrese de mantener protegidas las claves. El siguiente procedimiento descarga los scripts de easy-rsa, y crea la entidad de certificación y las claves para autenticar el primer cliente de VPN:
+ Para crear los certificados iniciales, abra un terminal y proceda del modo siguiente:
  + `git clone` [https://github.com/OpenVPN/easy-rsa](https://github.com/OpenVPN/easy-rsa)
  + `cd easy-rsa`
  + `./easyrsa3/easyrsa init-pki`
  + `./easyrsa3/easyrsa build-ca nopass`
  + `./easyrsa3/easyrsa build-server-full server nopass`
  + `./easyrsa3/easyrsa build-client-full client1.domain.tld nopass`

  Se creará un subdirectorio **pki** que contiene los certificados bajo **easy-rsa**.
+ Envíe el certificado del servidor a AWS Certificate manager (ACM):
  + En la consola de ACM, seleccione **Certificate Manager**.
  + Seleccione **Importar certificado**.
  + Especifique el certificado de clave pública disponible en el archivo `easy-rsa/pki/issued/server.crt` en el campo **Cuerpo del certificado**.
  + Pegue la clave privada disponible en `easy-rsa/pki/private/server.key` en el campo **Clave privada del certificado**. Asegúrese de seleccionar todas las líneas entre `BEGIN AND END PRIVATE KEY` (incluidas las líneas `BEGIN` y `END`).
  + Pegue la clave pública de CA disponible en el archivo `easy-rsa/pki/ca.crt` en el campo **Cadena de certificados**.
  + Seleccione **Revisar e importar**.
  + Seleccione **Importar**.

  Para enviar los certificados del servidor a ACM mediante la AWS CLI, ejecute el siguiente comando: `aws acm import-certificate --certificate fileb://easy-rsa/pki/issued/server.crt --private-key file://easy-rsa/pki/private/server.key --certificate-chain file://easy-rsa/pki/ca.crt --region region`.

  Anote el ARN del certificado para usarlo en el futuro.

### Configuración de componentes de AWS Client VPN
<a name="configure-vpn-components"></a>

**Mediante la consola de AWS**

En la consola de AWS, seleccione **Servicios** y, a continuación, **VPC**.

En **Red virtual privada**, seleccione **Puntos de conexión de VPN de cliente** y proceda del modo siguiente:

**Configuración de componentes de AWS Client VPN**
+ Seleccione **Crear punto de conexión de VPN de cliente**.
+ Especifique las opciones siguientes:
  + **CIDR de IPv4 de cliente**: utilice una red privada con una máscara de red de al menos el intervalo /22. Asegúrese de que la subred seleccionada no entra en conflicto con las direcciones de las redes de la VPC. Ejemplo 10.0.0.0/22.
  + En **ARN del certificado del servidor**, seleccione el ARN del certificado importado previamente.
  + Seleccione **Utilizar la autenticación mutua**.
  + En **ARN del certificado de cliente**, seleccione el ARN del certificado importado previamente.
  + Seleccione **Crear punto de conexión de VPN de cliente**.

**Uso de AWS CLI**

Ejecuta el siguiente comando:

`aws ec2 create-client-vpn-endpoint --client-cidr-block "10.0.0.0/22" --server-certificate-arn arn:aws:acm:us-east-1:012345678912:certificate/0123abcd-ab12-01a0-123a-123456abcdef --authentication-options Type=certificate-authentication,,MutualAuthentication={ClientRootCertificateChainArn=arn:aws:acm:us-east-1:012345678912:certificate/123abcd-ab12-01a0-123a-123456abcdef} --connection-log-options Enabled=false `

Ejemplo de salida:

`"ClientVpnEndpointId": "cvpn-endpoint-0123456789abcdefg", "Status": { "Code": "pending-associate" }, "DnsName": "cvpn-endpoint-0123456789abcdefg.prod.clientvpn.us-east-1.amazonaws.com" } `

**Asociar las redes de destino al punto de conexión de VPN**
+ Seleccione el nuevo punto de conexión de VPN y, a continuación, seleccione la pestaña **Asociaciones**.
+ Seleccione **Asociar** y especifique las siguientes opciones.
  + **VPC**: seleccione la VPC del clúster de MemoryDB.
  + Seleccione una de las redes del clúster de MemoryDB. En caso de duda, revise las redes en **Grupos de subredes** en el panel de MemoryDB.
  + Seleccione **Asociar**. Si es necesario, repita los pasos para las redes restantes.

**Uso de AWS CLI**

Ejecuta el siguiente comando:

`aws ec2 associate-client-vpn-target-network --client-vpn-endpoint-id cvpn-endpoint-0123456789abcdefg --subnet-id subnet-0123456789abdcdef`

Ejemplo de salida:

`"Status": { "Code": "associating" }, "AssociationId": "cvpn-assoc-0123456789abdcdef" } `

**Revisar el grupo de seguridad de VPN**

El punto de conexión de VPN adoptará automáticamente el grupo de seguridad predeterminado de la VPC. Compruebe las reglas de entrada y salida y confirme si el grupo de seguridad permite el tráfico desde la red VPN (definida en la opción Punto de conexión de VPN) a las redes de MemoryDB en los puertos de servicio (de forma predeterminada, 6379 para Redis).

Si necesita cambiar el grupo de seguridad asignado al punto de conexión de VPN, proceda de la siguiente manera:
+ Seleccione el grupo de seguridad actual
+ Seleccione **Aplicar grupo de seguridad**.
+ Seleccione el nuevo grupo de seguridad.

**Uso de AWS CLI**

Ejecuta el siguiente comando:

`aws ec2 apply-security-groups-to-client-vpn-target-network --client-vpn-endpoint-id cvpn-endpoint-0123456789abcdefga  --vpc-id vpc-0123456789abdcdef --security-group-ids sg-0123456789abdcdef`

Ejemplo de salida:

`"SecurityGroupIds": [ "sg-0123456789abdcdef" ] } `

**nota**  
El grupo de seguridad de MemoryDB también necesita permitir el tráfico procedente de los clientes de VPN. Las direcciones de los clientes se enmascararán con la dirección del punto de conexión de VPN, de acuerdo con la red de la VPC. Por lo tanto, tenga en cuenta la red de la VPC (no la red de los clientes de VPN) cuando cree la regla de entrada en el grupo de seguridad de MemoryDB.

**Autorizar el acceso de VPN a las redes de destino**

En la pestaña **Autorización** seleccione **Autorizar entrada** y especifique lo siguiente:
+ Red de destino para habilitar el acceso: utilice 0.0.0.0/0 para permitir el acceso a cualquier red (incluido Internet) o restrinja las redes o hosts de MemoryDB.
+ En **Conceder acceso a:**, seleccione **Permitir el acceso a todos los usuarios**.
+ Seleccione **Añadir reglas de autorización**.

**Uso de AWS CLI**

Ejecuta el siguiente comando:

`aws ec2 authorize-client-vpn-ingress --client-vpn-endpoint-id cvpn-endpoint-0123456789abcdefg --target-network-cidr 0.0.0.0/0 --authorize-all-groups`

Ejemplo de salida: 

`{ "Status": { "Code": "authorizing" } }`

**Permitir el acceso a Internet desde los clientes de VPN**

Si necesita navegar por Internet a través de la VPN, debe crear una ruta adicional. Seleccione la pestaña **Route Table (Tabla de ruteo)** y, a continuación, seleccione **Create Route (Crear ruta)**:
+ Destino de la ruta: 0.0.0.0/0
+ **Target VPC Subnet ID (ID de subred de la VPC de destino)**: seleccione una de las subredes asociadas con acceso a Internet.
+ Seleccione **Create Route (Crear ruta)**.

**Uso de AWS CLI**

Ejecuta el siguiente comando:

`aws ec2 create-client-vpn-route --client-vpn-endpoint-id cvpn-endpoint-0123456789abcdefg --destination-cidr-block 0.0.0.0/0 --target-vpc-subnet-id subnet-0123456789abdcdef`

Ejemplo de salida:

`{ "Status": { "Code": "creating" } } `

### Configurar el cliente de VPN
<a name="configure-vpn-client"></a>

En el panel de AWS Client VPN, seleccione el punto de conexión de VPN creado recientemente y seleccione **Download Client Configuration** (Descargar configuración del cliente). Copie el archivo de configuración y los archivos `easy-rsa/pki/issued/client1.domain.tld.crt` y `easy-rsa/pki/private/client1.domain.tld.key`. Edite el archivo de configuración y cambie o agregue los siguientes parámetros:
+ cert: agregue una nueva línea con el parámetro cert apuntando al archivo `client1.domain.tld.crt`. Utilice la ruta completa al archivo. Ejemplo:: `cert /home/user/.cert/client1.domain.tld.crt`
+ cert: key: agregue una nueva línea con el parámetro key apuntando al archivo `client1.domain.tld.key`. Utilice la ruta completa al archivo. Ejemplo:: `key /home/user/.cert/client1.domain.tld.key`

Establezca la conexión de VPN con el comando: `sudo openvpn --config downloaded-client-config.ovpn`

**Revocar el acceso**

Si necesita invalidar el acceso de una clave de cliente concreta, la clave debe revocarse en la CA. A continuación, envíe la lista de revocación a AWS Client VPN.

Revocar la clave con easy-rsa: 
+ `cd easy-rsa`
+ `./easyrsa3/easyrsa revoke client1.domain.tld`
+ Especifique "yes" (sí) para continuar o escriba cualquier otra entrada para cancelar.

  `Continue with revocation: `yes` ... * `./easyrsa3/easyrsa gen-crl`
+ Se ha creado una CRL actualizada. Archivo CRL: `/home/user/easy-rsa/pki/crl.pem` 

Importar la lista de revocación a AWS Client VPN:
+ En la Consola de administración de AWS, seleccione **Services (Servicios)** y, a continuación, **VPC**.
+ Seleccione **Puntos de conexión de VPN de cliente**.
+ Seleccione el punto de conexión de Client VPN y, a continuación, seleccione **Actions (Acciones)** -> **Import Client Certificate CRL (Importar CRL de certificado de cliente)**.
+ Pegue el contenido del archivo `crl.pem`. 

**Uso de AWS CLI**

Ejecuta el siguiente comando:

`aws ec2 import-client-vpn-client-certificate-revocation-list --certificate-revocation-list file://./easy-rsa/pki/crl.pem --client-vpn-endpoint-id cvpn-endpoint-0123456789abcdefg `

Ejemplo de salida:

`Example output: { "Return": true } `

# Búsqueda de puntos de conexión
<a name="endpoints"></a>

Su aplicación se conecta a su clúster mediante el punto de conexión. Un punto de conexión es una dirección única del clúster. Utilice el *punto de conexión del clúster* para todas las operaciones. 

Las secciones siguientes le guiarán en el proceso de detección de los puntos de conexión que necesita.

## Búsqueda del punto de conexión para un clúster de MemoryDB (Consola de administración de AWS)
<a name="endpoints.find.console"></a>

**Para buscar el punto de conexión de un clúster de MemoryDB**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de MemoryDB en [https://console.aws.amazon.com/memorydb/](https://console.aws.amazon.com/memorydb/).

1. En el panel de navegación, elija **Clusters (clústeres)**.

   Aparecerá la pantalla de clústeres con una lista de clústeres. Haga clic en el clúster al que desea conectarse.

1. Para buscar el punto de conexión del clúster, elija el nombre del clúster (no el botón de opción).

1. El **punto de conexión del clúster** se muestra en **Detalles del clúster**. Para copiarlo, elija el ícono *copiar* a la izquierda del punto de conexión. 

## Búsqueda del punto de conexión para un clúster de MemoryDB (CLI de AWS)
<a name="endpoints.find.cli"></a>

Puede usar el comando `describe-clusters` para detectar el punto de conexión de un clúster. El comando devuelve el punto de conexión del clúster. 

La siguiente operación recupera el punto de conexión del clúster, que en este ejemplo se representa como un *ejemplo* para el clúster `mycluster`. 

Devuelve la siguiente respuesta JSON:

```
aws memorydb describe-clusters \
  --cluster-name mycluster
```

Para Windows:

```
aws memorydb describe-clusters ^
   --cluster-name mycluster
```

```
{
    "Clusters": [
        {
            "Name": "my-cluster",
            "Status": "available",
            "NumberOfShards": 1,
            "ClusterEndpoint": {
                "Address": "clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com",
                "Port": 6379
            },
            "NodeType": "db.r6g.large",
            "EngineVersion": "6.2",
            "EnginePatchVersion": "6.2.4",
            "ParameterGroupName": "default.memorydb-redis6",
            "ParameterGroupStatus": "in-sync",
            "SubnetGroupName": "my-sg",
            "TLSEnabled": true,
            "ARN": "arn:aws:memorydb:us-east-1:zzzexamplearn:cluster/my-cluster",
            "SnapshotRetentionLimit": 0,
            "MaintenanceWindow": "wed:03:00-wed:04:00",
            "SnapshotWindow": "04:30-05:30",
            "ACLName": "my-acl",
            "AutoMinorVersionUpgrade": true
        }
    ]
}
```

Para obtener más información, consulte [describe-clusters](https://docs.aws.amazon.com/cli/latest/reference/memorydb/describe-clusters.html).

## Búsqueda del punto de conexión para un clúster de MemoryDB (API de MemoryDB)
<a name="endpoints.find.api"></a>

Puede usar la API de MemoryDB para detectar el punto de conexión de un clúster.

### Búsqueda del punto de conexión para un clúster de MemoryDB (API de MemoryDB)
<a name="endpoints.find.api.clusters"></a>

Puede usar la API de MemoryDB para detectar el punto de conexión de un clúster con la acción `DescribeClusters`. La acción devuelve el punto de conexión del clúster. 

La siguiente operación recupera el punto de conexión del clúster `mycluster`. 

```
https://memory-db.us-east-1.amazonaws.com/
    ?Action=DescribeClusters
    &ClusterName=mycluster
    &SignatureVersion=4
    &SignatureMethod=HmacSHA256
    &Timestamp=20210802T192317Z
    &Version=2021-01-01
    &X-Amz-Credential=<credential>
```

Para obtener más información, consulte [DescribeClusters](https://docs.aws.amazon.com/memorydb/latest/APIReference/API_DescribeClusters.html).

# Uso de particiones
<a name="shards"></a>

Una partición es una colección de uno a seis nodos. 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 500 nodos por clúster. Esta configuración de clúster puede variar desde 500 particiones y 0 réplicas hasta 100 particiones y 4 réplicas, que es el número máximo de réplicas permitido. Los datos del clúster están particionados en las distintas particiones del clúster. Si hay más de un nodo en una partición, esta implementa la reproducción con un nodo, siendo el nodo principal de lectura/escritura y los demás, nodos de réplica de solo lectura.

Cuando crea un clúster de MemoryDB usando Consola de administración de AWS, debe especificar el número de particiones del clúster y el número de nodos de las particiones. Para obtener más información, consulte [Creación de un clúster de MemoryDB](getting-started.md#clusters.create).

Los nodos de las particiones tienen las mismas especificaciones de memoria, almacenamiento y computación. La API de MemoryDB le permite controlar los atributos de todo el clúster, como el número de nodos, la configuración de seguridad y los periodos de mantenimiento del sistema.

Para obtener más información, consulte [Cambios en las particiones sin conexión para MemoryDB](cluster-resharding-offline.md) y [Cambios en las particiones con conexión para MemoryDB](cluster-resharding-online.md).

## Búsqueda del nombre de una partición
<a name="shard-find-id"></a>

Puede encontrar el nombre de una partición utilizando la Consola de administración de AWS, la AWS CLI o la API de MemoryDB.

### Uso de Consola de administración de AWS
<a name="shard-find-id-con"></a>

El siguiente procedimiento utiliza la Consola de administración de AWS para buscar los nombres de las particiones de un clúster de MemoryDB.

****

1. Inicie sesión en la Consola de administración de AWS y abra la consola de MemoryDB en [https://console.aws.amazon.com/memorydb/](https://console.aws.amazon.com/memorydb/).

1. En el panel de navegación izquierdo, elija **Clústeres**.

1. Elija el clúster en **Nombre** cuyos nombres de particiones desee buscar.

1. En la pestaña **Particiones y nodos**, consulte la lista de particiones en **Nombre**. También puede ampliar cada uno de ellos para ver los detalles de sus nodos.

### Uso de AWS CLI
<a name="shard-find-id-cli"></a>

Para encontrar los nombres de las particiones (particiones) para los clústeres de MemoryDB, utilice la operación de la AWS CLI `describe-clusters` con el siguiente parámetro opcional.
+ **`--cluster-name`**: un parámetro opcional que, cuando se utiliza, limita los resultados a los detalles del clúster especificado. Si se omite este parámetro, se devuelven los detalles de hasta 100 clústeres.
+ **`--show-shard-details`**: devuelve los detalles de las particiones, incluidos sus nombres.

Este comando devuelve los detalles de `my-cluster`.

Para Linux, macOS o Unix:

```
aws memorydb describe-clusters \
    --cluster-name my-cluster
    --show-shard-details
```

Para Windows:

```
aws memorydb describe-clusters ^
    --cluster-name my-cluster
    --show-shard-details
```

Devuelve la siguiente respuesta JSON:

Se agregan saltos de línea para facilitar la lectura.

```
{
    "Clusters": [
        {
            "Name": "my-cluster",
            "Status": "available",
            "NumberOfShards": 1,
            "Shards": [
                {
                    "Name": "0001",
                    "Status": "available",
                    "Slots": "0-16383",
                    "Nodes": [
                        {
                            "Name": "my-cluster-0001-001",
                            "Status": "available",
                            "AvailabilityZone": "us-east-1a",
                            "CreateTime": "2021-08-21T20:22:12.405000-07:00",
                            "Endpoint": {
                                "Address": "clustercfg.my-cluster.xxxxx.memorydb.us-east-1.amazonaws.com",
                                "Port": 6379
                            }
                        },
                        {
                            "Name": "my-cluster-0001-002",
                            "Status": "available",
                            "AvailabilityZone": "us-east-1b",
                            "CreateTime": "2021-08-21T20:22:12.405000-07:00",
                            "Endpoint": {
                                "Address": "clustercfg.my-cluster.xxxxx.memorydb.us-east-1.amazonaws.com",
                                "Port": 6379
                            }
                        }
                    ],
                    "NumberOfNodes": 2
                }
            ],
            "ClusterEndpoint": {
                "Address": "clustercfg.my-cluster.xxxxx.memorydb.us-east-1.amazonaws.com",
                "Port": 6379
            },
            "NodeType": "db.r6g.large",
            "EngineVersion": "6.2",
            "EnginePatchVersion": "6.2.6",
            "ParameterGroupName": "default.memorydb-redis6",
            "ParameterGroupStatus": "in-sync",
            "SubnetGroupName": "my-sg",
            "TLSEnabled": true,
            "ARN": "arn:aws:memorydb:us-east-1:xxxxxexamplearn:cluster/my-cluster",
            "SnapshotRetentionLimit": 0,
            "MaintenanceWindow": "wed:03:00-wed:04:00",
            "SnapshotWindow": "04:30-05:30",
            "ACLName": "my-acl",
            "DataTiering": "false",
            "AutoMinorVersionUpgrade": true
        }
    ]
}
```

### Uso de la API de MemoryDB
<a name="shard-find-id-api"></a>

Para encontrar los identificadores de particiones para los clústeres de MemoryDB, utilice la operación de API `DescribeClusters` con el siguiente parámetro opcional.
+ **`ClusterName`**: un parámetro opcional que, cuando se utiliza, limita los resultados a los detalles del clúster especificado. Si se omite este parámetro, se devuelven los detalles de hasta 100 clústeres.
+ **`ShowShardDetails`**: devuelve los detalles de las particiones, incluidos sus nombres.

**Example**  
Este comando devuelve los detalles de `my-cluster`.  
Para Linux, macOS o Unix:  

```
https://memory-db.us-east-1.amazonaws.com/
   ?Action=DescribeClusters
   &ClusterName=sample-cluster
   &ShowShardDetails=true
   &Version=2021-01-01
   &SignatureVersion=4
   &SignatureMethod=HmacSHA256
   &Timestamp=20210802T192317Z
   &X-Amz-Credential=<credential>
```