Pular para o conteúdo principal

MÓDULO 13 - Observabilidade e Monitoramento

Visão Geral​

Este módulo cobre a observabilidade com o Amazon CloudWatch. Você aprenderá a monitorar suas infraestruturas, criar alarmes e desenvolver runbooks de resposta a incidentes.

Objetivos de Aprendizagem​

  • Compreender as métricas do CloudWatch
  • Configurar alarmes e notificações
  • Analisar logs centralizados
  • Criar dashboards de monitoramento
  • Desenvolver um runbook de incidente mínimo

Conteúdo da Semana​

1. Amazon CloudWatch - Visão Geral​

┌─────────────────────────────────────────────────────────────┐
│ AMAZON CLOUDWATCH │
├─────────────────────────────────────────────────────────────┤
│ │
│ "O sistema nervoso da sua infraestrutura AWS" │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ │ │
│ │ MÉTRICAS LOGS ALARMES │ │
│ │ ┌────────┐ ┌────────┐ ┌────────┐ │ │
│ │ │ CPU % │ │ App │ │ Alert │ │ │
│ │ │ Mem % │ │ System │ │ if >80%│ │ │
│ │ │ Network│ │ Lambda │ │ │ │ │
│ │ └────────┘ └────────┘ └────────┘ │ │
│ │ │ │ │ │ │
│ │ └──────────────┴──────────────┘ │ │
│ │ │ │ │
│ │ ┌──────┴──────┐ │ │
│ │ │ DASHBOARD │ │ │
│ │ │ Gráficos │ │ │
│ │ │ em tempo │ │ │
│ │ │ real │ │ │
│ │ └─────────────┘ │ │
│ │ │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘

2. Métricas EC2 Importantes​

MétricaDescriçãoLimite Típico
CPUUtilizationUtilização de CPUAlarme > 80%
StatusCheckFailedSaúde da instânciaAlarme = 1
NetworkIn/OutTráfego de redeConforme baseline
DiskReadOpsOperações de discoConforme baseline
CPUCreditBalanceCréditos T3Alarme < 20

3. Configuração de Alarmes​

┌─────────────────────────────────────────────────────────────┐
│ ANATOMIA DE UM ALARME │
├─────────────────────────────────────────────────────────────┤
│ │
│ Alarme : "High-CPU-Alert" │
│ │
│ Métrica : EC2 CPUUtilization │
│ Estatística : Average │
│ Período : 5 minutos │
│ Limite : > 80% │
│ Avaliação : 3 de 5 períodos │
│ │
│ Ações : │
│ • ALARM → SNS Topic → Email/SMS │
│ • OK → SNS Topic → Notificação de resolução │
│ │
│ Estados : │
│ ┌────────────────────────────────────────────┐ │
│ │ OK │◄─────────────►│ ALARM │ │ │
│ │ │ │ │ │ │
│ │ │ │ │ │ │
│ │ └───────────────┴───────┘ │ │
│ │ ▲ │ │
│ │ │ │ │
│ │ INSUFFICIENT_DATA │ │
│ │ (dados insuficientes) │ │
│ └────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘

4. Estrutura de um Runbook​

# RUNBOOK : CPU Alta em Instância EC2

## Sintoma
Alarme "High-CPU-Alert" disparado

## Impacto
- Performance degradada
- Possível timeout para usuários

## Diagnóstico
1. Verificar o alarme no CloudWatch
2. Identificar a instância afetada
3. SSH na instância: `top` ou `htop`
4. Identificar o processo consumidor

## Ações
### Se processo aplicativo legítimo
- [ ] Verificar se pico de tráfego é normal
- [ ] Considerar scale-out se ASG
- [ ] Aumentar o tamanho da instância se necessário

### Se processo suspeito
- [ ] Identificar o processo (`ps aux`)
- [ ] Verificar os logs do aplicativo
- [ ] Finalizar se não for crítico
- [ ] Escalar se suspeitar de atividade maliciosa

## Resolução
- [ ] Confirmar que o CPU voltou ao normal
- [ ] Documentar a causa
- [ ] Atualizar o runbook se necessário

## Escalonamento
Se não resolvido em 30 minutos → Equipe de Infra

5. Dashboard Recomendado​

┌─────────────────────────────────────────────────────────────┐
│ DASHBOARD DE PRODUÇÃO │
├─────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────┐ ┌─────────────────────┐ │
│ │ CPU Utilization │ │ Memory Usage │ │
│ │ ▃▅▆▇█▇▅▃▂ │ │ ▂▃▄▅▆▇▇▆▅ │ │
│ │ Instância 1, 2, 3 │ │ Instância 1, 2, 3 │ │
│ └─────────────────────┘ └─────────────────────┘ │
│ │
│ ┌─────────────────────┐ ┌─────────────────────┐ │
│ │ Request Count │ │ Error Rate │ │
│ │ ▁▂▃▄▅▆▇███▇▅ │ │ ▁▁▁▁▁▂▁▁▁▁▁ │ │
│ │ ALB Requests/min │ │ 5xx Errors % │ │
│ └─────────────────────┘ └─────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────┐ │
│ │ Alarmes Ativos │ │
│ │ 🟢 CPU OK 🟢 Disk OK 🔴 ErrorRate HIGH │ │
│ └─────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘

Exercício: Criação de Runbook​

Cenário​

Crie um runbook para o seguinte cenário:

  • Alarme: Instância EC2 StatusCheckFailed
  • Impacto: Site fora do ar
  • Ações possíveis: Reiniciar, substituir, escalar

Template para Preencher​

  1. Sintoma e impacto
  2. Etapas de diagnóstico
  3. Ações corretivas (com decisões)
  4. Critérios de resolução
  5. Processo de escalonamento

Entregável​

Runbook 1 página + Configuração de alertas:

  • Runbook estruturado para um incidente tipo
  • Lista de alarmes recomendados
  • Limites e justificativas
  1. Conceitos de Observabilidade
  2. Quiz de Validação - 30 questões para validar seu conhecimento
  3. Lab: Monitoramento

Próxima semana: MÓDULO 14 - Governança FinOps