[Vidéo] EC2 Auto Scaling avec mise à l’échelle dynamique
Objectif
Déployer un Auto Scaling Group (ASG) avec une mise à l’échelle dynamique basée sur l’utilisation du CPU.
Présentation du Lab
Ce lab montre comment :
✅ Créer un Launch Template pour EC2.
✅ Créer un Auto Scaling Group avec une capacité minimale et maximale.
✅ Configurer une politique de mise à l’échelle dynamique basée sur l’utilisation CPU.
✅ Tester la scalabilité en générant une charge CPU.
Étapes du Lab
Créer un Launch Template pour EC2
Dans la console AWS, aller dans EC2 > Launch Templates > Create Launch Template et configurer :
- Nom : EC2-AutoScaling-Template
- Description : Template Lab EC2-AutoScaling
- Instructions relatives à Auto Scaling : Cocher la case
- AMI : AMI Amazon Linux 2023
- Type d’instance : t2.micro (éligible au Free Tier)
- Key Pair : Ne pas inclure dans le modèle de lancement
- Créer un groupe de sécurité :
- Nom : LabASG-SG
- Description : Autorise SSH et HTTP
- VPC : VPC par défaut
- Autoriser le trafic HTTP (port 80) pour toutes les IP
- Autoriser le SSH (port 22) pour toutes les IP
- Détails avancés > User Data (ajouter ce script pour installer un serveur web) :
#!/bin/bash
yum update -y
yum install httpd -y
systemctl start httpd
systemctl enable httpd
echo "Instance $(hostname) is running!" > /var/www/html/index.html
Valider et créer le template
Créer un Auto Scaling Group (ASG)
Aller dans EC2 > Groupes Auto Scaling > Créer un groupe Auto Scaling
- Choisir un modèle de lancement
- Nom : EC2-AutoScaling-ASG
- Modèle de lancement : EC2-AutoScaling-Template
- Cliquez sur Suivant
- Choisir les options de lancement
- VPC : Choisir le VPC par défaut
- Zone de disponibilité et sous-réseaux : Sélectionner tous les subnets dans différentes AZ
- Choisir un modèle de lancement
- Cliquez sur Suivant
- Intégration avec d’autres services
- Répartition de charge : Aucun équilibreur de charge
- Cliquez sur Suivant
- Configurer la taille et la Mise à l’échelle du groupe
- Taille du groupe
- Capacité souhaitée : 1
- Mise à l’échelle
- Capacité Minimale Souhaitée : 1
- Capacité Maximale Souhaitée : 2
- Mise à l’échelle automatique
- Cocher l’option : Politique de suivi des objectifs et d’échelonnement
- Nom de politique de mise à l’échelle : Target Tracking Policy
- Type de métrique : Utilisation moyenne du processeur
- Valeur cible : 50
- Préparation de l’instance : 300
- Cliquez sur Suivant
- Taille du groupe
- Ajouter des notifications
- Cliquer sur Suivant
- Ajouter des identifications – facultatif
- Cliquer sur Suivant
Cliquez sur Créer un groupe Auto Scaling.
Obtenir l’AMI utilisée pour lancer l’instance
Tester la mise à l’échelle dynamique
Se connecter à une instance via SSH et générer une charge CPU :
sudo yum install -y stress
stress --cpu 2 --timeout 300
Cela augmentera l’utilisation CPU au-dessus de 50 %, déclenchant ainsi l’ajout d’instances dans l’ASG.
Vérifier et nettoyer les ressources
- Vérifier que de nouvelles instances sont ajoutées dans EC2 > Instances.
- Attendre que l’ASG supprime des instances une fois la charge CPU stabilisée.
- Supprimer l’Auto Scaling Group après le test pour éviter des frais inutiles.
- Supprimer le Launch Template