

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Como criar uma política de escalabilidade em etapas para redução
<a name="step-scaling-create-scale-in-policy"></a>

Para criar uma política de escala por etapas para reduzir a escala horizontalmente do seu grupo do Auto Scaling, use um dos métodos a seguir:

------
#### [ Console ]

**Etapa 1: criar um CloudWatch alarme para o limite métrico baixo**

1. Abra o CloudWatch console em [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. Se necessário, altere a região da . Na barra de navegação, selecione a região na qual o grupo do Auto Scaling reside.

1. No painel de navegação, escolha **Alarms, All alarms** (Alarmes, Todos os alarmes) e **Create alarm** (Criar alarme).

1. Escolha **Selecionar métrica**. 

1. Na guia **All metrics** (Todas as métricas), escolha **EC2**, **By Auto Scaling Group** (Por grupo do Auto Scaling) e insira o nome do grupo do Auto Scaling no campo de pesquisa. Depois, selecione `CPUUtilization` e escolha **Selecionar métrica**. A página **Especificar métrica e condições** será exibida, mostrando um gráfico e outras informações sobre a métrica. 

1. Em **Period (Período)**, escolha o período de avaliação para o alarme, por exemplo, 1 minuto. Ao avaliar o alarme, todos os períodos são agregados em um único ponto de dados. 
**nota**  
Um período mais curto cria um alarme mais sensível.

1. Em **Condições**, faça o seguinte:
   + Em **Tipo de limite**, escolha **Estático**.
   + Em **Whenever `CPUUtilization` is** (Sempre que for), especifique se você deseja que o valor da métrica seja maior que, maior que ou igual a, menor que, ou menor que ou igual ao limite de violação do alarme. Em **than** (que), insira o valor do limite desejado de violação de alarme.
**Importante**  
Para um alarme a ser usado com uma política para reduzir a escala horizontalmente (alarme inferior), certifique-se de não escolher um valor maior que ou igual ao limite.

1. Em **Configuração adicional**, faça o seguinte:
   + Em **Datapoints to alarm** (Pontos de dados para alarme), insira o número de pontos de dados (períodos de avaliação) durante os quais o valor da métrica deverá atender às condições de limite para o alarme. Por exemplo, com dois períodos consecutivos de 5 minutos, o estado de alarme levaria 10 minutos para ser invocado.
   + Em **Tratamento de dados ausentes**, escolha **Tratar dados ausentes como inválidos (limite de violação)**. Para obter mais informações, consulte [Configurando como CloudWatch os alarmes tratam dados perdidos no Guia CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html#alarms-and-missing-data) *do usuário da Amazon*.

1. Escolha **Próximo**.

   A página **Configure actions** (Configurar ações) é exibida.

1. Em **Notification** (Notificação), selecione um tópico do Amazon SNS para notificar quando o alarme estiver no estado `ALARM`, `OK` ou `INSUFFICIENT_DATA`.

   Para que o alarme envie várias notificações para o mesmo estado de alarme ou para diferentes estados de alarme, escolha **Add notification (Adicionar notificação)**.

   Para que o alarme não envie notificações, escolha **Remove (Remover)**.

1. Você pode deixar vazias as outras seções da página **Configure actions** (Configurar ações). Deixar as outras seções vazias cria um alarme sem associá-lo a uma política de escalabilidade. Em seguida, você pode associar o alarme a uma política de escalabilidade do console do Amazon EC2 Auto Scaling.

1. Escolha **Próximo**.

1. Insira um nome (por exemplo, `Step-Scaling-AlarmLow-RemoveCapacity`) e, opcionalmente, uma descrição para o alarme e escolha **Próximo**.

1. Selecione **Criar alarme**.

Use o procedimento a seguir para continuar de onde parou depois de criar o CloudWatch alarme.

**Etapa 2: Criar uma política de escalabilidade para reduzir a escala horizontalmente**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)e escolha **Auto Scaling Groups** no painel de navegação.

1. Marque a caixa de seleção ao lado do seu grupo do Auto Scaling. 

   Um painel dividido é aberto na parte inferior da página. 

1. Verificar se os limites de escalabilidade estão definidos adequadamente. Por exemplo, se sua capacidade desejada já estiver no máximo, especifique um novo máximo para aumentar a escala horizontalmente. Para obter mais informações, consulte [Definir limites de escalabilidade para seu grupo do Auto Scaling](asg-capacity-limits.md).

1. Na guia **Automatic scaling** (Escalabilidade automática), em **Dynamic scaling policies** (Políticas dinâmicas de escalabilidade), selecione **Create dynamic scaling policy** (Criar política dinâmica de escalabilidade).

1. Para **Tipo de política**, escolha **Escala por etapas** e especifique um nome para a política.

1. Para **CloudWatch alarme**, escolha seu alarme. Se você ainda não criou um alarme, escolha **Criar um CloudWatch alarme** e conclua as etapas 4 a 14 no procedimento anterior para criar um alarme.

1. Especifique a alteração no tamanho do grupo atual que essa política fará quando executada usando **Take the action (Executar a ação)**. É possível remover um número específico de instâncias ou uma porcentagem do tamanho do grupo existente ou definir o grupo para um tamanho exato. 

   Por exemplo, para criar uma política de redução da escala horizontalmente que diminua a capacidade do grupo em duas instâncias, selecione `Remove`, digite `2` no próximo campo e, em seguida, selecione `capacity units`. Por padrão, o limite superior desse ajuste em etapas é o limite do alarme, e o limite inferior é negativo (-) infinito. 

1. Para adicionar outra etapa, escolha **Add step (Adicionar etapa)** e defina o valor de acordo com o qual dimensionar e os limites inferior e superior da etapa em relação ao limite do alarme. 

1. Escolha **Criar**.

------
#### [ AWS CLI ]

Para criar uma política de escalonamento de etapas para reduzir a escala horizontalmente (diminuir a capacidade), você pode usar os seguintes comandos de exemplo. Substitua cada *user input placeholder* por suas próprias informações.

Ao usar o AWS CLI, primeiro você cria uma política de escalabilidade por etapas que fornece instruções ao Amazon EC2 Auto Scaling sobre como escalar quando o valor de uma métrica está diminuindo. Nesta etapa, você criará dois alarmes identificando a métrica a ser observada, definindo os limites superior e inferior da métrica e outros detalhes para os alarmes, e associando os alarmes às políticas de dimensionamento. 

**Etapa 1: Criar uma política para reduzir a escala horizontalmente**  
Use o [put-scaling-policy](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-scaling-policy.html)comando a seguir para criar uma política de escalabilidade de etapas chamada`my-step-scale-in-policy`, com um tipo de ajuste `ChangeInCapacity` que diminui a capacidade do grupo em 2 instâncias quando o CloudWatch alarme associado ultrapassa o valor mínimo do limite métrico.

```
aws autoscaling put-scaling-policy \
  --auto-scaling-group-name my-asg  \
  --policy-name my-step-scale-in-policy \
  --policy-type StepScaling \
  --adjustment-type ChangeInCapacity \
  --step-adjustments MetricIntervalUpperBound=0.0,ScalingAdjustment=-2
```

Anote o nome de recurso da Amazon (ARN) da política. Você precisa dele para criar o CloudWatch alarme para a política. 

```
{
    "PolicyARN": "arn:aws:autoscaling:region:123456789012:scalingPolicy:ac542982-cbeb-4294-891c-a5a941dfa787:autoScalingGroupName/my-asg:policyName/my-step-scale-out-policy
}
```

**Etapa 2: criar um CloudWatch alarme para o limite métrico baixo**  
Use o CloudWatch [put-metric-alarm](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudwatch/put-metric-alarm.html)comando a seguir para criar um alarme que diminua o tamanho do grupo de Auto Scaling com base no valor limite médio de CPU de 40 por cento por pelo menos dois períodos de avaliação consecutivos de dois minutos. Para usar sua própria métrica personalizada, especifique o nome em `--metric-name` e o namespace em `--namespace`.

```
aws cloudwatch put-metric-alarm --alarm-name Step-Scaling-AlarmLow-RemoveCapacity \
  --metric-name CPUUtilization --namespace AWS/EC2 --statistic Average \
  --period 120 --evaluation-periods 2 --threshold 40 \
  --comparison-operator LessThanOrEqualToThreshold \
  --dimensions "Name=AutoScalingGroupName,Value=my-asg" \
  --alarm-actions PolicyARN
```

------