AWS ELB e ASG

Escalabilidade vertical vs horizontal, 3 tipos de ELB e estratégias de ASG — domine os conceitos de alta disponibilidade e elasticidade essenciais para o exame CLF-C02.

AWS ELB e ASG — Alta Disponibilidade e Escalabilidade

Um dos desafios mais comuns no design de infraestrutura em nuvem é lidar com flutuações de tráfego de forma confiável. A AWS aborda isso com o Elastic Load Balancer (ELB) e o Auto Scaling Group (ASG). Combinar esses dois serviços permite alcançar tanto alta disponibilidade quanto escalabilidade automática. O exame CLF-C02 frequentemente avalia o conhecimento de seus tipos e funcionamento.

---

Escalabilidade, Elasticidade e Alta Disponibilidade

Esses três termos estão intimamente relacionados, mas têm significados distintos. No exame, é necessário saber distinguir cada definição.

| Termo | Definição | Característica Principal | |-------|-----------|-------------------------| | Escalabilidade | Capacidade de aumentar ou diminuir a capacidade do sistema conforme a carga muda | Ajustar a capacidade quando necessário | | Elasticidade | Capacidade de ajustar automaticamente os recursos com base na carga em tempo real | Escalabilidade automatizada | | Agilidade | Capacidade de implantar e gerenciar recursos rapidamente quando as demandas mudam | Provisionamento rápido de recursos |

A elasticidade é a forma automatizada da escalabilidade. O ASG é o principal exemplo de elasticidade na AWS — ele ajusta automaticamente o número de instâncias em resposta às mudanças de tráfego.

---

Escalabilidade Vertical vs Horizontal

Existem duas abordagens principais para escalar. Entender qual abordagem se adequa a cada situação é essencial.

Escalabilidade Vertical — Aumentar/Diminuir Tamanho

Essa abordagem aumenta o tamanho de uma única instância. Por exemplo, atualizar de para . É comumente usada para serviços difíceis de distribuir, como bancos de dados, mas os limites do hardware impedem uma escala infinita.

Escalabilidade Horizontal — Expandir/Reduzir

Essa abordagem aumenta o número de instâncias — por exemplo, passar de 1 servidor para 10. É implementada usando Auto Scaling Group (ASG) combinado com Elastic Load Balancer (ELB). Essa abordagem é adequada para sistemas distribuídos e é teoricamente ilimitada em escala.

Alta Disponibilidade

Alta disponibilidade é um princípio arquitetônico que implanta instâncias em múltiplas Zonas de Disponibilidade (Multi-AZ) para que uma falha em uma zona não interrompa o serviço. Normalmente é aplicada em conjunto com a escalabilidade horizontal.

Distinções-chave a lembrar para o exame:

Escalabilidade vertical = Aumentar/Diminuir tamanho (alterar o tamanho da instância) Escalabilidade horizontal = Expandir/Reduzir (alterar o número de instâncias) Alta disponibilidade = Implantação Multi-AZ

---

O que é um Balanceador de Carga?

Um balanceador de carga distribui o tráfego de entrada entre múltiplas instâncias EC2 para evitar que um único servidor fique sobrecarregado.

Os principais benefícios de usar um balanceador de carga incluem:

Previne a sobrecarga de um único servidor Redireciona automaticamente o tráfego de instâncias com falha Realiza verificações de integridade automáticas nas instâncias Trata a terminação SSL (HTTPS)

O AWS Elastic Load Balancer (ELB) é um serviço de balanceamento de carga totalmente gerenciado. A AWS cuida de atualizações, manutenção e disponibilidade em seu nome, então você não precisa operar um servidor de balanceamento de carga dedicado.

---

Três Tipos de ELB

O ELB está disponível em três tipos. É importante distinguir cada tipo pela sua camada OSI, protocolo e caso de uso apropriado.

| Tipo | Camada | Protocolo | Características Principais | |------|--------|-----------|---------------------------| | ALB (Application Load Balancer) | Camada 7 (Aplicação) | HTTP, HTTPS | Roteamento baseado em caminho URL/host, adequado para microsserviços | | NLB (Network Load Balancer) | Camada 4 (Transporte) | TCP, UDP | Ultra alto desempenho, baixa latência, milhões de requisições por segundo | | CLB (Classic Load Balancer) | Camada 4/7 | HTTP, HTTPS, TCP | Legado — não recomendado para novas cargas de trabalho |

Diretrizes de seleção:

Use ALB (Camada 7) para tráfego HTTP/HTTPS. Use NLB (Camada 4) para tráfego TCP/UDP de alto desempenho. CLB está sendo descontinuado e não é recomendado para novas cargas de trabalho.

---

O que é um Auto Scaling Group (ASG)?

Um ASG ajusta automaticamente o número de instâncias EC2 com base na carga. Ele se integra com o ELB para registrar automaticamente novas instâncias no balanceador de carga, e substitui automaticamente instâncias não íntegras quando as verificações de integridade falham.

Capacidades principais do ASG:

| Recurso | Descrição | |---------|----------| | Expandir | Adicionar instâncias quando a carga aumenta | | Reduzir | Remover instâncias quando a carga diminui | | Limites Mín/Máx | Sempre manter um intervalo definido de número de instâncias | | Auto-registro com ELB | Novas instâncias ingressam automaticamente no balanceador de carga | | Substituir instâncias não íntegras | Encerra e substitui automaticamente instâncias com falha | | Otimização de custos | Executar apenas o necessário — evitar o excesso de provisionamento |

Quatro Estratégias de Escalabilidade do ASG

Escalabilidade Manual

O administrador define manualmente o número desejado de instâncias. Usada quando os padrões de tráfego não são claramente previsíveis ou quando um ajuste temporário é necessário.

Escalabilidade Dinâmica

Responde automaticamente a alarmes do CloudWatch. A Escalabilidade Simples/Por Etapas adiciona 2 instâncias quando a CPU excede 70% e remove 1 quando cai abaixo de 30%. A Escalabilidade de Rastreamento de Alvo ajusta automaticamente o número de instâncias para manter uma CPU média de aproximadamente 40%.

Escalabilidade Programada

Pré-agenda ações de escalabilidade com base em padrões de tráfego previsíveis. Por exemplo, é possível configurar o número mínimo de instâncias para aumentar para 10 toda sexta-feira às 17h.

Escalabilidade Preditiva

Usa aprendizado de máquina (ML) para analisar padrões de tráfego históricos e prever a demanda futura, escalando proativamente antes que a demanda chegue. Quando o exame descreve "escalabilidade proativa baseada em ML", está se referindo à Escalabilidade Preditiva.

---

Usando ELB e ASG Juntos

Combinar ELB e ASG cria uma arquitetura totalmente automatizada e altamente disponível. Quando o tráfego aumenta, o ASG adiciona instâncias e o ELB as registra automaticamente para distribuir a carga. Quando uma instância falha, o ELB redireciona o tráfego para instâncias íntegras enquanto o ASG substitui a instância com falha por uma nova.

Essa combinação é um padrão fundamental na arquitetura de nuvem da AWS e representa o design padrão para alcançar tanto eficiência de custos quanto confiabilidade.

Voltar à lista do blog