Políticas de escalabilidade: acompanhamento de destino e escalabilidade por etapas
Configure o acompanhamento de destino para manter uma meta de utilização de CPU e a escalabilidade por etapas para reagir aos limites de alarmes do CloudWatch.
Políticas de escalabilidade: acompanhamento de destino e escalabilidade por etapas é uma aula grátis de Cloud & IT Cert Prep no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Cloud & IT Cert Prep, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Cloud & IT Cert Prep inclui 4 aulas no total.
Por que existem políticas de escalabilidade
Uma capacidade desejada estática funciona quando a carga é constante, mas o tráfego do mundo real varia. As políticas de escalabilidade permitem que um grupo do Auto Scaling ajuste automaticamente a capacidade desejada em resposta a métricas. A AWS oferece três tipos principais de políticas dinâmicas: acompanhamento de destino, escalabilidade por etapas e escalabilidade simples. Para o exame SAA-C03, é mais importante entender o acompanhamento de destino e a escalabilidade por etapas.
Explicação da escalabilidade com acompanhamento de destino
A escalabilidade com acompanhamento de destino funciona como um termostato: você especifica uma métrica e um valor-alvo, e a AWS calcula automaticamente quantas instâncias adicionar ou remover para manter a métrica nesse alvo. Por exemplo, se você definir como alvo uma utilização média de CPU de 50% e a utilização subir para 80%, o ASG adicionará instâncias suficientes para que a CPU volte a 50%. A AWS gerencia as ações de aumento e redução de capacidade para você.
aws autoscaling put-scaling-policy \
--auto-scaling-group-name 'MyAppASG' \
--policy-name 'TargetTrackingCPU50' \
--policy-type TargetTrackingScaling \
--target-tracking-configuration '{
"PredefinedMetricSpecification": {
"PredefinedMetricType": "ASGAverageCPUUtilization"
},
"TargetValue": 50.0
}'Métricas predefinidas versus personalizadas no acompanhamento de destino
O acompanhamento de destino oferece várias métricas predefinidas prontas para uso: ASGAverageCPUUtilization, ASGAverageNetworkIn, ASGAverageNetworkOut e a métrica específica de ALB ALBRequestCountPerTarget. Para indicadores-chave de desempenho específicos da aplicação (profundidade da fila, conexões ativas e métricas de negócio personalizadas), você pode fornecer uma métrica personalizada do CloudWatch. As métricas personalizadas oferecem um controle muito mais preciso sobre o que orienta suas decisões de escalabilidade.
Período de espera no acompanhamento de destino
Após um evento de aumento de capacidade, o ASG aguarda um período de espera (300 segundos por padrão) antes de avaliar outro aumento. Isso dá às instâncias recém-iniciadas tempo para começar a atender ao tráfego, permitindo que a métrica se estabilize. Da mesma forma, um período de espera para redução de capacidade evita encerramentos prematuros logo após a adição de capacidade. Para o acompanhamento de destino, a AWS também recomenda usar um período de aquecimento para que as novas instâncias não distorçam a métrica antes de serem totalmente inicializadas.
Explicação da escalabilidade por etapas
A escalabilidade por etapas responde aos alarmes do CloudWatch adicionando ou removendo uma quantidade específica de instâncias, com base no quanto a métrica excede um limite. Você define vários ajustes por etapa; cada etapa abrange um intervalo de métricas e especifica uma alteração de capacidade. Por exemplo: se a CPU estiver entre 60% e 70%, adicione 1 instância; se estiver entre 70% e 90%, adicione 3 instâncias; se exceder 90%, adicione 5 instâncias. Isso oferece respostas graduais e proporcionais aos diferentes níveis de carga.
Criar uma política de escalabilidade por etapas
A escalabilidade por etapas exige um alarme do CloudWatch preexistente. O alarme monitora uma métrica e muda para o estado ALARM quando um limite é ultrapassado. Em seguida, a política de escalabilidade usa ajustes por etapa referenciados pelo valor da métrica em relação ao limite do alarme. Você pode configurar se o tipo de ajuste será ChangeInCapacity (adicionar N), ExactCapacity (definir como N) ou PercentChangeInCapacity (escalar em N%).
# First create a CloudWatch alarm
aws cloudwatch put-metric-alarm \
--alarm-name 'HighCPU' \
--metric-name CPUUtilization \
--namespace AWS/EC2 \
--statistic Average \
--period 60 \
--threshold 60 \
--comparison-operator GreaterThanOrEqualToThreshold \
--dimensions Name=AutoScalingGroupName,Value=MyAppASG \
--evaluation-periods 2 \
--alarm-actions 'arn:aws:autoscaling:us-east-1:123456789:scalingPolicy:...'Configuração de ajustes por etapa
Cada ajuste por etapa tem um MetricIntervalLowerBound e, opcionalmente, um MetricIntervalUpperBound. Os limites são relativos ao limite do alarme. Se o limite do alarme for 60% de CPU: LowerBound=0, UpperBound=10 será acionado quando a CPU estiver entre 60% e 70%; LowerBound=10, UpperBound=null será acionado quando a CPU exceder 70%. Essa abordagem em camadas garante que grandes picos de tráfego recebam imediatamente uma grande adição de capacidade, em vez de aguardarem vários ciclos de alarme.
# Step scaling policy with two steps
{
'StepAdjustments': [
{
'MetricIntervalLowerBound': 0,
'MetricIntervalUpperBound': 10,
'ScalingAdjustment': 2
},
{
'MetricIntervalLowerBound': 10,
'ScalingAdjustment': 5
}
],
'AdjustmentType': 'ChangeInCapacity'
}Escalabilidade simples: a alternativa mais antiga
A escalabilidade simples é a antecessora da escalabilidade por etapas. Assim como a escalabilidade por etapas, ela exige um alarme do CloudWatch, mas, quando acionada, adiciona ou remove uma quantidade fixa de instâncias e depois aguarda o término de todo o período de espera antes de avaliar novamente. Isso a torna lenta sob uma carga que muda rapidamente. A escalabilidade por etapas é preferível porque pode continuar sendo acionada à medida que as condições pioram, sem aguardar o período de espera completo, além de responder proporcionalmente.
Proteção contra redução de capacidade e proteção de instâncias
Às vezes, você quer impedir que instâncias específicas sejam encerradas durante uma redução de capacidade, por exemplo, uma instância que executa um trabalho em lote de longa duração. Você pode habilitar a proteção de instância contra redução de capacidade em instâncias individuais pelo console ou pela CLI. Quando o ASG seleciona candidatas para encerramento, ele ignora as instâncias protegidas. Lembre-se de remover a proteção depois que o trabalho for concluído; caso contrário, o ASG poderá não conseguir reduzir a capacidade se todas as instâncias estiverem protegidas.
aws autoscaling set-instance-protection \
--auto-scaling-group-name 'MyAppASG' \
--instance-ids 'i-0abc123def456' \
--protected-from-scale-inCombinar o acompanhamento de destino com a escalabilidade por etapas
Você pode associar várias políticas de escalabilidade a um único ASG. Quando existem uma política de acompanhamento de destino e uma política de escalabilidade por etapas, o ASG usa a política que recomenda a ação de aumento de capacidade maior (a mais conservadora). Para a redução de capacidade, vence a política que recomenda remover o menor número de instâncias. Isso impede que o sistema oscile entre estados de provisionamento excessivo e insuficiente. Um padrão comum é usar uma política de acompanhamento de destino para a operação estável e uma política de escalabilidade por etapas para proteção contra picos emergenciais.
Práticas recomendadas para políticas de escalabilidade
Para a maioria das aplicações web, comece com o acompanhamento de destino baseado na CPU ou na quantidade de solicitações por destino; ele exige pouca configuração e a AWS gerencia os cálculos. Use a escalabilidade por etapas quando precisar de respostas graduais e proporcionais a diferentes intensidades de carga. Sempre defina uma capacidade mínima alta o suficiente para lidar com o tráfego de base sem depender do aumento de capacidade, pois a escalabilidade leva tempo. Monitore as métricas do CloudWatch GroupDesiredCapacity e GroupInServiceInstances para verificar se suas políticas estão funcionando conforme o esperado.
Verificação rápida
Teste sua compreensão dos conceitos de AWS Solutions Architect (SAA-C03) desta lição.
Recapitulação da lição
Nesta lição, você aprendeu que: a escalabilidade com acompanhamento de destino calcula e aplica automaticamente ações de aumento e redução de capacidade para manter uma métrica em um valor desejado (como 50% de CPU); a escalabilidade por etapas aciona respostas proporcionalmente maiores à medida que uma métrica ultrapassa limites mais altos, usando ajustes por etapa baseados em alarmes do CloudWatch; e combinar políticas em um único ASG é seguro: o ASG usa a recomendação mais conservadora para aumentar a capacidade e a menos agressiva para reduzi-la. A seguir, exploraremos a escalabilidade programada e preditiva para padrões de tráfego conhecidos.
Perguntas Frequentes
A aula “Políticas de escalabilidade: acompanhamento de destino e escalabilidade por etapas” é grátis?
Sim — o texto completo de “Políticas de escalabilidade: acompanhamento de destino e escalabilidade por etapas” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Cloud & IT Cert Prep, atualize para CoddyKit PRO. O curso de Cloud & IT Cert Prep inclui 4 aulas no total.
O que vou aprender em “Políticas de escalabilidade: acompanhamento de destino e escalabilidade por etapas”?
Configure o acompanhamento de destino para manter uma meta de utilização de CPU e a escalabilidade por etapas para reagir aos limites de alarmes do CloudWatch. Você pratica Cloud & IT Cert Prep com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Cloud & IT Cert Prep?
Nenhuma experiência prévia é necessária. Cloud & IT Cert Prep no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.
Quanto tempo leva a aula “Políticas de escalabilidade: acompanhamento de destino e escalabilidade por etapas”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Cloud & IT Cert Prep?
Sim. Cada aula de Cloud & IT Cert Prep inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Modelos de inicialização e configuração de ASG
- Políticas de escalabilidade: acompanhamento de destino e escalabilidade por etapas
- Escalabilidade programada e preditiva
- Atualização de instâncias e ganchos de ciclo de vida