MODULE 13 - Observabilité et Monitoring
Vue d'Ensemble
ce module couvre l'observabilité avec Amazon CloudWatch. Vous apprendrez à surveiller vos infrastructures, créer des alarmes, et développer des runbooks de réponse aux incidents.
Objectifs d'Apprentissage
- Comprendre les métriques CloudWatch
- Configurer des alarmes et notifications
- Analyser les logs centralisés
- Créer des dashboards de surveillance
- Développer un runbook d'incident minimal
Contenu de la Semaine
1. Amazon CloudWatch - Vue d'Ensemble
┌─────────────────────────────────────────────────────────────┐
│ AMAZON CLOUDWATCH │
├─────────────────────────────────────────────────────────────┤
│ │
│ "Le système nerveux de votre infrastructure AWS" │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ │ │
│ │ MÉTRIQUES LOGS ALARMES │ │
│ │ ┌────────┐ ┌────────┐ ┌────────┐ │ │
│ │ │ CPU % │ │ App │ │ Alert │ │ │
│ │ │ Mem % │ │ System │ │ if >80%│ │ │
│ │ │ Network│ │ Lambda │ │ │ │ │
│ │ └────────┘ └────────┘ └────────┘ │ │
│ │ │ │ │ │ │
│ │ └──────────────┴──────────────┘ │ │
│ │ │ │ │
│ │ ┌──────┴──────┐ │ │
│ │ │ DASHBOARD │ │ │
│ │ │ Graphiques │ │ │
│ │ │ en temps │ │ │
│ │ │ réel │ │ │
│ │ └─────────────┘ │ │
│ │ │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
2. Métriques EC2 Importantes
| Métrique | Description | Seuil Typique |
|---|---|---|
| CPUUtilization | Utilisation CPU | Alarme > 80% |
| StatusCheckFailed | Santé instance | Alarme = 1 |
| NetworkIn/Out | Trafic réseau | Selon baseline |
| DiskReadOps | Opérations disque | Selon baseline |
| CPUCreditBalance | Crédits T3 | Alarme < 20 |
3. Configuration d'Alarmes
┌─────────────────────────────────────────────────────────────┐
│ ANATOMIE D'UNE ALARME │
├─────────────────────────────────────────────────────────────┤
│ │
│ Alarme : "High-CPU-Alert" │
│ │
│ Métrique : EC2 CPUUtilization │
│ Statistique : Average │
│ Période : 5 minutes │
│ Seuil : > 80% │
│ Évaluation : 3 sur 5 périodes │
│ │
│ Actions : │
│ • ALARM → SNS Topic → Email/SMS │
│ • OK → SNS Topic → Notification résolution │
│ │
│ États : │
│ ┌────────────────────────────────────────────┐ │
│ │ OK │◄─────────────►│ ALARM │ │ │
│ │ │ │ │ │ │
│ │ │ │ │ │ │
│ │ └───────────────┴───────┘ │ │
│ │ ▲ │ │
│ │ │ │ │
│ │ INSUFFICIENT_DATA │ │
│ │ (pas assez de points) │ │
│ └────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
4. Structure d'un Runbook
# RUNBOOK : CPU Élevé sur Instance EC2
## Symptôme
Alarme "High-CPU-Alert" déclenchée
## Impact
- Performance dégradée
- Possible timeout pour les utilisateurs
## Diagnostic
1. Vérifier l'alarme dans CloudWatch
2. Identifier l'instance concernée
3. SSH sur l'instance : `top` ou `htop`
4. Identifier le processus consommateur
## Actions
### Si processus applicatif légitime
- [ ] Vérifier si pic de trafic normal
- [ ] Considérer scale-out si ASG
- [ ] Augmenter taille instance si nécessaire
### Si processus suspect
- [ ] Identifier le processus (`ps aux`)
- [ ] Vérifier les logs applicatifs
- [ ] Killer si non critique
- [ ] Escalader si suspect malveillant
## Résolution
- [ ] Confirmer CPU revenu normal
- [ ] Documenter la cause
- [ ] Mettre à jour le runbook si nécessaire
## Escalade
Si non résolu en 30 minutes → Équipe Infra
5. Dashboard Recommandé
┌─────────────────────────────────────────────────────────────┐
│ DASHBOARD PRODUCTION │
├─────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────┐ ┌─────────────────────┐ │
│ │ CPU Utilization │ │ Memory Usage │ │
│ │ ▃▅▆▇█▇▅▃▂ │ │ ▂▃▄▅▆▇▇▆▅ │ │
│ │ Instance 1, 2, 3 │ │ Instance 1, 2, 3 │ │
│ └─────────────────────┘ └─────────────────────┘ │
│ │
│ ┌─────────────────────┐ ┌─────────────────────┐ │
│ │ Request Count │ │ Error Rate │ │
│ │ ▁▂▃▄▅▆▇███▇▅ │ │ ▁▁▁▁▁▂▁▁▁▁▁ │ │
│ │ ALB Requests/min │ │ 5xx Errors % │ │
│ └─────────────────────┘ └─────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────┐ │
│ │ Alarmes Actives │ │
│ │ 🟢 CPU OK 🟢 Disk OK 🔴 ErrorRate HIGH │ │
│ └─────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
Exercice : Création de Runbook
Scénario
Créez un runbook pour le scénario suivant :
- Alarme : Instance EC2 StatusCheckFailed
- Impact : Site web inaccessible
- Actions possibles : Redémarrer, remplacer, escalader
Template à Compléter
- Symptôme et impact
- Étapes de diagnostic
- Actions correctives (avec décisions)
- Critères de résolution
- Processus d'escalade
Livrable
Runbook 1 page + Configuration d'alertes :
- Runbook structuré pour un incident type
- Liste des alarmes recommandées
- Seuils et justifications
Navigation
- Concepts Observabilite
- Quiz de Validation - 30 questions pour valider vos connaissances
- Lab : Monitoring
Semaine suivante : MODULE 14 - Gouvernance FinOps