MODULE 8 - Scalabilité et Haute Disponibilité
Vue d'Ensemble
ce module couvre les concepts de haute disponibilité (HA) et de scalabilité avec AWS. Vous apprendrez à concevoir des architectures résilientes avec Load Balancing.
Évaluation Sommative
ce module inclut l'Évaluation 2 (25%) couvrant HA et Scaling.
Objectifs d'Apprentissage
- Comprendre les concepts de haute disponibilité
- Expliquer le fonctionnement des Load Balancers AWS
- Configurer des health checks
- Concevoir une architecture stateless
- Définir des critères de réussite HA
Contenu de la Semaine
1. Haute Disponibilité - Concepts
┌─────────────────────────────────────────────────────────────┐
│ HAUTE DISPONIBILITÉ │
├─────────────────────────────────────────────────────────────┤
│ │
│ Objectif : Service toujours accessible malgré les pannes │
│ │
│ SANS HA AVEC HA │
│ ─────── ─────── │
│ │
│ ┌─────────┐ ┌─────────┐ │
│ │ Instance│ ← SPOF │ ALB │ ← Distribution │
│ │ Unique │ └────┬────┘ │
│ └─────────┘ │ │
│ │ ┌────────┼────────┐ │
│ ▼ │ │ │ │
│ PANNE = DOWN ┌┴┐ ┌┴┐ ┌┴┐ │
│ │1│ │2│ │3│ │
│ └─┘ └─┘ └─┘ │
│ AZ-a AZ-b AZ-c │
│ │
│ PANNE d'une instance = SERVICE OK │
│ │
└─────────────────────────────────────────────────────────────┘
2. Types de Load Balancers AWS
| Type | Usage | Couche | Caractéristiques |
|---|---|---|---|
| ALB | HTTP/HTTPS | 7 | Routage avancé, WebSocket |
| NLB | TCP/UDP | 4 | Ultra-performant, IP statique |
| CLB | Legacy | 4/7 | Ancien, à éviter |
| GWLB | Appliances | 3 | Firewalls, IDS |
3. Health Checks
┌─────────────────────────────────────────────────────────────┐
│ HEALTH CHECKS │
├─────────────────────────────────────────────────────────────┤
│ │
│ Le Load Balancer vérifie régulièrement la santé │
│ des instances cibles. │
│ │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ ALB │──GET /──►│Instance │ │Instance │ │
│ │ │◄──200 OK─│ (OK) │ │ (KO) │ │
│ └─────────┘ └─────────┘ └─────────┘ │
│ │ ✓ ✗ │
│ │ │
│ └──────────► Trafic envoyé uniquement aux instances │
│ qui répondent correctement │
│ │
│ Paramètres : │
│ • Path : /health │
│ • Interval : 30 secondes │
│ • Healthy threshold : 3 succès consécutifs │
│ • Unhealthy threshold : 2 échecs consécutifs │
│ │
└─────────────────────────────────────────────────────────────┘
4. Architecture Stateless
STATELESS = L'application ne stocke pas d'état sur l'instance
✅ BON (Stateless) ❌ MAUVAIS (Stateful)
───────────────── ────────────────────
Sessions en Redis/DynamoDB Sessions sur disque local
Fichiers dans S3 Fichiers sur EBS
Config dans Parameter Store Config dans fichier local
Pourquoi Stateless ?
• N'importe quelle instance peut servir n'importe quelle requête
• Scaling horizontal facile
• Remplacement d'instance sans perte de données
Évaluation 2 (25%)
Format
- Conception d'architecture HA (60%)
- Questions théoriques (40%)
Contenu Couvert
- Load Balancing (ALB, NLB)
- Health Checks
- Architecture Multi-AZ
- Design stateless
- Critères de disponibilité
Livrable
Architecture HA documentée :
- Schéma avec LB et instances Multi-AZ
- Configuration des health checks
- Justification des choix
- Calcul de disponibilité théorique
Navigation
- Concepts de Haute Disponibilite
- Load Balancers AWS
- Health Checks
- Quiz de Validation - 30 questions pour valider vos connaissances
- Lab : Architecture HA
Semaine suivante : MODULE 9 - Auto Scaling