Modèles de lancement et configuration ASG
Créez un modèle de lancement avec l’AMI, le type d’instance et les données utilisateur appropriés, puis associez-le à un groupe Auto Scaling avec des capacités minimale, maximale et souhaitée.
Modèles de lancement et configuration ASG est une leçon Cloud & IT Cert Prep gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Cloud & IT Cert Prep, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Cloud & IT Cert Prep comprend 4 leçons au total.
Qu’est-ce qu’un modèle de lancement ?
Un modèle de lancement est un plan versionné qui indique aux groupes Auto Scaling (et directement à EC2) comment lancer des instances. Il regroupe dans un seul document réutilisable l’ID AMI, le type d’instance, la paire de clés, les groupes de sécurité et les données utilisateur facultatives. Contrairement à l’ancienne configuration de lancement, un modèle de lancement prend en charge plusieurs versions et peut être mis à jour sans remplacer l’ASG.
Créer un modèle de lancement via CLI
Vous pouvez créer un modèle de lancement avec AWS CLI à l’aide de create-launch-template. Le paramètre --launch-template-data accepte un objet JSON qui définit tous les paramètres de l’instance. La gestion des versions vous permet de faire évoluer le modèle sans affecter les instances en cours d’exécution, jusqu’à ce que vous soyez prêt à le déployer.
aws ec2 create-launch-template \
--launch-template-name 'MyAppTemplate' \
--version-description 'v1 initial' \
--launch-template-data '{
"ImageId": "ami-0abcdef1234567890",
"InstanceType": "t3.medium",
"KeyName": "my-key-pair",
"SecurityGroupIds": ["sg-0123456789abcdef0"],
"UserData": "IyEvYmluL2Jhc2gKZWNobyAnSGVsbG8n"
}'Versions et versions par défaut des modèles de lancement
Chaque modèle de lancement commence à la version 1. Lorsque vous créez une nouvelle version, vous pouvez remplacer uniquement les champs qui ont changé : tous les autres paramètres sont hérités de la version source. L’ASG peut être configuré pour utiliser une version $Latest (toujours la plus récente) ou une version $Default (désignée explicitement). L’utilisation de $Default permet de contrôler les déploiements, tandis que $Latest est pratique dans les environnements de développement.
# Create a new version based on version 1, changing only instance type
aws ec2 create-launch-template-version \
--launch-template-name 'MyAppTemplate' \
--source-version 1 \
--launch-template-data '{"InstanceType": "t3.large"}'Concepts fondamentaux des groupes Auto Scaling
Un Auto Scaling Group (ASG) gère un parc d’instances EC2 dans des limites définies : minimum (plancher), maximum (plafond) et capacité souhaitée (nombre cible à tout moment). Lorsque des instances échouent aux vérifications d’état ou que la stratégie de mise à l’échelle se déclenche, ASG lance ou termine automatiquement des instances afin de maintenir le nombre souhaité entre le minimum et le maximum.
Créer un ASG associé à un modèle de lancement
Lorsque vous créez un ASG, vous référencez un modèle de lancement (et non une AMI spécifique directement). Vous indiquez également les sous-réseaux du VPC dans lesquels les instances seront lancées. La répartition sur plusieurs sous-réseaux (un par AZ) vous offre une redondance multi-AZ intégrée : si une AZ tombe en panne, ASG lance automatiquement des instances de remplacement dans les AZ restantes.
aws autoscaling create-auto-scaling-group \
--auto-scaling-group-name 'MyAppASG' \
--launch-template 'LaunchTemplateName=MyAppTemplate,Version=$Default' \
--min-size 2 \
--max-size 10 \
--desired-capacity 4 \
--vpc-zone-identifier 'subnet-aaa111,subnet-bbb222,subnet-ccc333'Vérifications d’état ASG : EC2 ou ELB
Par défaut, un ASG utilise les vérifications d’état EC2, qui ne signalent une instance comme défaillante que si elle est arrêtée, terminée ou si l’hyperviseur indique qu’elle a échoué. Lorsque vous associez un répartiteur de charge, vous devez utiliser les vérifications d’état ELB afin que l’ASG remplace les instances qui sont en fonctionnement mais renvoient des erreurs HTTP 5xx. Il s’agit d’une question fréquente aux examens : choisissez toujours les vérifications d’état ELB lorsqu’un répartiteur de charge est présent dans l’architecture.
# Enable ELB health checks on an existing ASG
aws autoscaling update-auto-scaling-group \
--auto-scaling-group-name 'MyAppASG' \
--health-check-type ELB \
--health-check-grace-period 300Paramètres de capacité : minimum, maximum, souhaitée
Il est essentiel de définir correctement les limites de capacité. Le minimum garantit que votre application peut toujours traiter le trafic (elle ne descend jamais en dessous de cette valeur). Le maximum empêche une mise à l’échelle incontrôlée qui pourrait épuiser les limites de service ou le budget. La capacité souhaitée est la cible initiale ; les stratégies de mise à l’échelle l’ajustent dynamiquement. Si vous définissez min=max=desired, l’ASG fonctionne comme un groupe de taille fixe, ce qui est utile pour les déploiements de modèles de lancement ou pour une capacité fixe.
Associer un groupe cible ALB à un ASG
Pour les applications de niveau Web, associez l’ASG à un groupe cible d’Application Load Balancer. Chaque nouvelle instance lancée par l’ASG est automatiquement enregistrée dans le groupe cible, et les instances terminées en sont automatiquement désenregistrées. Ainsi, le trafic est uniquement dirigé vers des instances saines et en fonctionnement. Vous devez également définir le type de vérification d’état sur ELB afin que l’ASG puisse détecter les défaillances au niveau du répartiteur de charge.
aws autoscaling attach-load-balancer-target-groups \
--auto-scaling-group-name 'MyAppASG' \
--target-group-arns 'arn:aws:elasticloadbalancing:us-east-1:123456789012:targetgroup/MyTG/abc123'Données utilisateur dans les modèles de lancement
Les données utilisateur sont un script shell (encodé en Base64) qui s’exécute une fois, lors du premier démarrage d’une instance. Dans un modèle de lancement, c’est l’emplacement approprié pour installer des paquets, configurer des agents (CloudWatch, SSM) et récupérer le code de l’application. Veillez à rendre les données utilisateur idempotentes : les scripts pouvant être exécutés plusieurs fois sans danger évitent les problèmes lors de l’actualisation des instances. Pour les configurations complexes, faites appel à AWS Systems Manager ou à un outil de gestion de configuration plutôt que d’intégrer de longs scripts.
#!/bin/bash
yum update -y
yum install -y amazon-cloudwatch-agent
/opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl \
-a fetch-config -m ec2 -c ssm:/MyApp/CWConfig -s
# Start application
cd /opt/myapp && ./start.shPools préchauffés pour accélérer la mise à l’échelle horizontale
Un Warm Pool préinitialise un ensemble d’instances EC2 arrêtées (ou en fonctionnement) dans un état prêt, en dehors de l’ASG. Lorsque l’ASG doit effectuer une mise à l’échelle horizontale, il utilise les instances du pool préchauffé au lieu de lancer des instances à froid, ce qui réduit considérablement le temps nécessaire pour ajouter de la capacité. Les instances du pool préchauffé entraînent des coûts liés à l’état arrêté (EBS uniquement, sans frais de CPU), ce qui revient bien moins cher que de conserver des instances de secours entièrement en fonctionnement.
Stratégies de terminaison et équilibrage entre AZ
Lorsque l’ASG réduit sa capacité, il doit décider quelles instances terminer. La stratégie de terminaison par défaut sélectionne d’abord l’AZ qui compte le plus d’instances (pour rééquilibrer), puis le modèle de lancement le plus ancien, puis l’instance la plus proche du début de son heure de facturation. Vous pouvez personnaliser cet ordre ; par exemple, choisissez OldestLaunchTemplate pour supprimer en premier les instances exécutant des configurations obsolètes. ASG effectue également automatiquement un rééquilibrage entre AZ après qu’un sous-réseau est devenu disponible ou après des modifications manuelles.
Vérification rapide
Évaluez votre compréhension des concepts AWS Solutions Architect (SAA-C03) abordés dans cette leçon.
Récapitulatif de la leçon
Dans cette leçon, vous avez appris que les modèles de lancement fournissent un modèle d’instance versionné et réutilisable prenant en charge plusieurs versions ainsi que les pointeurs de version $Latest/$Default ; que les limites de capacité ASG (min/max/desired) contrôlent la taille du parc avec une répartition multi-AZ automatique entre les sous-réseaux ; et que les vérifications d’état ELB doivent être activées lorsqu’un ASG se trouve derrière un répartiteur de charge, afin que les défaillances au niveau de l’application déclenchent un remplacement. Nous allons maintenant étudier les stratégies de mise à l’échelle, notamment le suivi de cible et la mise à l’échelle par paliers.
Apprends Cloud & IT Cert Prep avec un tuteur IA — gratuit
Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.
- Cours
- 150
- Leçons
- 600
Questions Fréquemment Posées
La leçon « Modèles de lancement et configuration ASG » est-elle gratuite ?
Oui — le texte complet de « Modèles de lancement et configuration ASG » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Cloud & IT Cert Prep, passe à CoddyKit PRO. Le cours Cloud & IT Cert Prep comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Modèles de lancement et configuration ASG » ?
Créez un modèle de lancement avec l’AMI, le type d’instance et les données utilisateur appropriés, puis associez-le à un groupe Auto Scaling avec des capacités minimale, maximale et souhaitée. Tu pratiques Cloud & IT Cert Prep avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Cloud & IT Cert Prep ?
Aucune expérience préalable n'est requise. Cloud & IT Cert Prep sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.
Combien de temps prend la leçon « Modèles de lancement et configuration ASG » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Cloud & IT Cert Prep ?
Oui. Chaque leçon Cloud & IT Cert Prep inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Modèles de lancement et configuration ASG
- Stratégies de mise à l’échelle : suivi de cible et mise à l’échelle par étapes
- Mise à l’échelle planifiée et prédictive
- Actualisation des instances et points d’ancrage du cycle de vie