

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.

# Clústeres de escalado automático de Valkey y Redis OSS
<a name="AutoScaling"></a>

## Requisitos previos
<a name="AutoScaling-Prerequisites"></a>

ElastiCache Auto Scaling se limita a lo siguiente:
+ Clústeres de Valkey o Redis OSS (modo de clúster habilitado) que ejecutan Valkey 7.2 y versiones posteriores o Redis OSS 6.0 y versiones posteriores
+ Clústeres de organización de datos en niveles (modo de clúster habilitado) que ejecutan Valkey 7.2 y versiones posteriores o Redis OSS 7.0.7 y versiones posteriores 
+ Tamaños de instancia: grande XLarge, 2 XLarge
+ Familias de tipos de instancia: R7g, R6g, R6gd, R5, M7g, M6g, M5, C7gn
+ Auto Scaling in no ElastiCache es compatible con los clústeres que se ejecutan en almacenes de datos globales, Outposts o Zonas Locales.

## Gestión automática de la capacidad con ElastiCache Auto Scaling con Valkey o Redis OSS
<a name="AutoScaling-Managing"></a>

ElastiCache el escalado automático con Valkey o Redis OSS es la capacidad de aumentar o disminuir automáticamente los fragmentos o réplicas deseados en su servicio. ElastiCache ElastiCache aprovecha el servicio Application Auto Scaling para proporcionar esta funcionalidad. Para obtener más información, consulte [Auto Scaling de aplicaciones](https://docs.aws.amazon.com/autoscaling/application/userguide/what-is-application-auto-scaling.html). Para utilizar el escalado automático, debe definir y aplicar una política de escalado que utilice CloudWatch las métricas y los valores objetivo que usted asigne. ElastiCache el escalado automático utiliza la política para aumentar o disminuir la cantidad de instancias en respuesta a las cargas de trabajo reales. 

Puede utilizarla Consola de administración de AWS para aplicar una política de escalado basada en una métrica predefinida. Se define una `predefined metric` en una enumeración, de manera que puede especificarla por el nombre en el código o utilizarla en la Consola de administración de AWS. Las métricas personalizadas no se pueden seleccionar utilizando la Consola de administración de AWS. Como alternativa, puede usar la API Application Auto Scaling AWS CLI o la API para aplicar una política de escalado basada en una métrica predefinida o personalizada. 

ElastiCache para Valkey y Redis, el OSS admite el escalado de las siguientes dimensiones:
+ **Particiones**: agregar/eliminar de forma automática particiones en el clúster de forma similar al cambio de particiones manual en línea. En este caso, el escalado ElastiCache automático activa el escalado en tu nombre.
+ **Réplicas**: se add/remove replicas in the cluster similar to manual Increase/Decrease replica operations. ElastiCache auto scaling for Valkey and Redis OSS adds/removes replica automáticamente de manera uniforme en todos los fragmentos del clúster.

ElastiCache para Valkey y Redis, el OSS admite los siguientes tipos de políticas de escalado automático:
+ [Políticas de escalado de seguimiento de destino](AutoScaling-Scaling-Policies-Target.md)— Aumente o disminuya la cantidad de shards/replicas unidades que ejecuta su servicio en función del valor objetivo para una métrica específica. Se asemeja a los termostatos que se utilizan para mantener la temperatura del hogar. Se selecciona una temperatura y el termostato hace el resto.
+ [Escalado programado para su aplicación.](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-scheduled-scaling.html) — ElastiCache para Valkey y Redis, el escalado automático de OSS puede aumentar o disminuir el número de veces shards/replicas que se ejecuta su servicio en función de la fecha y la hora.

![\[Imagen de autoescalado ElastiCache para Valkey y Redis OSS\]](http://docs.aws.amazon.com/es_es/AmazonElastiCache/latest/dg/images/Auto-scaling.png)


Los siguientes pasos resumen el proceso de autoescalado ElastiCache de Valkey y Redis OSS, como se muestra en el diagrama anterior: 

1. Usted crea una política ElastiCache de escalado automático para su grupo de replicación.

1. ElastiCache el escalado automático crea un par de CloudWatch alarmas en tu nombre. Cada par representa los límites superiores e inferiores de las métricas. Estas CloudWatch alarmas se activan cuando la utilización real del clúster se desvía de la utilización objetivo durante un período prolongado. Puede ver las alarmas en la consola.

1. Si el valor de la métrica configurada supera su uso objetivo (o cae por debajo del objetivo) durante un período de tiempo específico, CloudWatch activa una alarma que invoca el escalado automático para evaluar su política de escalado.

1. ElastiCache el escalado automático emite una solicitud de modificación para ajustar la capacidad del clúster. 

1. ElastiCache procesa la solicitud de modificación, aumentando (o disminuyendo) de forma dinámica la Shards/Replicas capacidad del clúster para que se acerque al uso deseado. 

 Para entender cómo funciona ElastiCache Auto Scaling, supongamos que tiene un clúster denominado`UsersCluster`. Al supervisar las CloudWatch métricas`UsersCluster`, se determinan los fragmentos máximos que necesita el clúster cuando el tráfico está en su punto máximo y los fragmentos mínimos cuando el tráfico está en su punto más bajo. También decide un valor objetivo para el uso de la CPU en el `UsersCluster` clúster. ElastiCache el escalado automático utiliza su algoritmo de seguimiento de objetivos para garantizar que las particiones aprovisionadas se ajusten según sea necesario, de `UsersCluster` modo que la utilización se mantenga en el valor objetivo o cerca de él. 

**nota**  
El escalado puede llevar un tiempo considerable y requerir recursos de clúster adicionales para que los fragmentos se reequilibren. ElastiCache Auto Scaling modifica la configuración de los recursos solo cuando la carga de trabajo real permanece elevada (o reducida) durante un período prolongado de varios minutos. El algoritmo de seguimiento de destino del escalado automático intenta mantener el objetivo de utilización en el valor elegido o en valores próximos a él a largo plazo. 

# Políticas de Auto Scaling
<a name="AutoScaling-Policies"></a>

Una directiva de escalado tiene los siguientes componentes:
+ Una métrica de destino: es la métrica de CloudWatch que utiliza el escalado automático de ElastiCache para Valkey y Redis OSS para determinar cuándo escalar y en qué medida. 
+ Capacidad mínima y máxima: el número mínimo y máximo de particiones o réplicas que se utilizarán para el escalado. 
**importante**  
Al crear la política de Auto Scaling, si la capacidad actual es superior a la capacidad máxima configurada, reducimos verticalmente hasta estar en la capacidad máxima durante la creación de la política. Del mismo modo, si la capacidad actual es inferior a la capacidad mínima configurada, escalamos horizontalmente hasta la capacidad mínima. 
+ Un periodo de recuperación: la cantidad de tiempo, en segundos, tras completarse una actividad de reducción o escalado horizontal antes de que pueda comenzar otra actividad de escalado horizontal. 
+ Un rol vinculado a servicios: un rol de AWS Identity and Access Management (IAM) que se encuentra vinculado a un servicio de AWS específico. Un rol vinculado a servicios incluye todos los permisos que requiere el servicio para llamar a otros servicios de AWS en su nombre. El escalado automático de ElastiCache genera este rol, `AWSServiceRoleForApplicationAutoScaling_ElastiCacheRG`, de forma automática en su nombre. 
+ Habilitar o deshabilitar actividades de reducción horizontal: permite habilitar o deshabilitar actividades de reducción horizontal para una política.

**Topics**
+ [Métrica de destino para Auto Scaling](#AutoScaling-TargetMetric)
+ [Capacidad mínima y máxima](#AutoScaling-MinMax)
+ [Periodo de recuperación](#AutoScaling-Cooldown)
+ [Activar o desactivar actividades de escalado descendente](#AutoScaling-enable-disable-scale-in)

## Métrica de destino para Auto Scaling
<a name="AutoScaling-TargetMetric"></a>

En este tipo de política, una métrica predefinida o personalizada y un valor de destino de la métrica se especifica en una configuración de la política de escalado de seguimiento de destino. El escalado automático de ElastiCache para Valkey y Redis OSS crea y administra las alarmas de CloudWatch que desencadenan la política de escalado y calcula el ajuste de escalado en función de la métrica y el valor objetivo. La política de escalado agrega o elimina las particiones/réplicas en función de las necesidades para mantener la métrica en el valor objetivo especificado o en un valor próximo. Además de mantener la métrica próxima al valor de destino, la política de escalado de seguimiento de destino también se ajusta a las fluctuaciones de la métrica producidas por una carga de trabajo en constante cambio. Esta política también minimiza las fluctuaciones rápidas del número de particiones/réplicas disponibles de su clúster. 

Por ejemplo, considere una política de escalado que utilice la métrica `ElastiCachePrimaryEngineCPUUtilization` media predefinida. Esta política puede mantener la utilización de la CPU en el porcentaje de utilización especificado o en un valor próximo, como el 70 %. 

**nota**  
Para cada clúster, puede crear solo una política de Auto Scaling para cada métrica de destino. 

## Capacidad mínima y máxima
<a name="AutoScaling-MinMax"></a>

**Particiones**

Puede especificar el número máximo de particiones que se puede escalar mediante el escalado automático de ElastiCache para Valkey y Redis OSS. Este valor debe ser igual o inferior a 250 con un mínimo de 1. También puede especificar el número mínimo de particiones que va a administrar por medio del escalado automático. Este valor debe ser al menos 1, e igual o inferior al valor especificado para el máximo de 250 particiones. 

**Réplicas**

Puede especificar el número máximo de réplicas que va a administrar por medio del escalado automático de ElastiCache para Valkey y Redis OSS. Este valor debe ser igual o inferior a 5. También puede especificar el número mínimo de réplicas que va a administrar mediante el escalado automático. Este valor debe ser al menos 1, e igual o inferior al valor especificado para el máximo de 5 réplicas.

A fin de determinar el número mínimo y máximo de particiones/réplicas que necesite para el tráfico normal, pruebe la configuración de Auto Scaling con la tasa de tráfico esperada para su modelo. 

**nota**  
Las políticas de escalado automático de ElastiCache aumentan la capacidad del clúster hasta que alcanza el tamaño máximo definido o hasta que se apliquen los límites de servicio. Para solicitar un aumento del límite, consulte [AWS Service Limits](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) y elija el tipo de límite **Nodes per cluster per instance type** (Nodos por clúster por tipo de instancias). 

**importante**  
La reducción horizontal sucede cuando no hay tráfico. Si el tráfico de una variante es cero, ElastiCache reduce horizontalmente de forma automática al número mínimo de instancias especificadas.

## Periodo de recuperación
<a name="AutoScaling-Cooldown"></a>

Puede ajustar la capacidad de respuesta de una política de escalado de seguimiento de destino al agregar periodos de recuperación que afecten al escalado de su clúster. Un periodo de recuperación bloquea solicitudes de escalado descendente o ascendente posteriores hasta que vence el periodo. Esto ralentiza las eliminaciones de particiones o réplicas del clúster de ElastiCache para Valkey y Redis OSS para solicitudes de reducción horizontal y la creación de particiones o réplicas para solicitudes de escalado horizontal. Puede especificar los siguientes periodos de recuperación:
+ Una actividad de reducción horizontal reduce el número de particiones/réplicas del clúster. Un periodo de recuperación de escalado descendente especifica la cantidad de tiempo, en segundos, tras completarse una actividad de escalado descendente antes de que pueda comenzar otra actividad de escalado descendente.
+ Una actividad de escalado horizontal incrementa el número de particiones/réplicas del clúster. Un periodo de recuperación de escalado ascendente especifica la cantidad de tiempo, en segundos, tras completarse una actividad de escalado ascendente antes de que pueda comenzar otra actividad de escalado ascendente. 

Si no se especifica un periodo de recuperación de reducción o escalado horizontal, el valor predeterminado del escalado horizontal es de 600 segundos y de la reducción horizontal es de 900 segundos. 

## Activar o desactivar actividades de escalado descendente
<a name="AutoScaling-enable-disable-scale-in"></a>

Puede habilitar o deshabilitar actividades de escalado descendente para una política. La habilitación de actividades de reducción horizontal permite a la política de escalado eliminar particiones/réplicas. Al habilitarse actividades de escalado descendente, el periodo de recuperación de escalado descendente de la política de escalado se aplica a las actividades de escalado descendente. La deshabilitación de actividades de reducción horizontal impide a la política de escalado eliminar particiones/réplicas. 

**nota**  
Las actividades de escalado horizontal siempre se habilitan de modo que la política de escalado pueda crear particiones o réplicas de ElastiCache según sea necesario.

## Permisos de IAM requeridos para el escalado automático
<a name="AutoScaling-IAM-permissions"></a>

ElastiCache para Valkey y Redis OSS Auto Scaling es posible gracias a una combinación de ElastiCache CloudWatch, y Application Auto Scaling. APIs Los clústeres se crean y actualizan con ElastiCache, las alarmas se crean con CloudWatch y las políticas de escalado se crean con Application Auto Scaling. Además de los permisos de IAM estándar para crear y actualizar clústeres, el usuario de IAM que accede a la configuración de ElastiCache Auto Scaling debe tener los permisos adecuados para los servicios que admiten el escalado dinámico. En esta política más reciente, hemos añadido compatibilidad con el escalado vertical de Memcached con la acción `elasticache:ModifyCacheCluster`. Los usuarios de IAM deben contar con los permisos necesarios para utilizar las acciones que se muestran en la siguiente política de ejemplo: 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "application-autoscaling:*",
                "elasticache:DescribeReplicationGroups",
                "elasticache:ModifyReplicationGroupShardConfiguration",
                "elasticache:IncreaseReplicaCount",
                "elasticache:DecreaseReplicaCount",
                "elasticache:DescribeCacheClusters",
                "elasticache:DescribeCacheParameters",
                "cloudwatch:DeleteAlarms",
                "cloudwatch:DescribeAlarmHistory",
                "cloudwatch:DescribeAlarms",
                "cloudwatch:DescribeAlarmsForMetric",
                "cloudwatch:GetMetricStatistics",
                "cloudwatch:ListMetrics",
                "cloudwatch:PutMetricAlarm",
                "cloudwatch:DisableAlarmActions",
                "cloudwatch:EnableAlarmActions",
                "iam:CreateServiceLinkedRole",
                "sns:CreateTopic",
                "sns:Subscribe",
                "sns:Get*",
                "sns:List*"
            ],
            "Resource": "arn:aws:iam::123456789012:role/autoscaling-roles-for-cluster"
        }
    ]
}
```

------

## Rol vinculado a servicios
<a name="AutoScaling-SLR"></a>

El servicio de escalado automático OSS ElastiCache para Valkey y Redis también necesita permiso para describir sus clústeres y CloudWatch alarmas, y permisos para modificar su capacidad ElastiCache objetivo en su nombre. Si habilita el escalado automático para su clúster, crea un rol vinculado a servicios denominado `AWSServiceRoleForApplicationAutoScaling_ElastiCacheRG`. Esta función vinculada al servicio otorga permiso de escalado ElastiCache automático para describir las alarmas de sus políticas, monitorear la capacidad actual de la flota y modificar la capacidad de la flota. La función vinculada al servicio es la función predeterminada para el escalado ElastiCache automático. Para obtener más información, consulte [Funciones vinculadas a servicios ElastiCache para el autoescalado de Redis OSS en la Guía](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-service-linked-roles.html) del usuario de Application Auto Scaling.

## Prácticas recomendadas de Auto Scaling
<a name="AutoScaling-best-practices"></a>

Antes de registrarse en Auto Scaling, recomendamos lo siguiente:

1. **Utilizar solo una métrica de seguimiento**: identifique si el clúster tiene CPU o cargas de trabajo intensivas de datos y utilice una métrica predefinida correspondiente para definir la política de escalado. 
   + CPU del motor: `ElastiCachePrimaryEngineCPUUtilization` (dimensión de partición) o `ElastiCacheReplicaEngineCPUUtilization` (dimensión de réplica)
   + Uso de bases de datos: `ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage` Esta política de escalado funciona mejor si la política maxmemory está configurada como noeviction en el clúster.

   Le recomendamos que evite tener varias políticas por dimensión en el clúster. ElastiCache en el caso de Valkey y Redis OSS, el escalado automático ampliará el objetivo escalable si alguna política de seguimiento de objetivos está lista para ampliarla, pero solo se ampliará si todas las políticas de seguimiento de objetivos (con la parte de escalamiento interno habilitada) están preparadas para ampliarse. Si varias políticas indican al destino escalable que se realice una reducción o escalado horizontal al mismo tiempo, se escala en función de la política que proporciona la mayor capacidad para la reducción o el escalado horizontal.

1. **Métricas personalizadas para el seguimiento de destinos**: tenga cuidado al utilizar métricas personalizadas para el seguimiento de destinos, ya que el escalado automático es la característica más adecuada para el escalado horizontal en proporción a los cambios en las métricas elegidas para la política. Si esas métricas no cambian proporcionalmente a las acciones de escalado usadas para la creación de políticas, es posible que den lugar a acciones continuas de escalar horizontalmente o reducir horizontalmente que es posible que afecten a la disponibilidad o el costo. 

    En el caso de los clústeres de datos por niveles (tipos de instancias de la familia r6gd), evite utilizar métricas basadas en memoria para escalar.

1. **Escalamiento programado**: si detecta que su carga de trabajo es determinista (se extiende high/low en un momento específico), le recomendamos que utilice el escalado programado y configure la capacidad objetivo según las necesidades. El seguimiento de destino es el más adecuado para las cargas de trabajo no determinista y para que el clúster funcione con la métrica de destino requerida al escalar horizontalmente cuando necesite más recursos y reducir horizontalmente cuando necesite menos. 

1. **Desactivar el escalado interno: el escalado automático en** Target Tracking es más adecuado para clústeres con cargas increase/decrease de trabajo graduales, ya spikes/dip que las métricas pueden provocar oscilaciones consecutivas de escalado amplio/entrada. Para evitar tales oscilaciones, puede comenzar con la reducción horizontal deshabilitada y luego siempre puede reducir horizontalmente de forma manual según sus necesidades. 

1. **Pruebe su aplicación**: le recomendamos que pruebe su aplicación con sus Min/Max cargas de trabajo estimadas para determinar el mínimo y el máximo absolutos shards/replicas necesarios para el clúster y, al mismo tiempo, cree políticas de escalado para evitar problemas de disponibilidad. Auto Scaling puede escalar horizontalmente hasta el máximo y reducir horizontalmente en el umbral mínimo configurado para el destino.

1. **Definición del valor objetivo**: puede analizar CloudWatch las métricas correspondientes a la utilización del clúster durante un período de cuatro semanas para determinar el umbral del valor objetivo. Si aún no se encuentra seguro de qué valor elegir, se recomienda comenzar con el valor mínimo admitido de métrica predefinida.

1. AutoScaling on Target Tracking es ideal para clústeres con una distribución uniforme de las cargas de trabajo en todas shards/replicas las dimensiones. Tener una distribución no uniforme puede conducir a:
   + Se puede escalar cuando no es necesario debido a la carga de trabajo spike/dip en unos pocos fragmentos o réplicas activos.
   + Falta de escalado cuando sí es necesario debido a que la carga de trabajo media general se encuentra próxima al objetivo aunque tenga particiones o réplicas en el almacenamiento activo.

**nota**  
Al ampliar el clúster, ElastiCache replicará automáticamente las funciones cargadas en uno de los nodos existentes (seleccionadas al azar) en los nuevos nodos. Si el clúster tiene Valkey o Redis 7.0 o una versión posterior y la aplicación usa [funciones](https://valkey.io/topics/functions-intro/), le recomendamos que cargue todas las funciones en todas las particiones antes de escalar horizontalmente para que el clúster no termine con diferentes funciones en distintas particiones.

Tras registrarte AutoScaling, ten en cuenta lo siguiente:
+ Existen limitaciones en las configuraciones compatibles con Auto Scaling, por lo que recomendamos no cambiar la configuración de un grupo de reproducción que se haya registrado para Auto Scaling. A continuación se muestran algunos ejemplos:
  + Modificación manual del tipo de instancias a tipos no admitidos.
  + Asociación del grupo de reproducción a un almacén de datos global.
  + Cambio del parámetro `ReservedMemoryPercent`.
  +  increasing/decreasing shards/replicas beyond the Min/MaxLa capacidad se configuró manualmente durante la creación de la política.

# Uso de Auto Scaling con particiones
<a name="AutoScaling-Using-Shards"></a>

Con el escalado automático de ElastiCache, puede utilizar políticas de seguimiento y programadas con su motor de Valkey o Redis OSS. 

A continuación se proporcionan detalles sobre el seguimiento de destinos y las políticas programadas, así como sobre cómo aplicarlas mediante la Consola de administración de AWS, la AWS CLI y API.

**Topics**
+ [Políticas de escalado de seguimiento de destino](AutoScaling-Scaling-Policies-Target.md)
+ [Adición de una política de escalado](AutoScaling-Scaling-Adding-Policy-Shards.md)
+ [Registro de un destino escalable](AutoScaling-Scaling-Registering-Policy-CLI.md)
+ [Definición de una política de escalado](AutoScaling-Scaling-Defining-Policy-API.md)
+ [Desactivación de actividad de escalado descendente](AutoScaling-Scaling-Disabling-Scale-in.md)
+ [Aplicación de una política de escalado](AutoScaling-Scaling-Applying-a-Scaling-Policy.md)
+ [Edición de una política de escalado](AutoScaling-Scaling-Editing-a-Scaling-Policy.md)
+ [Eliminación de una política de escalado](AutoScaling-Scaling-Deleting-a-Scaling-Policy.md)
+ [Uso de CloudFormation para las políticas de Auto Scaling](AutoScaling-with-Cloudformation-Shards.md)
+ [Escalado programado](AutoScaling-with-Scheduled-Scaling-Shards.md)

# Políticas de escalado de seguimiento de destino
<a name="AutoScaling-Scaling-Policies-Target"></a>

Las políticas de escalado de seguimiento de destino le permiten seleccionar una métrica y establecer un valor de destino. El escalado automático de ElastiCache para Valkey y Redis OSS crea y administra las alarmas de CloudWatch que desencadenan la política de escalado y calcula el ajuste de escalado en función de la métrica y el valor de destino. La política de escalado agrega o elimina las particiones en función de las necesidades para mantener la métrica en el valor objetivo especificado o en un valor próximo. Además de mantener la métrica próxima al valor de destino, la política de escalado de seguimiento de destino también se ajusta a las fluctuaciones de la métrica producidas por patrones de carga fluctuante y minimiza las fluctuaciones rápidas de la capacidad de la flota. 

Por ejemplo, considere una política de escalado que utilice la métrica `ElastiCachePrimaryEngineCPUUtilization` media predefinida con el valor objetivo configurado. Esta política puede mantener la utilización de la CPU en el valor objetivo especificado o en un valor próximo.

## Métricas predefinidas
<a name="AutoScaling-Scaling-Criteria-predfined-metrics"></a>

Una métrica predefinida es una estructura que hace referencia a un nombre, una dimensión y una estadística (`average`) específicos de una métrica de CloudWatch determinada. La política de escalado automático define una de las siguientes métricas predefinidas para el clúster:


****  

| Nombre de métrica predefinido | Nombre de métrica de CloudWatch | Dimensión de métricas de CloudWatch | Tipos de instancia no aptos  | 
| --- | --- | --- | --- | 
| ElastiCachePrimaryEngineCPUUtilization |  `EngineCPUUtilization`  |  ReplicationGroupId, Role = Principal  | Ninguno | 
| ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage |  `DatabaseCapacityUsageCountedForEvictPercentage`  |  Métricas de grupo de replicación de Valkey o Redis OSS  | Ninguno | 
| ElastiCacheDatabaseMemoryUsageCountedForEvictPercentage |  `DatabaseMemoryUsageCountedForEvictPercentage`  |  Métricas de grupo de replicación de Valkey o Redis OSS  | R6gd | 

Los tipos de instancias con niveles de datos no pueden utilizar `ElastiCacheDatabaseMemoryUsageCountedForEvictPercentage`, ya que estos tipos de instancias almacenan datos en la memoria y SSD. El caso de uso esperado para las instancias con niveles de datos es tener un uso de memoria del 100 por ciento y llenar el SSD según sea necesario.

## Criterios de Auto Scaling para particiones
<a name="AutoScaling-Scaling-Criteria"></a>

Cuando el servicio detecta que la métrica predefinida es igual o mayor que la configuración del objetivo, aumentará la capacidad de las particiones de forma automática. ElastiCache para Valkey y Redis OSS escala horizontalmente las particiones del clúster en una cantidad equivalente al mayor de dos números: la variación del porcentaje del objetivo y el 20 % de las particiones actuales. En el caso de la reducción horizontal, ElastiCache no se reduce horizontalmente de forma automática a menos que el valor total de la métrica sea inferior al 75 % del objetivo definido. 

Para un ejemplo de escalado horizontal, si tiene 50 particiones y
+ si su objetivo sufre una interrupción del 30 %, ElastiCache escala horizontalmente un 30 %, lo que da como resultado 65 particiones por clúster. 
+ si su objetivo sufre una interrupción del 10 %, ElastiCache escala horizontalmente de forma predeterminada un mínimo de 20 %, lo que da como resultado 60 particiones por clúster. 

Para un ejemplo de reducción horizontal, si ha seleccionado un valor objetivo del 60 %, ElastiCache no se reducirá horizontalmente de forma automática hasta que la métrica sea inferior o igual al 45 % (25 % por debajo del objetivo de 60 %).

## Consideraciones de Auto Scaling
<a name="AutoScaling-Scaling-Considerations"></a>

Tenga en cuenta las siguientes consideraciones:
+ En las políticas de escalado de seguimiento de destino, se presupone que el escalado ascendente se lleva a cabo cuando la métrica está por encima del valor de destino. No puede utilizar una política de escalado de seguimiento de destinos si la métrica especificada está por debajo del valor de destino. ElastiCache para Valkey y Redis OSS escala horizontalmente las particiones con una desviación mínima del 20 % del objetivo de las particiones existentes en el clúster.
+ Las políticas de escalado de seguimiento de destino no realizan el escalado cuando la métrica especificada no tiene datos suficientes. No realiza la reducción horizontalmente porque la carencia de datos no se interpreta como una infrautilización de recursos. 
+ Es posible que haya diferencias entre el valor de destino y los puntos de datos de la métrica real. Esto se debe a que el escalado automático de ElastiCache siempre actúa de forma conservadora y redondea hacia arriba o hacia abajo a la hora de determinar la cantidad de capacidad que se debe añadir o quitar. Con esto se evita que se agrega capacidad insuficiente o se elimine demasiada capacidad. 
+ Para garantizar la disponibilidad de la aplicación, el servicio se escala horizontalmente en proporción a la métrica tan rápido como puede, pero se reduce horizontalmente de forma más gradual. 
+ Puede tener varias políticas de escalado de seguimiento de destino en un clúster de ElastiCache para Valkey y Redis OSS, siempre que cada uno de ellos utilice una métrica diferente. El objetivo del escalado automático de ElastiCache siempre es dar prioridad a la disponibilidad, por lo que su comportamiento varía en función de si las políticas de seguimiento del objetivo están listas para el escalado o la reducción horizontales. Realizará un escalado horizontal del servicio si cualquiera de las políticas de seguimiento de destino está lista para el escalado horizontal, pero solo realizará la reducción horizontal si todas las políticas de seguimiento de destino (que tienen la parte de reducción horizontal habilitada) están listas para la reducción horizontal. 
+ No modifique ni elimine las alarmas de CloudWatch que administra el escalado automático de ElastiCache para las políticas de escalado de seguimiento de destino. El escalado automático de ElastiCache elimina de forma automática las alarmas cuando se elimina la política de escalado. 
+ El escalado automático de ElastiCache no le impide modificar de forma manual las particiones del clúster. Estos ajustes manuales no afectan a las alarmas de CloudWatch existentes adjuntas a la política de escalado, pero pueden afectar a las métricas que pueden activar estas alarmas de CloudWatch. 
+ Estas alarmas de CloudWatch administradas por Auto Scaling se definen a través de la métrica AVG (Promedio) en todas las particiones del clúster. Por lo tanto, tener particiones activas puede resultar en cualquiera de los siguientes escenarios:
  + escalado cuando no es necesario debido a la carga en algunas particiones activas que desencadenan una alarma de CloudWatch
  + no escalar cuando sí sea necesario debido a un AVG (Promedio) agregado en todas las particiones que causa que la alarma se interrumpa. 
+ Siguen aplicándose los límites predeterminados de ElastiCache en nodos por clúster. Por lo tanto, al optar por Auto Scaling y, si espera que los nodos máximos sean superiores al límite predeterminado, solicite un aumento del límite en [AWS Service Limits](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) y elija el tipo de límite **Nodes per cluster per instance type** (Nodos por clúster por tipo de instancias). 
+ Asegúrese de tener suficientes ENI (interfaces de red elásticas) disponibles en su VPC, que son necesarias durante el escalado horizontal. Para obtener más información, consulte [Interfaces de red elástica](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_ElasticNetworkInterfaces.html).
+ Si no hay suficiente capacidad disponible desde EC2, el escalado automático de ElastiCache no se escala en forma horizontal y se retrasa hasta que haya capacidad.
+ El escalado automático de ElastiCache para Redis OSS durante la reducción horizontal no eliminará las particiones con ranuras que tengan un tamaño de elemento superior a 256 MB después de la serialización.
+ Durante la reducción horizontal, no se eliminarán particiones si no se encuentra disponible la memoria suficiente en la configuración de particiones resultante.

# Adición de una política de escalado
<a name="AutoScaling-Scaling-Adding-Policy-Shards"></a>

Puede agregar una política de escalado mediante la Consola de administración de AWS. 

**Cómo añadir una política de escalado automático a un clúster de ElastiCache para Valkey y Redis OSS**

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

1. En el panel de navegación, elija **Valkey** o **Redis OSS**. 

1. Elija el clúster al que desea agregar una política (elija el nombre del clúster y no el botón a su izquierda). 

1. Elija la pestaña de **Auto Scaling policies** (Políticas de Auto Scaling). 

1. Elija **add dynamic scaling** (agregar escalado dinámico). 

1. En **Policy name** (Nombre de política), ingrese un nombre de política. 

1. En **Scalable Dimension** (Dimensión escalable), elija **shards** (particiones). 

1. Para la métrica de destino, elija una de las siguientes opciones:
   + **Primary CPU Utilization** (Utilización de CPU principal) para crear una política basada en la utilización promedio de la CPU. 
   + **Memory** (Memoria) para crear una política basada en la memoria media de base de datos. 
   + **Capacidad** para crear una política basada en el uso promedio de la capacidad de la base de datos. La métrica de capacidad incluye la utilización de memoria y SSD para las instancias con niveles de datos y la utilización de la memoria para todos los demás tipos de instancias.

1. Para el valor objetivo, elija un valor mayor o igual a 35 y menor o igual a 70. El escalado automático mantendrá este valor para la métrica de destino seleccionada en las particiones de ElastiCache: 
   + **Utilización de la CPU principal**: mantiene el valor objetivo de la  métrica `EngineCPUUtilization` en los nodos principales. 
   + **Memoria**: mantiene el valor objetivo de la métrica `DatabaseMemoryUsageCountedForEvictPercentage` 
   + La **capacidad** mantiene el valor objetivo de la métrica `DatabaseCapacityUsageCountedForEvictPercentage`,

   Las particiones de clúster se agregan o quitan para mantener la métrica en un valor próximo al especificado. 

1. (Opcional) La consola no admite periodos de recuperación de reducción o escalado horizontal. Utilice la AWS CLI para modificar los valores de periodo de recuperación. 

1. En **Capacidad mínima**, escriba el número mínimo de particiones que debe mantener la política de escalado automático de ElastiCache. 

1. En **Capacidad máxima**, escriba el número máximo de particiones que debe mantener la política de escalado automático de ElastiCache. Este valor debe ser igual o inferior a 250.

1. Seleccione **Crear**.

# Registro de un destino escalable
<a name="AutoScaling-Scaling-Registering-Policy-CLI"></a>

Para poder utilizar el escalado automático con un clúster de ElastiCache para Valkey y Redis OSS, debe registrar su clúster en el escalado automático de ElastiCache. Esto se hace para definir la dimensión y los límites de escalado que se van a aplicar a ese clúster. El escalado automático de ElastiCache escala de forma dinámica el clúster a lo largo de la dimensión escalable `elasticache:replication-group:NodeGroups`, que representa el número de particiones del clúster. 

 **Uso de AWS CLI** 

Para registrar el clúster de ElastiCache para Valkey y Redis OSS, utilice el comando [register-scalable-target](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/register-scalable-target.html) con los siguientes parámetros: 
+ `--service-namespace` – establezca este valor en `elasticache`
+ `--resource-id`: el identificador de recurso para el clúster. Para este parámetro, el tipo de recurso es `ReplicationGroup` y el identificador único es el nombre del clúster; por ejemplo, `replication-group/myscalablecluster`. 
+ `--scalable-dimension` – establezca este valor en `elasticache:replication-group:NodeGroups`. 
+ `--max-capacity `: el número máximo de particiones que administrará el escalado automático de ElastiCache. Para obtener información sobre la relación entre `--min-capacity`, `--max-capacity` y el número de particiones del clúster, consulte [Capacidad mínima y máxima](AutoScaling-Policies.md#AutoScaling-MinMax). 
+ `--min-capacity `: el número mínimo de particiones que administrará el escalado automático de ElastiCache. Para obtener información sobre la relación entre `--min-capacity`, `--max-capacity` y el número de particiones del clúster, consulte [Capacidad mínima y máxima](AutoScaling-Policies.md#AutoScaling-MinMax). 

**Example**  
 En el siguiente ejemplo, registra un clúster de ElastiCache denominado `myscalablecluster`. El registro indica que el clúster debe escalarse de forma dinámica para tener de una a diez particiones.   
Para Linux, macOS o Unix:  

```
aws application-autoscaling register-scalable-target \
    --service-namespace elasticache \
    --resource-id replication-group/myscalablecluster \
    --scalable-dimension elasticache:replication-group:NodeGroups \
    --min-capacity 1 \
    --max-capacity 10 \
```
Para Windows:  

```
aws application-autoscaling register-scalable-target ^
    --service-namespace elasticache ^
    --resource-id replication-group/myscalablecluster ^
    --scalable-dimension elasticache:replication-group:NodeGroups ^
    --min-capacity 1 ^
    --max-capacity 10 ^
```

**Uso de la API**

Para registrar el clúster de ElastiCache, utilice el comando [register-scalable-target](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/register-scalable-target.html) con los siguientes parámetros: 
+ ServiceNamespace: establezca este valor en elasticache. 
+ ResourceID: el identificador de recurso para el clúster de ElastiCache. Para este parámetro, el tipo de recurso es ReplicationGroup y el identificador único es el nombre del clúster; por ejemplo, `replication-group/myscalablecluster`. 
+ ScalableDimension: establezca este valor en `elasticache:replication-group:NodeGroups`. 
+ MinCapacity: el número mínimo de particiones que administrará el escalado automático de ElastiCache. Para obtener información sobre la relación entre --min-capacity, --max-capacity y el número de réplicas del clúster, consulte [Capacidad mínima y máxima](AutoScaling-Policies.md#AutoScaling-MinMax).
+ MaxCapacity: el número máximo de particiones que administrará el escalado automático de ElastiCache. Para obtener información sobre la relación entre --min-capacity, --max-capacity y el número de réplicas del clúster, consulte [Capacidad mínima y máxima](AutoScaling-Policies.md#AutoScaling-MinMax).

**Example**  
En el siguiente ejemplo, se registra un clúster de ElastiCache denominado `myscalablecluster` con la API de Escalado automático de aplicaciones. Este registro indica que el clúster debe escalarse de forma dinámica para tener de una a cinco réplicas.   

```
POST / HTTP/1.1
Host: autoscaling.us-east-2.amazonaws.com
Accept-Encoding: identity
Content-Length: 219
X-Amz-Target: AnyScaleFrontendService.RegisterScalableTarget
X-Amz-Date: 20160506T182145Z
User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8
Content-Type: application/x-amz-json-1.1
Authorization: AUTHPARAMS
{
    "ServiceNamespace": "elasticache",
    "ResourceId": "replication-group/myscalablecluster",
    "ScalableDimension": "elasticache:replication-group:NodeGroups",
    "MinCapacity": 1,
    "MaxCapacity": 5
}
```

# Definición de una política de escalado
<a name="AutoScaling-Scaling-Defining-Policy-API"></a>

Una configuración de la política de escalado de seguimiento de destino está representada por un bloque JSON en el que se definen las métricas y los valores de destino. Puede guardar una configuración de la política de escalado como bloque JSON en un archivo de texto. Puede utilizar ese archivo de texto al invocar AWS CLI o la API de Auto Scaling de aplicaciones. Para obtener más información sobre la sintaxis de configuración de políticas, consulte [TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_TargetTrackingScalingPolicyConfiguration.html) en la Referencia de la API de Auto Scaling de aplicaciones. 

Las siguientes opciones se encuentran disponibles para definir una configuración de la política de escalado de seguimiento de destino: 

**Topics**
+ [Uso de una métrica predefinida](#AutoScaling-Scaling-Predefined-Metric)
+ [Uso de una métrica personalizada](#AutoScaling-Scaling-Custom-Metric)
+ [Uso de periodos de recuperación](#AutoScaling-Scaling-Cooldown-periods)

## Uso de una métrica predefinida
<a name="AutoScaling-Scaling-Predefined-Metric"></a>

Mediante las métricas predefinidas, puede definir rápidamente una política de escalado de seguimiento de destino para un clúster de ElastiCache para Valkey y Redis OSS que funciona con el seguimiento de destino en el escalado automático de ElastiCache. 

Actualmente, ElastiCache admite las siguientes métricas predefinidas en el escalado automático de NodeGroup: 
+ **ElastiCachePrimaryEngineCPUUtilization**: el valor medio de la métrica `EngineCPUUtilization` en CloudWatch en todos los nodos principales del clúster.
+ **ElastiCacheDatabaseMemoryUsageCountedForEvictPercentage**: el valor medio de la métrica `DatabaseMemoryUsageCountedForEvictPercentage` en CloudWatch en todos los nodos principales del clúster.
+ **ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage**: el valor medio de la métrica `ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage` en CloudWatch en todos los nodos principales del clúster.

Para obtener más información sobre las métricas de `EngineCPUUtilization`, `DatabaseMemoryUsageCountedForEvictPercentage` y `DatabaseCapacityUsageCountedForEvictPercentage`, consulte [Supervisión del uso con CloudWatch métricas](CacheMetrics.md). Para usar una métrica predefinida en su política de escalado, puede crear una configuración de seguimiento de destino para su política de escalado. Esta configuración debe incluir `PredefinedMetricSpecification` para la métrica predefinida y un TargetValue para el valor de destino de esa métrica. 

**Example**  
En el siguiente ejemplo, se describe una configuración de la política típica para el escalado de seguimiento de destino de un clúster de ElastiCache para Valkey y Redis OSS. En esta configuración, la métrica predefinida `ElastiCachePrimaryEngineCPUUtilization` se utiliza para ajustar el clúster en función de la utilización promedio de la CPU del 40 % en todos los nodos principales del clúster.   

```
{
    "TargetValue": 40.0,
    "PredefinedMetricSpecification":
    {
        "PredefinedMetricType": "ElastiCachePrimaryEngineCPUUtilization"
    }
}
```

## Uso de una métrica personalizada
<a name="AutoScaling-Scaling-Custom-Metric"></a>

 Mediante las métricas personalizadas, puede definir una política de escalado de seguimiento de destino que cumpla sus requisitos personalizados. Puede definir una métrica personalizada en función de cualquier métrica de ElastiCache que cambie en proporción al escalado. No todas las métricas de ElastiCache funcionan para el seguimiento de destino. La métrica debe ser una métrica de utilización válida y describir el nivel de actividad de una instancia. El valor de la métrica debe aumentar o reducirse en proporción al número de particiones del clúster. Este aumento o reducción proporcionales son necesarios para utilizar los datos de las métricas a fin de reducir o escalar horizontalmente de forma proporcional el número de particiones. 

**Example**  
En el siguiente ejemplo se describe una configuración de seguimiento de destino para una política de escalado. En esta configuración, una métrica personalizada ajusta un clúster de ElastiCache para Redis OSS en función de una utilización promedio de la CPU del 50 % en todas las particiones de un clúster denominado `my-db-cluster`. 

```
{
    "TargetValue": 50,
    "CustomizedMetricSpecification":
    {
        "MetricName": "EngineCPUUtilization",
        "Namespace": "AWS/ElastiCache",
        "Dimensions": [
            {
                "Name": "ReplicationGroup","Value": "my-db-cluster"
            },
            {
                "Name": "Role","Value": "PRIMARY"
            }
        ],
        "Statistic": "Average",
        "Unit": "Percent"
    }
}
```

## Uso de periodos de recuperación
<a name="AutoScaling-Scaling-Cooldown-periods"></a>

Puede especificar un valor, en segundos, a fin de que `ScaleOutCooldown` agregue un periodo de recuperación para el escalado horizontal de su clúster. De forma similar, puede agregar un valor, en segundos, a fin de que `ScaleInCooldown` agregue un periodo de recuperación para el escalado vertical de su clúster. Para obtener más información, consulte [TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_TargetTrackingScalingPolicyConfiguration.html) en la Referencia de la API de Auto Scaling de aplicaciones. 

 En el siguiente ejemplo se describe una configuración de seguimiento de destino para una política de escalado. En esta configuración, la métrica predefinida `ElastiCachePrimaryEngineCPUUtilization` se utiliza para ajustar un clúster de ElastiCache para Redis OSS en función de la utilización promedio de la CPU del 40 % en todos los nodos principales de ese clúster. La configuración proporciona un periodo de recuperación de escalado descendente de 10 minutos y un periodo de recuperación de escalado ascendente de 5 minutos. 

```
{
    "TargetValue": 40.0,
    "PredefinedMetricSpecification":
    {
        "PredefinedMetricType": "ElastiCachePrimaryEngineCPUUtilization"
    },
    "ScaleInCooldown": 600,
    "ScaleOutCooldown": 300
}
```

# Desactivación de actividad de escalado descendente
<a name="AutoScaling-Scaling-Disabling-Scale-in"></a>

Puede evitar que la configuración de la política de escalado de seguimiento de destino reduzca horizontalmente su clúster deshabilitando la actividad de reducción horizontal. La deshabilitación de la actividad de escalado horizontal evita que la política de escalado elimine particiones, a la vez que permite a la política de escalado crearlas según sea necesario. 

Puede especificar un valor booleano a fin de que `DisableScaleIn` habilite o deshabilite la actividad de reducción horizontal para su clúster. Para obtener más información, consulte [TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_TargetTrackingScalingPolicyConfiguration.html) en la Referencia de la API de Auto Scaling de aplicaciones. 

En el siguiente ejemplo se describe una configuración de seguimiento de destino para una política de escalado. En esta configuración, la métrica predefinida `ElastiCachePrimaryEngineCPUUtilization` ajusta un clúster de ElastiCache para Valkey y Redis OSS en función de la utilización promedio de la CPU del 40 % en todos los nodos principales de ese clúster. La configuración deshabilita la actividad de escalado descendente para la política de escalado. 

```
{
    "TargetValue": 40.0,
    "PredefinedMetricSpecification":
    {
        "PredefinedMetricType": "ElastiCachePrimaryEngineCPUUtilization"
    },
    "DisableScaleIn": true
}
```

# Aplicación de una política de escalado
<a name="AutoScaling-Scaling-Applying-a-Scaling-Policy"></a>

Tras registrar su clúster con escalado automático de ElastiCache para Valkey y Redis OSS y definir una política de escalado, puede aplicarla al clúster registrado. Para aplicar una política de escalado a un clúster de ElastiCache para Redis OSS, puede utilizar la AWS CLI o la API de Escalado automático de aplicaciones. 

## Aplicación de una política de escalado mediante la AWS CLI
<a name="AutoScaling-Scaling-Applying-a-Scaling-Policy-CLI"></a>

Para aplicar una política de escalado a un clúster de ElastiCache para Valkey y Redis OSS, utilice el comando [put-scaling-policy](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/put-scaling-policy.html) con los siguientes parámetros: 
+ **--policy-name**: el nombre de la política de escalado. 
+ **--policy-type**: establezca este valor en `TargetTrackingScaling`. 
+ **--resource-id**: el identificador del recurso. Para este parámetro, el tipo de recurso es `ReplicationGroup` y el identificador único es el nombre del clúster; por ejemplo, `replication-group/myscalablecluster`. 
+ **--service-namespace**: establezca este valor en `elasticache`. 
+ **--scalable-dimension**: establezca este valor en `elasticache:replication-group:NodeGroups`. 
+ **--target-tracking-scaling-policy-configuration**: la configuración de la política de escalado de seguimiento de destino que se utilizará para el clúster. 

En el siguiente ejemplo, aplica una política de escalado de seguimiento de destino denominada `myscalablepolicy` a un clúster de ElastiCache para Valkey y Redis OSS denominado `myscalablecluster` con escalado automático de ElastiCache. Para ello, puede usar una configuración de la política guardada en un archivo denominado `config.json`. 

Para Linux, macOS o Unix:

```
aws application-autoscaling put-scaling-policy \
    --policy-name myscalablepolicy \
    --policy-type TargetTrackingScaling \
    --resource-id replication-group/myscalablecluster \
    --service-namespace elasticache \
    --scalable-dimension elasticache:replication-group:NodeGroups \
    --target-tracking-scaling-policy-configuration file://config.json
```

Para Windows:

```
aws application-autoscaling put-scaling-policy ^
    --policy-name myscalablepolicy ^
    --policy-type TargetTrackingScaling ^
    --resource-id replication-group/myscalablecluster ^
    --service-namespace elasticache ^
    --scalable-dimension elasticache:replication-group:NodeGroups ^
    --target-tracking-scaling-policy-configuration file://config.json
```

## Aplicación de una política de escalado mediante la API
<a name="AutoScaling-Scaling-Applying-a-Scaling-Policy-API"></a>

Para aplicar una política de escalado a un clúster de ElastiCache para Valkey y Redis OSS, utilice el comando [PutScalingPolicy](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/put-scaling-policy.html) de la AWS CLI con los siguientes parámetros: 
+ **--policy-name**: el nombre de la política de escalado. 
+ **--resource-id**: el identificador del recurso. Para este parámetro, el tipo de recurso es `ReplicationGroup` y el identificador único es el nombre del clúster; por ejemplo, `replication-group/myscalablecluster`. 
+ **--service-namespace**: establezca este valor en `elasticache`. 
+ **--scalable-dimension**: establezca este valor en `elasticache:replication-group:NodeGroups`. 
+ **--target-tracking-scaling-policy-configuration**: la configuración de la política de escalado de seguimiento de destino que se utilizará para el clúster. 

En el siguiente ejemplo, aplica una política de escalado de seguimiento de destino denominada `myscalablepolicy` a un clúster de ElastiCache denominado `myscalablecluster` con el escalado automático de ElastiCache. Puede usar una configuración de la política en función de la métrica predefinida `ElastiCachePrimaryEngineCPUUtilization`. 

```
POST / HTTP/1.1
Host: autoscaling.us-east-2.amazonaws.com
Accept-Encoding: identity
Content-Length: 219
X-Amz-Target: AnyScaleFrontendService.PutScalingPolicy
X-Amz-Date: 20160506T182145Z
User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8
Content-Type: application/x-amz-json-1.1
Authorization: AUTHPARAMS
{
    "PolicyName": "myscalablepolicy",
    "ServiceNamespace": "elasticache",
    "ResourceId": "replication-group/myscalablecluster",
    "ScalableDimension": "elasticache:replication-group:NodeGroups",
    "PolicyType": "TargetTrackingScaling",
    "TargetTrackingScalingPolicyConfiguration": {
        "TargetValue": 40.0,
        "PredefinedMetricSpecification":
        {
            "PredefinedMetricType": "ElastiCachePrimaryEngineCPUUtilization"
        }
    }
}
```

# Edición de una política de escalado
<a name="AutoScaling-Scaling-Editing-a-Scaling-Policy"></a>

Puede editar una política de escalado utilizando la Consola de administración de AWS, la AWS CLI o la API de Auto Scaling de aplicaciones. 

## Edición de una política de escalado mediante la Consola de administración de AWS
<a name="AutoScaling-Scaling-Editing-a-Scaling-Policy-CON"></a>

**Cómo editar una política de escalado automático de un clúster de ElastiCache para Valkey y Redis OSS**

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

1. En el panel de navegación, elija el motor correspondiente. 

1. Elija el clúster al que desea agregar una política (elija el nombre del clúster y no el botón a su izquierda). 

1. Elija la pestaña de **Auto Scaling policies** (Políticas de Auto Scaling). 

1. En **Scaling policies** (Políticas de escalado), elija el botón a la izquierda de la política de Auto Scaling que desea cambiar y, a continuación, elija **Modify** (Modificar). 

1. Realice los cambios solicitados en la política.

1. Elija **Modificar**.

## Edición de una política de escalado mediante la AWS CLI o la API
<a name="AutoScaling-Scaling-Editing-a-Scaling-Policy-CLI"></a>

Puede utilizar AWS CLI o la API de Auto Scaling de aplicaciones para editar una política de escalado de la misma forma que aplica una política de escalado: 
+ Al usar la AWS CLI, especifique el nombre de la política que desea editar en el parámetro `--policy-name`. Especifique nuevos valores para los parámetros que desea cambiar. 
+ Al usar la API de Auto Scaling de aplicaciones, especifique el nombre de la política que desea editar en el parámetro `PolicyName`. Especifique nuevos valores para los parámetros que desea cambiar. 

Para obtener más información, consulte [Aplicación de una política de escalado](AutoScaling-Scaling-Applying-a-Scaling-Policy.md).

# Eliminación de una política de escalado
<a name="AutoScaling-Scaling-Deleting-a-Scaling-Policy"></a>

Puede eliminar una política de escalado utilizando la Consola de administración de AWS, AWS CLI o la API de Auto Scaling de aplicaciones. 

## Eliminación de una política de escalado mediante la Consola de administración de AWS
<a name="AutoScaling-Scaling-Editing-a-Scaling-Policy-CON"></a>

**Cómo eliminar una política de escalado automático para un clúster de ElastiCache para Redis OSS**

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

1. En el panel de navegación, elija **Valkey** o **Redis OSS**. 

1. Elija el clúster con la política de Auto Scaling que desea editar (elija el nombre del clúster, no el botón a su izquierda). 

1. Elija la pestaña de **Auto Scaling policies** (Políticas de Auto Scaling). 

1. En **Scaling policies** (Políticas de escalado), elija la política de Auto Scaling y, a continuación, elija **Delete** (Eliminar). 

## Eliminación de una política de escalado mediante la AWS CLI
<a name="AutoScaling-Scaling-Deleting-a-Scaling-Policy-CLI"></a>

Para eliminar una política de escalado de un clúster de ElastiCache para Valkey y Redis OSS, utilice el comando [delete-scaling-policy](https://docs.aws.amazon.com/cli/latest/reference/autoscaling/delete-scaling-policy.html) de la AWS CLI con los siguientes parámetros: 
+ **--policy-name**: el nombre de la política de escalado. 
+ **--resource-id**: el identificador del recurso. Para este parámetro, el tipo de recurso es `ReplicationGroup` y el identificador único es el nombre del clúster; por ejemplo, `replication-group/myscalablecluster`. 
+ **--service-namespace**: establezca este valor en `elasticache`. 
+ **--scalable-dimension**: establezca este valor en `elasticache:replication-group:NodeGroups`. 

En el siguiente ejemplo, elimina una política de escalado de seguimiento de destino denominada `myscalablepolicy` de un clúster denominado `myscalablecluster`. 

Para Linux, macOS o Unix:

```
aws application-autoscaling delete-scaling-policy \
    --policy-name myscalablepolicy \
    --resource-id replication-group/myscalablecluster \
    --service-namespace elasticache \
    --scalable-dimension elasticache:replication-group:NodeGroups
```

Para Windows:

```
aws application-autoscaling delete-scaling-policy ^
    --policy-name myscalablepolicy ^
    --resource-id replication-group/myscalablecluster ^
    --service-namespace elasticache ^
    --scalable-dimension elasticache:replication-group:NodeGroups
```

## Eliminación de una política de escalado mediante la API
<a name="AutoScaling-Scaling-Deleting-a-Scaling-Policy-API"></a>

Para eliminar una política de escalado de un clúster de ElastiCache para Valkey y Redis OSS, utilice el comando [DeleteScalingPolicy](https://docs.aws.amazon.com/cli/latest/reference/autoscaling/delete-scaling-policy.html) de la AWS CLI con los siguientes parámetros: 
+ **--policy-name**: el nombre de la política de escalado. 
+ **--resource-id**: el identificador del recurso. Para este parámetro, el tipo de recurso es `ReplicationGroup` y el identificador único es el nombre del clúster; por ejemplo, `replication-group/myscalablecluster`. 
+ **--service-namespace**: establezca este valor en `elasticache`. 
+ **--scalable-dimension**: establezca este valor en `elasticache:replication-group:NodeGroups`. 

En el siguiente ejemplo, elimina una política de escalado de seguimiento de destino denominada `myscalablepolicy` de un clúster denominado `myscalablecluster`. 

```
POST / HTTP/1.1
Host: autoscaling.us-east-2.amazonaws.com
Accept-Encoding: identity
Content-Length: 219
X-Amz-Target: AnyScaleFrontendService.DeleteScalingPolicy
X-Amz-Date: 20160506T182145Z
User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8
Content-Type: application/x-amz-json-1.1
Authorization: AUTHPARAMS
{
    "PolicyName": "myscalablepolicy",
    "ServiceNamespace": "elasticache",
    "ResourceId": "replication-group/myscalablecluster",
    "ScalableDimension": "elasticache:replication-group:NodeGroups"
}
```

# Uso de CloudFormation para las políticas de Auto Scaling
<a name="AutoScaling-with-Cloudformation-Shards"></a>

Este fragmento muestra cómo crear una política de seguimiento de destino y aplicarla a un recurso [AWS::ElastiCache::ReplicationGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html) mediante el recurso [AWS::ApplicationAutoScaling::ScalableTarget](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html). Utiliza las funciones intrínsecas [Fn::Join](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-join.html) y [Ref](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) para construir la propiedad `ResourceId` con el nombre lógico del recurso `AWS::ElastiCache::ReplicationGroup` especificado en la misma plantilla. 

```
ScalingTarget:
   Type: 'AWS::ApplicationAutoScaling::ScalableTarget'
   Properties:
     MaxCapacity: 3
     MinCapacity: 1
     ResourceId: !Sub replication-group/${logicalName}
     ScalableDimension: 'elasticache:replication-group:NodeGroups'
     ServiceNamespace: elasticache
     RoleARN: !Sub "arn:aws:iam::${AWS::AccountId}:role/aws-service-role/elasticache.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_ElastiCacheRG"

  ScalingPolicy:
    Type: "AWS::ApplicationAutoScaling::ScalingPolicy"
    Properties:
      ScalingTargetId: !Ref ScalingTarget
      ServiceNamespace: elasticache
      PolicyName: testpolicy
      PolicyType: TargetTrackingScaling
      ScalableDimension: 'elasticache:replication-group:NodeGroups'
      TargetTrackingScalingPolicyConfiguration:
        PredefinedMetricSpecification:
          PredefinedMetricType: ElastiCachePrimaryEngineCPUUtilization
        TargetValue: 40
```

# Escalado programado
<a name="AutoScaling-with-Scheduled-Scaling-Shards"></a>

El escalado según una programación le permite escalar la aplicación en respuesta a los cambios previstos en la demanda. Para utilizar el escalado programado, deberá crear acciones programadas, que indiquen a ElastiCache para Valkey y Redis OSS que realice actividades de escalado en momentos específicos. Cuando crea una acción programada, especifica un clúster existente, cuando debe ocurrir la actividad de escalado, la capacidad mínima y la capacidad máxima. Puede crear acciones programadas que realizan el escalado de forma puntual o periódica. 

 Solo puede crear una acción programada para los clústeres que ya existen. No puede crear una acción programada a la vez que crea un clúster.

A fin de obtener más información sobre la terminología de la creación, administración y eliminación de acciones programadas, consulte [Comandos de uso frecuente para la creación, administración y eliminación de acciones programadas](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-scheduled-scaling.html#scheduled-scaling-commonly-used-commands). 

**Para crear de forma periódica:**

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

1. En el panel de navegación, elija **Valkey** o **Redis OSS**. 

1. Elija el clúster para el que desea agregar una política. 

1. Elija **Manage Auto Scaling policies** (Administrar política de Auto Scaling) en el menú desplegable de **Actions** (Acciones). 

1. Elija la pestaña de **Auto Scaling policies** (Políticas de Auto Scaling).

1. En la sección de **Auto Scaling policies** (Políticas de Auto Scaling), aparece el cuadro de diálogo de **Add Scaling policy** (Agregar política de escalado). Elija **Scheduled scaling** (Escalado programado).

1. En **Policy name** (Nombre de política), ingrese el nombre de la política. 

1. En **Scalable Dimension** (Dimensión escalable), elija **Shards** (Particiones). 

1. En **Target Shards** (Particiones de destino), elija el valor. 

1. En **Recurrence** (Recurrencia), elija **Recurring** (Recurrente). 

1. En **Frequency** (Frecuencia), elija el valor respectivo. 

1. En **Start Date** (Fecha de inicio) y **Start time** (Hora de inicio), elija la hora a partir de la cual la política entrará en vigor. 

1. Elija **Add Policy** (Agregar política). 

**Para crear una acción programada puntual:**

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

1. En el panel de navegación, elija **Valkey** o **Redis OSS**. 

1. Elija el clúster para el que desea agregar una política. 

1. Elija **Manage Auto Scaling policies** (Administrar política de Auto Scaling) en el menú desplegable de **Actions** (Acciones). 

1. Elija la pestaña de **Auto Scaling policies** (Políticas de Auto Scaling).

1. En la sección de **Auto Scaling policies** (Políticas de Auto Scaling), aparece el cuadro de diálogo de **Add Scaling policy** (Agregar política de escalado). Elija **Scheduled scaling** (Escalado programado).

1. En **Policy name** (Nombre de política), ingrese el nombre de la política. 

1. En **Scalable Dimension** (Dimensión escalable), elija **Shards** (Particiones). 

1. En **Target Shards** (Particiones de destino), elija el valor. 

1. En **Recurrence** (Recurrencia), elija **One Time** (Una vez). 

1. En **Start Date** (Fecha de inicio) y **Start time** (Hora de inicio), elija la hora a partir de la cual la política entrará en vigor. 

1. En **End Date** (Fecha de finalización), elija la fecha hasta la que la política estará vigente. 

1. Elija **Add Policy** (Agregar política). 

**Para eliminar una acción programada**

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

1. En el panel de navegación, elija **Valkey** o **Redis OSS**. 

1. Elija el clúster para el que desea agregar una política. 

1. Elija **Manage Auto Scaling policies** (Administrar política de Auto Scaling) en el menú desplegable de **Actions** (Acciones). 

1. Elija la pestaña de **Auto Scaling policies** (Políticas de Auto Scaling).

1. En la sección de **Auto Scaling Policies** (Políticas de Auto Scaling), elija la política de Auto Scaling y, a continuación, elija **Delete** (Eliminar) en el cuadro de diálogo de **Actions** (Acciones).

**Para administrar el escalado programado mediante la AWS CLI **

Utilice las siguientes API de escalado automático de aplicaciones:
+ [put-scheduled-action](https://docs.aws.amazon.com/cli/latest/reference/autoscaling/put-scheduled-action.html) 
+ [describe-scheduled-actions](https://docs.aws.amazon.com/cli/latest/reference/autoscaling/describe-scheduled-actions.html) 
+ [delete-scheduled-action](https://docs.aws.amazon.com/cli/latest/reference/autoscaling/delete-scheduled-action.html) 

## Utilice CloudFormation para crear una acción programada
<a name="AutoScaling-with-Cloudformation-Declare-Scheduled-Action"></a>

Este fragmento muestra cómo crear una política de seguimiento de destino y aplicarla a un recurso [AWS::ElastiCache::ReplicationGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html) mediante el recurso [AWS::ApplicationAutoScaling::ScalableTarget](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html). Utiliza las funciones intrínsecas [Fn::Join](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-join.html) y [Ref](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) para construir la propiedad `ResourceId` con el nombre lógico del recurso `AWS::ElastiCache::ReplicationGroup` especificado en la misma plantilla. 

```
ScalingTarget:
   Type: 'AWS::ApplicationAutoScaling::ScalableTarget'
   Properties:
     MaxCapacity: 3
     MinCapacity: 1
     ResourceId: !Sub replication-group/${logicalName}
     ScalableDimension: 'elasticache:replication-group:NodeGroups'
     ServiceNamespace: elasticache
     RoleARN: !Sub "arn:aws:iam::${AWS::AccountId}:role/aws-service-role/elasticache.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_ElastiCacheRG"
     ScheduledActions:
       - EndTime: '2020-12-31T12:00:00.000Z'
         ScalableTargetAction:
           MaxCapacity: '5'
           MinCapacity: '2'
         ScheduledActionName: First
         Schedule: 'cron(0 18 * * ? *)'
```

# Uso de Auto Scaling con réplicas
<a name="AutoScaling-Using-Replicas"></a>

Un grupo de replicación de ElastiCache puede configurar una o más cachés para que funcionen como un solo nodo lógico. 

A continuación se proporcionan detalles sobre el seguimiento de destinos y las políticas programadas, así como sobre cómo aplicarlas mediante la Consola de administración de AWS, la AWS CLI y API.

# Políticas de escalado de seguimiento de destino
<a name="AutoScaling-Scaling-Policies-Replicas-Replicas"></a>

Las políticas de escalado de seguimiento de destino le permiten seleccionar una métrica y establecer un valor de destino. El escalado automático de ElastiCache para Valkey y Redis OSS crea y administra las alarmas de CloudWatch que desencadenan la política de escalado y calcula el ajuste de escalado en función de la métrica y el valor de destino. La política de escalado agrega o elimine las réplicas por igual en todas las particiones en función de las necesidades para mantener la métrica en el valor objetivo especificado o en un valor próximo. Además de mantener la métrica próxima al valor de destino, la política de escalado de seguimiento de destino también se ajusta a las fluctuaciones de la métrica producidas por patrones de carga fluctuante y minimiza las fluctuaciones rápidas de la capacidad de la flota. 

## Criterios de Auto Scaling para las réplicas
<a name="AutoScaling-Scaling-Criteria-Replicas"></a>

La política de Auto Scaling define la siguiente métrica predefinida para el clúster:

`ElastiCacheReplicaEngineCPUUtilization`: el umbral de utilización de AVG EngineCPU agregado en todas las réplicas que ElastiCache utiliza para activar una operación de escalado automático. Puede establecer el objetivo de utilización entre el 35 y el 70 %.

Cuando el servicio detecta que su métrica `ElastiCacheReplicaEngineCPUUtilization` es igual o mayor que la configuración del Target (Objetivo), aumentará las réplicas de las particiones de forma automática. ElastiCache escala horizontalmente las réplicas del clúster en un recuento igual al mayor de dos números: la variación del porcentaje del objetivo y una réplica. En el caso de la reducción horizontal, ElastiCache no se reduce horizontalmente de forma automática a menos que el valor total de la métrica sea inferior al 75 % del objetivo definido. 

Para un ejemplo de escalado horizontal, si tiene 5 particiones y 1 réplica cada una:

Si el objetivo se incumple en un 30 %, ElastiCache para Valkey y Redis OSS se escala horizontalmente por una réplica (máx. 0,3; el valor predeterminado es 1) en todas las particiones, lo que da como resultado cinco particiones con dos réplicas cada una.

Para ver un ejemplo de reducción horizontal, si ha seleccionado un valor de objetivo del 60 %, ElastiCache para Valkey y Redis OSS no se reducirá horizontalmente de forma automática hasta que la métrica sea inferior o igual al 45 % (25 % por debajo del objetivo del 60 %).

### Consideraciones de Auto Scaling
<a name="AutoScaling-Scaling-Considerations-Replicas"></a>

Tenga en cuenta las siguientes consideraciones:
+ En las políticas de escalado de seguimiento de destino, se presupone que el escalado ascendente se lleva a cabo cuando la métrica está por encima del valor de destino. No puede utilizar una política de escalado de seguimiento de destinos si la métrica especificada está por debajo del valor de destino. ElastiCache para Valkey y Redis OSS escala horizontalmente las réplicas con un máximo (porcentaje de desviación redondeada a partir del objetivo; el predeterminado es 1) de las réplicas existentes en todas las particiones del clúster.
+ Las políticas de escalado de seguimiento de destino no realizan el escalado cuando la métrica especificada no tiene datos suficientes. No realiza el escalado porque la carencia de datos no se interpreta como una infrautilización de recursos. 
+ Es posible que haya diferencias entre el valor de destino y los puntos de datos de la métrica real. Esto se debe a que el escalado automático de ElastiCache siempre actúa de forma conservadora y redondea hacia arriba o hacia abajo a la hora de determinar la cantidad de capacidad que se debe añadir o quitar. Con esto se evita que se agrega capacidad insuficiente o se elimine demasiada capacidad. 
+ Para garantizar la disponibilidad de la aplicación, el servicio escalará horizontalmente en proporción a la métrica tan rápido como puede, pero se reduce horizontalmente de manera más gradual con un máximo de reducción horizontal de 1 réplica en las particiones del clúster. 
+ Puede tener varias políticas de escalado de seguimiento de destino en un clúster de ElastiCache para Valkey y Redis OSS, siempre que cada uno de ellos utilice una métrica diferente. El objetivo del escalado automático siempre es dar prioridad a la disponibilidad, por lo que su comportamiento varía en función de si las políticas de seguimiento de destino están listas para el escalado horizontal o la reducción horizontal. Realizará un escalado horizontal del servicio si cualquiera de las políticas de seguimiento de destino está lista para el escalado horizontal, pero solo realizará la reducción horizontal si todas las políticas de seguimiento de destino (que tienen la parte de reducción horizontal habilitada) están listas para la reducción horizontal. 
+ No modifique ni elimine las alarmas de CloudWatch que administra el escalado automático de ElastiCache para las políticas de escalado de seguimiento de destino. El escalado automático elimina de forma automática las alarmas cuando se elimina la política de escalado o el clúster. 
+ El escalado automático de ElastiCache no impide modificar de forma manual las réplicas en las particiones. Estos ajustes manuales no afectan a las alarmas de CloudWatch existentes adjuntas a la política de escalado, pero pueden afectar a las métricas que pueden activar estas alarmas de CloudWatch. 
+ Estas alarmas de CloudWatch administradas por Auto Scaling se definen a través de la métrica AVG (Promedio) en todas las particiones del clúster. Por lo tanto, tener particiones activas puede resultar en cualquiera de los siguientes escenarios:
  + escalado cuando no es necesario debido a la carga en algunas particiones activas que desencadenan una alarma de CloudWatch
  + no escalar cuando sí sea necesario debido a un AVG (Promedio) agregado en todas las particiones que causa que la alarma se interrumpa. 
+ Siguen aplicándose los límites predeterminados de ElastiCache en nodos por clúster. Por lo tanto, al optar por Auto Scaling y, si espera que los nodos máximos sean superiores al límite predeterminado, solicite un aumento del límite en [AWS Service Limits](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) y elija el tipo de límite **Nodes per cluster per instance type** (Nodos por clúster por tipo de instancias). 
+ Asegúrese de tener suficientes ENI (interfaces de red elásticas) disponibles en su VPC, que son necesarias durante el escalado horizontal. Para obtener más información, consulte [Interfaces de red elástica](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_ElasticNetworkInterfaces.html).
+ Si no hay suficiente capacidad disponible de EC2, el escalado automático de ElastiCache no se escalará horizontalmente hasta que la capacidad se encuentre disponible o hasta que modifique de forma manual el clúster a los tipos de instancia que tengan suficiente capacidad.
+ El escalado automático de ElastiCache no admite el escalado de réplicas con un clúster que tenga un `ReservedMemoryPercent` menor del 25 %. Para obtener más información, consulte [Administración de la memoria reservada para Valkey y Redis OSS](redis-memory-management.md). 

# Adición de una política de escalado
<a name="AutoScaling-Adding-Policy-Replicas"></a>

Puede agregar una política de escalado mediante la Consola de administración de AWS. 

**Adición de una política de escalado mediante la Consola de administración de AWS**

Cómo añadir una política de escalado automático a ElastiCache para Valkey y Redis OSS

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

1. En el panel de navegación, elija **Valkey** o **Redis OSS**. 

1. Elija el clúster al que desea agregar una política (elija el nombre del clúster y no el botón a su izquierda). 

1. Elija la pestaña de **Auto Scaling policies** (Políticas de Auto Scaling). 

1. Elija **add dynamic scaling** (agregar escalado dinámico). 

1. En **Scaling policies** (Políticas de escalado), elija **Add dynamic scaling** (Agregar escalado dinámico).

1. En **Policy name** (Nombre de política), ingrese el nombre de la política. 

1. En **Scalable Dimension** (Dimensión escalable), seleccione **Replicas** (Réplicas) en el cuadro de diálogo. 

1. Para el valor de objetivo, escriba el porcentaje promedio de utilización de la CPU que desea mantener en las réplicas de ElastiCache. El valor debe ser >=35 y <=70. Las réplicas de clúster se agregan o quitan para mantener la métrica en un valor próximo al especificado.

1. (Opcional) La consola no admite periodos de recuperación de reducción o escalado horizontal. Utilice la AWS CLI para modificar los valores de periodo de recuperación. 

1. En **Capacidad mínima**, escriba el número mínimo de réplicas que debe mantener la política de escalado automático de ElastiCache. 

1. En **Capacidad máxima**, escriba el número máximo de réplicas que debe mantener la política de escalado automático de ElastiCache. Este valor debe ser >=5. 

1. Seleccione **Crear**.

# Registro de un destino escalable
<a name="AutoScaling-Register-Policy"></a>

Puede aplicar una política de escalado en función de una métrica predefinida o una personalizada. Para ello, puede usar AWS CLI o la API de Auto Scaling de aplicaciones. El primer paso consiste en registrar su grupo de replicación de ElastiCache para Valkey y Redis OSS en el escalado automático. 

Para poder utilizar el escalado automático de ElastiCache con un clúster, debe registrar su clúster en el escalado automático de ElastiCache. Esto se hace para definir la dimensión y los límites de escalado que se van a aplicar a ese clúster. El escalado automático de ElastiCache escala de forma dinámica el clúster a lo largo de la dimensión escalable `elasticache:replication-group:Replicas`, que representa el número de réplicas del clúster por partición. 

**Uso de la CLI** 

Para registrar el clúster de ElastiCache, utilice el comando [register-scalable-target](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/register-scalable-target.html) con los siguientes parámetros: 
+ --service-namespace: establezca este valor en elasticache. 
+ --resource-id: el identificador de recurso para el clúster de ElastiCache. Para este parámetro, el tipo de recurso es ReplicationGroup y el identificador único es el nombre del clúster; por ejemplo, `replication-group/myscalablecluster`. 
+ --scalable-dimension: establezca este valor en `elasticache:replication-group:Replicas`. 
+ --min-capacity: número mínimo de réplicas que administrará el escalado automático de ElastiCache. Para obtener información sobre la relación entre --min-capacity, --max-capacity y el número de réplicas del clúster, consulte [Capacidad mínima y máxima](AutoScaling-Policies.md#AutoScaling-MinMax).
+ --max-capacity: número máximo de réplicas que administrará el escalado automático de ElastiCache. Para obtener información sobre la relación entre --min-capacity, --max-capacity y el número de réplicas del clúster, consulte [Capacidad mínima y máxima](AutoScaling-Policies.md#AutoScaling-MinMax).

**Example**  
En el siguiente ejemplo, registra un clúster de ElastiCache denominado `myscalablecluster`. El registro indica que el clúster debe escalarse de forma dinámica para tener de una a cinco réplicas.   
Para Linux, macOS o Unix:  

```
aws application-autoscaling register-scalable-target \
    --service-namespace elasticache \
    --resource-id replication-group/myscalablecluster \
    --scalable-dimension elasticache:replication-group:Replicas \
    --min-capacity 1 \
    --max-capacity 5 \
```
Para Windows:  

```
aws application-autoscaling register-scalable-target ^
    --service-namespace elasticache ^
    --resource-id replication-group/myscalablecluster ^
    --scalable-dimension elasticache:replication-group:Replicas ^
    --min-capacity 1 ^
    --max-capacity 5 ^
```

**Uso de la API**

Para registrar el clúster de ElastiCache, utilice el comando [register-scalable-target](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/register-scalable-target.html) con los siguientes parámetros: 
+ ServiceNamespace: establezca este valor en elasticache. 
+ ResourceID: el identificador de recurso para el clúster de ElastiCache. Para este parámetro, el tipo de recurso es ReplicationGroup y el identificador único es el nombre del clúster; por ejemplo, `replication-group/myscalablecluster`. 
+ ScalableDimension: establezca este valor en `elasticache:replication-group:Replicas`. 
+ MinCapacity: número mínimo de réplicas que administrará el escalado automático de ElastiCache. Para obtener información sobre la relación entre --min-capacity, --max-capacity y el número de réplicas del clúster, consulte [Capacidad mínima y máxima](AutoScaling-Policies.md#AutoScaling-MinMax).
+ MaxCapacity: número máximo de réplicas que administrará el escalado automático de ElastiCache. Para obtener información sobre la relación entre --min-capacity, --max-capacity y el número de réplicas del clúster, consulte [Capacidad mínima y máxima](AutoScaling-Policies.md#AutoScaling-MinMax).

**Example**  
En el siguiente ejemplo, se registra un clúster denominado `myscalablecluster` con la API de Application Auto Scaling. Este registro indica que el clúster debe escalarse de forma dinámica para tener de una a cinco réplicas. 

```
POST / HTTP/1.1
Host: autoscaling.us-east-2.amazonaws.com
Accept-Encoding: identity
Content-Length: 219
X-Amz-Target: AnyScaleFrontendService.RegisterScalableTarget
X-Amz-Date: 20160506T182145Z
User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8
Content-Type: application/x-amz-json-1.1
Authorization: AUTHPARAMS
{
    "ServiceNamespace": "elasticache",
    "ResourceId": "replication-group/myscalablecluster",
    "ScalableDimension": "elasticache:replication-group:Replicas",
    "MinCapacity": 1,
    "MaxCapacity": 5
}
```

# Definición de una política de escalado
<a name="AutoScaling-Defining-Policy"></a>

Una configuración de la política de escalado de seguimiento de destino está representada por un bloque JSON en el que se definen las métricas y los valores de destino. Puede guardar una configuración de la política de escalado como bloque JSON en un archivo de texto. Puede utilizar ese archivo de texto al invocar AWS CLI o la API de Auto Scaling de aplicaciones. Para obtener más información sobre la sintaxis de configuración de políticas, consulte [TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_TargetTrackingScalingPolicyConfiguration.html) en la *Referencia de la API de Auto Scaling de aplicaciones*. 

Las siguientes opciones se encuentran disponibles para definir una configuración de la política de escalado de seguimiento de destino:

**Topics**
+ [Uso de una métrica predefinida](#AutoScaling-Predefined-Metric)
+ [Edición de una política de escalado](AutoScaling-Editing-Policy.md)
+ [Eliminación de una política de escalado](AutoScaling-Deleting-Policy.md)
+ [Uso de CloudFormation para las políticas de Auto Scaling](AutoScaling-with-Cloudformation.md)
+ [Escalado programado](AutoScaling-with-Scheduled-Scaling-Replicas.md)

## Uso de una métrica predefinida
<a name="AutoScaling-Predefined-Metric"></a>

Una configuración de la política de escalado de seguimiento de destino está representada por un bloque JSON en el que se definen las métricas y los valores de destino. Puede guardar una configuración de la política de escalado como bloque JSON en un archivo de texto. Puede utilizar ese archivo de texto al invocar AWS CLI o la API de Auto Scaling de aplicaciones. Para obtener más información sobre la sintaxis de configuración de políticas, consulte [TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_TargetTrackingScalingPolicyConfiguration.html) en la *Referencia de la API de Auto Scaling de aplicaciones*. 

Las siguientes opciones se encuentran disponibles para definir una configuración de la política de escalado de seguimiento de destino:

**Topics**
+ [Uso de una métrica predefinida](#AutoScaling-Predefined-Metric)
+ [Uso de una métrica personalizada](#AutoScaling-Custom-Metric)
+ [Uso de periodos de recuperación](#AutoScaling-Using-Cooldowns)
+ [Desactivación de actividad de escalado descendente](#AutoScaling-Disabling-Scalein)
+ [Aplicación de una política de escalado a un clúster de ElastiCache para Valkey y Redis OSS](#AutoScaling-Applying-Policy)

### Uso de una métrica predefinida
<a name="AutoScaling-Predefined-Metric"></a>

Mediante las métricas predefinidas, puede definir rápidamente una política de escalado de seguimiento de destino para un clúster de ElastiCache para Valkey y Redis OSS que funciona con el seguimiento de destino en el escalado automático de ElastiCache. Actualmente, ElastiCache admite las siguientes métricas predefinidas en el escalado automático de réplicas de ElastiCache: 

`ElastiCacheReplicaEngineCPUUtilization`: el valor medio de la métrica EngineCPUUtilization en CloudWatch en todas las réplicas del clúster. Puede encontrar el valor agregado de la métrica en CloudWatch en `ReplicationGroupId, Role` de ElastiCache para los valores de ReplicationGroupId y Role Replica necesarios. 

Para usar una métrica predefinida en su política de escalado, puede crear una configuración de seguimiento de destino para su política de escalado. Esta configuración debe incluir `PredefinedMetricSpecification` para la métrica predefinida y `TargetValue` para el valor de destino de esa métrica. 

### Uso de una métrica personalizada
<a name="AutoScaling-Custom-Metric"></a>

Mediante las métricas personalizadas, puede definir una política de escalado de seguimiento de destino que cumpla sus requisitos personalizados. Puede definir una métrica personalizada en función de cualquier métrica de ElastiCache para Valkey y Redis OSS que cambie en proporción al escalado. No todas las métricas de ElastiCache funcionan para el seguimiento de destino. La métrica debe ser una métrica de utilización válida y describir el nivel de actividad de una instancia. El valor de la métrica debe aumentar o reducirse en proporción al número de réplicas del clúster. Este aumento o reducción proporcionales son necesarios para utilizar los datos de las métricas a fin de ampliar o reducir proporcionalmente el número de réplicas. 

**Example**  
En el siguiente ejemplo se describe una configuración de seguimiento de destino para una política de escalado. En esta configuración, una métrica personalizada ajusta un clúster en función de un uso medio de la CPU del 50 % en todas las réplicas de un clúster denominado `my-db-cluster`.   

```
{"TargetValue": 50,
    "CustomizedMetricSpecification":
    {"MetricName": "EngineCPUUtilization",
        "Namespace": "AWS/ElastiCache",
        "Dimensions": [
            {"Name": "ReplicationGroup","Value": "my-db-cluster"},
            {"Name": "Role","Value": "REPLICA"}
        ],
        "Statistic": "Average",
        "Unit": "Percent"
    }
}
```

### Uso de periodos de recuperación
<a name="AutoScaling-Using-Cooldowns"></a>

Puede especificar un valor, en segundos, a fin de que `ScaleOutCooldown` agregue un periodo de recuperación para el escalado horizontal de su clúster. De forma similar, puede agregar un valor, en segundos, a fin de que `ScaleInCooldown` agregue un periodo de recuperación para el escalado vertical de su clúster. Para obtener más información sobre `ScaleInCooldown` y `ScaleOutCooldown`, consulte [TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_TargetTrackingScalingPolicyConfiguration.html) en la *Referencia de la API de Auto Scaling de aplicaciones*. En el siguiente ejemplo se describe una configuración de seguimiento de destino para una política de escalado. En esta configuración, la métrica predefinida `ElastiCacheReplicaEngineCPUUtilization` se usa para ajustar un clúster en función del uso medio de la CPU del 40 % en todas las réplicas de ese clúster. La configuración proporciona un periodo de recuperación de escalado descendente de 10 minutos y un periodo de recuperación de escalado ascendente de 5 minutos. 

```
{"TargetValue": 40.0,
    "PredefinedMetricSpecification":
    {"PredefinedMetricType": "ElastiCacheReplicaEngineCPUUtilization"
    },
    "ScaleInCooldown": 600,
    "ScaleOutCooldown": 300
}
```

### Desactivación de actividad de escalado descendente
<a name="AutoScaling-Disabling-Scalein"></a>

Puede evitar que la configuración de la política de escalado de seguimiento de destino reduzca horizontalmente su clúster de ElastiCache para Valkey y Redis OSS desactivando la actividad de reducción horizontal. La deshabilitación de la actividad de escalado horizontal evita que la política de escalado elimine réplicas, a la vez que permite a la política de escalado agregarlas según sea necesario. 

Puede especificar un valor booleano a fin de que `DisableScaleIn` habilite o deshabilite la actividad de reducción horizontal para su clúster. Para obtener más información sobre `DisableScaleIn`, consulte [TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_TargetTrackingScalingPolicyConfiguration.html) en la *Referencia de la API de Auto Scaling de aplicaciones*. 

**Example**  
En el siguiente ejemplo se describe una configuración de seguimiento de destino para una política de escalado. En esta configuración, la métrica predefinida `ElastiCacheReplicaEngineCPUUtilization` ajusta un clúster en función del uso medio de la CPU del 40 % en todas las réplicas de ese clúster. La configuración deshabilita la actividad de escalado descendente para la política de escalado. 

```
{"TargetValue": 40.0,
    "PredefinedMetricSpecification":
    {"PredefinedMetricType": "ElastiCacheReplicaEngineCPUUtilization"
    },
    "DisableScaleIn": true
}
```

### Aplicación de una política de escalado a un clúster de ElastiCache para Valkey y Redis OSS
<a name="AutoScaling-Applying-Policy"></a>

Tras registrar su clúster con escalado automático de ElastiCache para Valkey y Redis OSS y definir una política de escalado, puede aplicarla al clúster registrado. Para aplicar una política de escalado a un clúster de ElastiCache para Valkey y Redis OSS, puede utilizar la AWS CLI o la API de Escalado automático de aplicaciones. 

**Uso de AWS CLI**

Para aplicar una política de escalado a un clúster de ElastiCache para Valkey y Redis OSS, utilice el comando [put-scaling-policy](https://docs.aws.amazon.com/cli/latest/reference/autoscaling/put-scaling-policy.html) con los siguientes parámetros: 
+ --policy-name: el nombre de la política de escalado. 
+ --policy-type: establezca este valor en `TargetTrackingScaling`. 
+ --resource-id: el identificador de recurso para el clúster. Para este parámetro, el tipo de recurso es ReplicationGroup y el identificador único es el nombre del clúster; por ejemplo, `replication-group/myscalablecluster`. 
+ --service-namespace: establezca este valor en elasticache. 
+ --scalable-dimension: establezca este valor en `elasticache:replication-group:Replicas`. 
+ --target-tracking-scaling-policy-configuration: la configuración de la política de escalado de seguimiento de destino que se utilizará para el clúster. 

**Example**  
En el siguiente ejemplo, se aplica una política de escalado de seguimiento de destino denominada `myscalablepolicy` a un clúster denominado `myscalablecluster` con escalado automático de ElastiCache. Para ello, puede usar una configuración de la política guardada en un archivo denominado `config.json`. 

Para Linux, macOS o Unix:

```
aws application-autoscaling put-scaling-policy \
    --policy-name myscalablepolicy \
    --policy-type TargetTrackingScaling \
    --resource-id replication-group/myscalablecluster \
    --service-namespace elasticache \
    --scalable-dimension elasticache:replication-group:Replicas \
    --target-tracking-scaling-policy-configuration file://config.json
```

```
{"TargetValue": 40.0,
    "PredefinedMetricSpecification":
    {"PredefinedMetricType": "ElastiCacheReplicaEngineCPUUtilization"
    },
    "DisableScaleIn": true
}
```

Para Windows:

```
aws application-autoscaling put-scaling-policy ^
    --policy-name myscalablepolicy ^
    --policy-type TargetTrackingScaling ^
    --resource-id replication-group/myscalablecluster ^
    --service-namespace elasticache ^
    --scalable-dimension elasticache:replication-group:Replicas ^
    --target-tracking-scaling-policy-configuration file://config.json
```

**Uso de la API**

Para aplicar una política de escalado a un clúster de ElastiCache con la API de Escalado automático de aplicaciones, utilice la operación [PutScalingPolicy](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_PutScalingPolicy.html) de la API de Escalado automático de aplicaciones con los siguientes parámetros: 
+ PolicyName: el nombre de la política de escalado. 
+ PolicyType: establezca este valor en `TargetTrackingScaling`. 
+ ResourceID: el identificador de recurso para el clúster. Para este parámetro, el tipo de recurso es ReplicationGroup y el identificador único es el nombre del clúster de ElastiCache para Redis OSS, por ejemplo, `replication-group/myscalablecluster`. 
+ ServiceNamespace: establezca este valor en elasticache. 
+ ScalableDimension: establezca este valor en `elasticache:replication-group:Replicas`. 
+ TargetTrackingScalingPolicyConfiguration: la configuración de la política de escalado de seguimiento de destino que se utilizará para el clúster. 

**Example**  
En el siguiente ejemplo, se aplica una política de escalado de seguimiento de destino denominada `scalablepolicy` a un clúster denominado `myscalablecluster` con escalado automático de ElastiCache. Puede usar una configuración de la política en función de la métrica predefinida `ElastiCacheReplicaEngineCPUUtilization`. 

```
POST / HTTP/1.1
Host: autoscaling.us-east-2.amazonaws.com
Accept-Encoding: identity
Content-Length: 219
X-Amz-Target: AnyScaleFrontendService.PutScalingPolicy
X-Amz-Date: 20160506T182145Z
User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8
Content-Type: application/x-amz-json-1.1
Authorization: AUTHPARAMS
{
    "PolicyName": "myscalablepolicy",
    "ServiceNamespace": "elasticache",
    "ResourceId": "replication-group/myscalablecluster",
    "ScalableDimension": "elasticache:replication-group:Replicas",
    "PolicyType": "TargetTrackingScaling",
    "TargetTrackingScalingPolicyConfiguration": {
        "TargetValue": 40.0,
        "PredefinedMetricSpecification":
        {
            "PredefinedMetricType": "ElastiCacheReplicaEngineCPUUtilization"
        }
    }
}
```

# Edición de una política de escalado
<a name="AutoScaling-Editing-Policy"></a>

Puede editar una política de escalado utilizando la Consola de administración de AWS, la AWS CLI o la API de Auto Scaling de aplicaciones. 

**Edición de una política de escalado mediante la Consola de administración de AWS**

Solo puede editar políticas con el tipo Predefined metrics (Métricas predefinidas) mediante la Consola de administración de AWS

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

1. En el panel de navegación, elija **Valkey** o **Redis OSS**.

1. Elija el clúster al que desea agregar una política (elija el nombre del clúster y no el botón a su izquierda). 

1. Elija la pestaña de **Auto Scaling policies** (Políticas de Auto Scaling). 

1. En **Scaling policies** (Políticas de escalado), elija el botón a la izquierda de la política de Auto Scaling que desea cambiar y, a continuación, elija **Modify** (Modificar). 

1. Realice los cambios solicitados en la política.

1. Elija **Modificar**.

1. Realice cambios en la política. 

1. Elija **Modificar**.

**Edición de una política de escalado mediante la AWS CLI o la API de Auto Scaling de aplicaciones**

Puede utilizar AWS CLI o la API de Application Auto Scaling para editar una política de escalado de la misma forma que aplica una política de escalado: 
+ Al usar la API de Auto Scaling de aplicaciones, especifique el nombre de la política que desea editar en el parámetro `PolicyName`. Especifique nuevos valores para los parámetros que desea cambiar. 

Para obtener más información, consulte [Aplicación de una política de escalado a un clúster de ElastiCache para Valkey y Redis OSS](AutoScaling-Defining-Policy.md#AutoScaling-Applying-Policy).

# Eliminación de una política de escalado
<a name="AutoScaling-Deleting-Policy"></a>

Puede eliminar una política de escalado mediante la Consola de administración de AWS, la AWS CLI o la API de Auto Scaling de aplicaciones.

**Eliminación de una política de escalado mediante la Consola de administración de AWS**

Solo puede editar políticas con el tipo Predefined metrics (Métricas predefinidas) mediante la Consola de administración de AWS

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

1. En el panel de navegación, elija **Valkey** o **Redis OSS**.

1. Elija el clúster con la política de Auto Scaling que desea eliminar.

1. Elija la pestaña de **Auto Scaling policies** (Políticas de Auto Scaling). 

1. En **Scaling policies** (Políticas de escalado), elija la política de Auto Scaling y, a continuación, elija **Delete** (Eliminar). 

**Eliminación de una política de escalado mediante la AWS CLI o la API de Auto Scaling de aplicaciones**

Puede utilizar la AWS CLI o la API de Application Auto Scaling para eliminar una política de escalado de un clúster de ElastiCache. 

**CLI**

Para eliminar una política de escalado de un clúster de ElastiCache para Valkey y Redis OSS, utilice el comando [delete-scaling-policy](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/delete-scaling-policy.html) con los siguientes parámetros: 
+ --policy-name: el nombre de la política de escalado. 
+ --resource-id: el identificador de recurso para el clúster. Para este parámetro, el tipo de recurso es ReplicationGroup y el identificador único es el nombre del clúster; por ejemplo, `replication-group/myscalablecluster`. 
+ --service-namespace: establezca este valor en elasticache. 
+ --scalable-dimension: establezca este valor en `elasticache:replication-group:Replicas`. 

**Example**  
En el siguiente ejemplo, elimina una política de escalado de seguimiento de destino denominada `myscalablepolicy` de un clúster de ELC denominado `myscalablecluster`. 

Para Linux, macOS o Unix:

```
aws application-autoscaling delete-scaling-policy \
    --policy-name myscalablepolicy \
    --resource-id replication-group/myscalablecluster \
    --service-namespace elasticache \
    --scalable-dimension elasticache:replication-group:Replicas \
```

Para Windows:

```
aws application-autoscaling delete-scaling-policy ^
    --policy-name myscalablepolicy ^
    --resource-id replication-group/myscalablecluster ^
    --service-namespace elasticache ^
    --scalable-dimension elasticache:replication-group:Replicas ^
```

**API**

Para eliminar una política de escalado de su clúster de ElastiCache para Valkey y Redis OSS, utilice la operación [DeleteScalingPolicy](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_DeleteScalingPolicy.html) de la API de Escalado automático de aplicaciones con los siguientes parámetros: 
+ PolicyName: el nombre de la política de escalado. 
+ ResourceID: el identificador de recurso para el clúster. Para este parámetro, el tipo de recurso es ReplicationGroup y el identificador único es el nombre del clúster; por ejemplo, `replication-group/myscalablecluster`. 
+ ServiceNamespace: establezca este valor en elasticache. 
+ ScalableDimension: establezca este valor en `elasticache:replication-group:Replicas`. 

En el siguiente ejemplo, elimina una política de escalado de seguimiento de destino denominada `myscalablepolicy` de un clúster llamado `myscalablecluster` con la API de Application Auto Scaling. 

```
POST / HTTP/1.1
>>>>>>> mainline
Host: autoscaling.us-east-2.amazonaws.com
Accept-Encoding: identity
Content-Length: 219
X-Amz-Target: AnyScaleFrontendService.DeleteScalingPolicy
X-Amz-Date: 20160506T182145Z
User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8
Content-Type: application/x-amz-json-1.1
Authorization: AUTHPARAMS
{
    "PolicyName": "myscalablepolicy",
    "ServiceNamespace": "elasticache",
    "ResourceId": "replication-group/myscalablecluster",
    "ScalableDimension": "elasticache:replication-group:Replicas"
}
```

# Uso de CloudFormation para las políticas de Auto Scaling
<a name="AutoScaling-with-Cloudformation"></a>

Este fragmento muestra cómo crear una acción programada y aplicarla a un recurso [AWS::ElastiCache::ReplicationGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html) mediante el recurso [AWS::ApplicationAutoScaling::ScalableTarget](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html). Utiliza las funciones intrínsecas [Fn::Join](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-join.html) y [Ref](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) para construir la propiedad `ResourceId` con el nombre lógico del recurso `AWS::ElastiCache::ReplicationGroup` especificado en la misma plantilla. 

```
ScalingTarget:
   Type: 'AWS::ApplicationAutoScaling::ScalableTarget'
   Properties:
     MaxCapacity: 0
     MinCapacity: 0
     ResourceId: !Sub replication-group/${logicalName}
     ScalableDimension: 'elasticache:replication-group:Replicas'
     ServiceNamespace: elasticache
     RoleARN: !Sub "arn:aws:iam::${AWS::AccountId}:role/aws-service-role/elasticache.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_ElastiCacheRG"

  ScalingPolicy:
    Type: "AWS::ApplicationAutoScaling::ScalingPolicy"
    Properties:
      ScalingTargetId: !Ref ScalingTarget
      ServiceNamespace: elasticache
      PolicyName: testpolicy
      PolicyType: TargetTrackingScaling
      ScalableDimension: 'elasticache:replication-group:Replicas'
      TargetTrackingScalingPolicyConfiguration:
        PredefinedMetricSpecification:
          PredefinedMetricType: ElastiCacheReplicaEngineCPUUtilization
        TargetValue: 40
```

# Escalado programado
<a name="AutoScaling-with-Scheduled-Scaling-Replicas"></a>

El escalado según una programación le permite escalar la aplicación en respuesta a los cambios previstos en la demanda. Para utilizar el escalado programado, deberá crear acciones programadas, que indiquen a ElastiCache para Valkey y Redis OSS que realice actividades de escalado en momentos específicos. Cuando se crea una acción programada, se especifica un clúster de ElastiCache existente, cuando se debe producir la actividad de escalado, la capacidad mínima y la capacidad máxima. Puede crear acciones programadas que realizan el escalado de forma puntual o periódica. 

 Solo puede crear una acción programada para los clústeres de ElastiCache que ya existen. No puede crear una acción programada a la vez que crea un clúster.

A fin de obtener más información sobre la terminología de la creación, administración y eliminación de acciones programadas, consulte [Comandos de uso frecuente para la creación, administración y eliminación de acciones programadas](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-scheduled-scaling.html#scheduled-scaling-commonly-used-commands). 

**Para crear una acción programada puntual:**

Similar a la dimensión Shard (Partición). Consulte [Escalado programado](AutoScaling-with-Scheduled-Scaling-Shards.md).

**Para eliminar una acción programada**

Similar a la dimensión Shard (Partición). Consulte [Escalado programado](AutoScaling-with-Scheduled-Scaling-Shards.md).

**Para administrar el escalado programado mediante la AWS CLI**

Utilice las siguientes API de escalado automático de aplicaciones:
+ [put-scheduled-action](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/put-scheduled-action.html) 
+ [describe-scheduled-actions](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/describe-scheduled-actions.html) 
+ [delete-scheduled-action](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/delete-scheduled-action.html) 

## Utilice CloudFormation para crear políticas de Auto Scaling
<a name="AutoScaling-with-Cloudformation-Update-Action"></a>

Este fragmento muestra cómo crear una acción programada y aplicarla a un recurso [AWS::ElastiCache::ReplicationGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html) mediante el recurso [AWS::ApplicationAutoScaling::ScalableTarget](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html). Utiliza las funciones intrínsecas [Fn::Join](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-join.html) y [Ref](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) para construir la propiedad `ResourceId` con el nombre lógico del recurso `AWS::ElastiCache::ReplicationGroup` especificado en la misma plantilla. 

```
ScalingTarget:
   Type: 'AWS::ApplicationAutoScaling::ScalableTarget'
   Properties:
     MaxCapacity: 0
     MinCapacity: 0
     ResourceId: !Sub replication-group/${logicalName}
     ScalableDimension: 'elasticache:replication-group:Replicas'
     ServiceNamespace: elasticache
     RoleARN: !Sub "arn:aws:iam::${AWS::AccountId}:role/aws-service-role/elasticache.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_ElastiCacheRG"
     ScheduledActions:
       - EndTime: '2020-12-31T12:00:00.000Z'
         ScalableTargetAction:
           MaxCapacity: '5'
           MinCapacity: '2'
         ScheduledActionName: First
         Schedule: 'cron(0 18 * * ? *)'
```