MÓDULO 8 - Escalabilidade e Alta Disponibilidade
Visão Geral
Este módulo aborda os conceitos de alta disponibilidade (HA) e escalabilidade com AWS. Você aprenderá a projetar arquiteturas resilientes com Load Balancing.
Avaliação Somativa
Este módulo inclui a Avaliação 2 (25%) cobrindo HA e Scaling.
Objetivos de Aprendizagem
- Compreender os conceitos de alta disponibilidade
- Explicar o funcionamento dos Load Balancers da AWS
- Configurar health checks
- Projetar uma arquitetura stateless
- Definir critérios de sucesso para HA
Conteúdo da Semana
1. Alta Disponibilidade - Conceitos
┌─────────────────────────────────────────────────────────────┐
│ ALTA DISPONIBILIDADE │
├─────────────────────────────────────────────────────────────┤
│ │
│ Objetivo: Serviço sempre acessível mesmo em caso de falhas│
│ │
│ SEM HA COM HA │
│ ─────── ─────── │
│ │
│ ┌─────────┐ ┌─────────┐ │
│ │ Instância│ ← SPOF │ ALB │ ← Distribuição │
│ │ Única │ └────┬────┘ │
│ └─────────┘ │ │
│ │ ┌────────┼────────┐ │
│ ▼ │ │ │ │
│ FALHA = DOWN ┌┴┐ ┌┴┐ ┌┴┐ │
│ │1│ │2│ │3│ │
│ └─┘ └─┘ └─┘ │
│ AZ-a AZ-b AZ-c │
│ │
│ FALHA de uma instância = SERVIÇO OK │
│ │
└─────────────────────────────────────────────────────────────┘
2. Tipos de Load Balancers AWS
| Tipo | Uso | Camada | Características |
|---|---|---|---|
| ALB | HTTP/HTTPS | 7 | Roteamento avançado, WebSocket |
| NLB | TCP/UDP | 4 | Ultra-performante, IP estático |
| CLB | Legado | 4/7 | Antigo, evitar |
| GWLB | Appliances | 3 | Firewalls, IDS |
3. Health Checks
┌─────────────────────────────────────────────────────────────┐
│ HEALTH CHECKS │
├─────────────────────────────────────────────────────────────┤
│ │
│ O Load Balancer verifica regularmente a saúde │
│ das instâncias alvo. │
│ │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ ALB │──GET /──►│Instância│ │Instância│ │
│ │ │◄──200 OK─│ (OK) │ │ (KO) │ │
│ └─────────┘ └─────────┘ └─────────┘ │
│ │ ✓ ✗ │
│ │ │
│ └──────────► Tráfego enviado apenas para instâncias │
│ que respondem corretamente │
│ │
│ Parâmetros: │
│ • Path: /health │
│ • Intervalo: 30 segundos │
│ • Healthy threshold: 3 sucessos consecutivos │
│ • Unhealthy threshold: 2 falhas consecutivas │
│ │
└─────────────────────────────────────────────────────────────┘
4. Arquitetura Stateless
STATELESS = O aplicativo não armazena estado na instância
✅ BOM (Stateless) ❌ RUIM (Stateful)
───────────────── ────────────────────
Sessões em Redis/DynamoDB Sessões em disco local
Arquivos no S3 Arquivos em EBS
Config no Parameter Store Config em arquivo local
Por que Stateless?
• Qualquer instância pode atender qualquer requisição
• Escalabilidade horizontal facilitada
• Substituição de instância sem perda de dados
Avaliação 2 (25%)
Formato
- Projeto de arquitetura HA (60%)
- Questões teóricas (40%)
Conteúdo Abrangido
- Load Balancing (ALB, NLB)
- Health Checks
- Arquitetura Multi-AZ
- Design stateless
- Critérios de disponibilidade
Entregável
Arquitetura HA documentada:
- Diagrama com LB e instâncias Multi-AZ
- Configuração dos health checks
- Justificativa das escolhas
- Cálculo de disponibilidade teórica
Navegação
- Conceitos de Alta Disponibilidade
- Load Balancers AWS
- Health Checks
- Quiz de Validação - 30 questões para validar seus conhecimentos
- Lab: Arquitetura HA
Próxima semana: MÓDULO 9 - Auto Scaling