

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.

# 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 * * ? *)'
```