Como criar uma política de escalabilidade em etapas para redução - Amazon EC2 Auto Scaling

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

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/.

  2. 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.

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

  4. Escolha Selecionar métrica.

  5. Na guia Todas as métricas EC2, escolha Por grupo de Auto Scaling e insira o nome do grupo 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.

  6. 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.

  7. 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.

  8. 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 do usuário da Amazon.

  9. Escolha Próximo.

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

  10. 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).

  11. 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.

  12. Escolha Próximo.

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

  14. 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 EC2 console da Amazon em https://console.aws.amazon.com/ec2/e escolha Auto Scaling Groups no painel de navegação.

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

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

  3. 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.

  4. 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).

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

  6. 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.

  7. 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.

  8. 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.

  9. 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-policycomando a seguir para criar uma política de escalabilidade de etapas chamadamy-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-alarmcomando 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