

# Uso de incrementos predefinidos en función de las alarmas de CloudWatch para escalar los servicios de Amazon ECS
<a name="service-autoscaling-stepscaling"></a>

Con las políticas de escalado por pasos, crea y administra las alarmas de CloudWatch que invocan el proceso de escalado. Cuando se infringe una alarma, Amazon ECS inicia la política de escalado asociada a esa alarma. La política de escalado por pasos escala las tareas mediante un conjunto de ajustes, conocidos como ajustes escalonados. La magnitud del ajuste varía en función del tamaño de la interrupción de la alarma. 
+ Si la infracción supera el primer umbral, Amazon ECS aplicará el ajuste del primer paso. 
+ Si la infracción supera el segundo umbral, Amazon ECS aplicará el ajuste del segundo paso, y así sucesivamente.

Le recomendamos que utilice políticas de escalado de seguimiento de destinos para escalar según métricas como la utilización promedio de la CPU o el recuento promedio de solicitudes por destino. Las métricas que disminuyen cuando aumenta la capacidad y aumentan cuando disminuye la capacidad se pueden usar para reducir o escalar horizontalmente de forma proporcional el número de tareas que utilizan el seguimiento de destino. Esto ayuda a garantizar que Amazon ECS siga de cerca la curva de demanda de sus aplicaciones.

# Creación de una política de escalado por pasos para el escalado automático de servicios de Amazon ECS
<a name="step-scaling-create-policy"></a>

Cree una política de escalado por pasos para que Amazon ECS aumente o disminuya automáticamente el número deseado de tareas en el servicio. El escalado por pasos se ejecuta según una serie de ajustes de escalado, denominados ajustes por pasos, que pueden variar en función del tamaño de la interrupción de alarma. 

## Consola
<a name="step-scaling-create-policy-aws-console"></a>

1. Además de los permisos estándar de IAM para crear y actualizar servicios, necesita permisos adicionales. Para obtener más información, consulte [Permisos de IAM necesarios para el escalado automático del servicio de Amazon ECS](auto-scaling-IAM.md).

1. Determine las métricas que quiere utilizar para la política. Están disponibles las siguientes métricas:
   +  **ECSServiceAverageCPUUtilization**: uso medio de la CPU que debe utilizar el servicio. 
   + **ECSServiceAverageMemoryUtilization**: uso medio de la memoria que debe utilizar el servicio. 
   + **ALBRequestCountPerTarget**: número medio de solicitudes por minuto que debe recibir de manera ideal.

1. Cree las alarmas de CloudWatch para las métricas. Para obtener más información, consulte [Create a CloudWatch alarm based on a static threshold](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ConsoleAlarms.html) (Creación de una alarma de CloudWatch basada en un umbral estático) en la *Guía del usuario de Amazon CloudWatch*.

1. Abra la consola en [https://console.aws.amazon.com/ecs/v2](https://console.aws.amazon.com/ecs/v2).

1. En la página **Clusters** (Clústeres), elija el clúster.

1. En la página de detalles del clúster, en la sección **Servicios**, elija el servicio.

   Se abrirá la página de detalles del servicio.

1. Elija **Establecer el número de tareas**.

1. En **Recuento de tareas de servicio de Amazon ECS**, elija **Usar escalado automático**.

   Se abrirá la sección **Recuento de tareas**.

   1. En **Cantidad mínima de tareas**, ingrese el límite mínimo del número de tareas que se va a utilizar para el escalado automático del servicio. El recuento deseado no será inferior a este recuento.

   1. En **Máximo**, ingrese el límite máximo del número de tareas que se va a utilizar para el escalado automático del servicio. El recuento deseado no será superior a este recuento.

   1. Seleccione **Save**.

      Se abrirá la página de políticas.

1. Elija **Crear política de escalado**.

   Se abrirá la página **Crear política**.

1. Para **Tipo de política de escalado**, elija **Escalado de pasos**.

1. Configure las propiedades de escalado horizontal. En **Pasos para agregar tareas**, haga lo siguiente:

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

   1. En **Nombre de la alarma de CloudWatch**, elija la alarma de CloudWatch.

   1. En **Tipo de agregación de métricas**, elija cómo comparar la métrica seleccionada con el umbral definido.

   1. En **Tipos de ajuste**, elija si el ajuste se basa en un cambio en el número de tareas o en un cambio en el porcentaje de tareas.

   1. En **Acciones que ejecutar**, introduzca los valores de la acción que se va a realizar.

      Seleccione **Agregar paso** para agregar otras acciones.

1. Configure las propiedades de la reducción horizontal. En **Pasos para quitar tareas**, haga lo siguiente:

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

   1. En **Nombre de la alarma de CloudWatch**, elija la alarma de CloudWatch.

   1. En **Tipo de agregación de métricas**, elija cómo comparar la métrica seleccionada con el umbral definido.

   1. En **Tipos de ajuste**, elija si el ajuste se basa en un cambio en el número de tareas o en un cambio en el porcentaje de tareas.

   1. En **Acciones que ejecutar**, introduzca los valores de la acción que se va a realizar.

      Seleccione **Agregar paso** para agregar otras acciones.

1. En **Periodo de recuperación**, ingrese la cantidad de tiempo, en segundos, que debe esperarse para que surta efecto una actividad de reducción horizontal anterior. En el caso de una política de ampliación, este es el momento en el que, después de una actividad de escalado horizontal, la política de escalado bloquea las actividades de reducción horizontal y limita el número de tareas que se pueden escalar horizontalmente a la vez. En el caso de una política de reducción horizontal, este es el tiempo que debe transcurrir tras completarse una actividad de reducción horizontal antes de que pueda comenzar otra actividad de reducción horizontal. 

1. Elija **Crear política de escalado**.

## AWS CLI
<a name="step-scaling-create-policy-aws-cli"></a>

1. Registre su servicio de Amazon ECS como un destino escalable mediante el comando [register-scalable-target](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/register-scalable-target.html).

1. Cree una política de escalado mediante el comando [put-scaling-policy](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/put-scaling-policy.html).