Pular para o conteúdo principal

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​

TipoUsoCamadaCaracterísticas
ALBHTTP/HTTPS7Roteamento avançado, WebSocket
NLBTCP/UDP4Ultra-performante, IP estático
CLBLegado4/7Antigo, evitar
GWLBAppliances3Firewalls, 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
  1. Conceitos de Alta Disponibilidade
  2. Load Balancers AWS
  3. Health Checks
  4. Quiz de Validação - 30 questões para validar seus conhecimentos
  5. Lab: Arquitetura HA

Próxima semana: MÓDULO 9 - Auto Scaling