Didacticiel : configurer une application redimensionnée et à charge équilibrée - Amazon EC2 Auto Scaling

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Didacticiel : configurer une application redimensionnée et à charge équilibrée

Important

Avant d'explorer ce didacticiel, nous vous recommandons de consulter d'abord le didacticiel d'introduction suivant : Créez votre premier groupe Auto Scaling.

L'enregistrement de votre groupe Auto Scaling avec un équilibreur de charge Elastic Load Balancing vous aide à configurer une application à charge équilibrée. Elastic Load Balancing fonctionne avec Amazon EC2 Auto Scaling pour répartir le trafic entrant sur vos instances Amazon EC2 saines. Cela augmente l'évolutivité et la disponibilité de votre application. Vous pouvez activer Elastic Load Balancing dans plusieurs zones de disponibilité pour augmenter la tolérance aux pannes de vos applications.

Dans ce didacticiel, nous couvrons les étapes de base pour la configuration d'une application à charge équilibrée lors de la création du groupe Auto Scaling. Une fois que vous avez terminé, votre architecture doit ressembler au schéma suivant :


      Un groupe Auto Scaling avec un Application Load Balancer.

Elastic Load Balancing prend en charge différents types d'équilibreurs de charge. Nous vous recommandons d'utiliser un Application Load Balancer pour ce didacticiel.

Pour plus d'informations sur l'introduction d'un équilibreur de charge dans votre architecture, consultez Utiliser Elastic Load Balancing pour répartir le trafic sur les instances dans votre groupe Auto Scaling..

Prérequis

  • Un équilibreur de charge et un groupe cible. Assurez-vous de choisir les mêmes zones de disponibilité pour l'équilibreur de charge que celles que vous prévoyez d'utiliser pour votre groupe Auto Scaling. Pour plus d'informations, consultez Prise en main d'Elastic Load Balancing dans le Guide de l'utilisateur Elastic Load Balancing.

  • Un groupe de sécurité pour votre modèle de lancement ou votre configuration du lancement. Le groupe de sécurité doit autoriser l'accès à partir de l'équilibreur de charge sur le port de l'écouteur (généralement le port 80 pour le trafic HTTP) et le port que vous souhaitez que Elastic Load Balancing utilise pour effectuer des surveillances de l'état. Pour plus d'informations, consultez la documentation pertinente :

    Le cas échéant, si vos instances doivent avoir des adresses IP publiques, vous pouvez autoriser le trafic SSH pour la connexion aux instances.

  • (Facultatif) Rôle IAM qui accorde à votre application l'accès à AWS.

  • (Facultatif) Une Amazon Machine Image (AMI) définie en tant que modèle source pour vos instances Amazon EC2. Pour en créer une maintenant, lancez une instance. Spécifiez le rôle IAM (si vous en avez créé un) ainsi que les scripts de configuration dont vous avez besoin comme données utilisateur. Connectez-vous à l'instance et personnalisez-la. Par exemple, vous pouvez procéder à l'installation des logiciels et des applications, à la copie des données et à l'attachement des volumes EBS supplémentaires. Testez vos applications sur votre instance pour vous assurer qu'elle est correctement configurée. Enregistrez cette configuration mise à jour en tant qu'AMI personnalisée. Vous pouvez résilier l'instance si vous n'en avez pas besoin ultérieurement. Les instances lancées à partir de cette nouvelle AMI incluront les personnalisations apportées lors de sa création.

  • Un Virtual Private Cloud (VPC). Ce didacticiel fait référence au VPC par défaut, mais vous pouvez utiliser le vôtre. Si vous utilisez votre propre VPC, assurez-vous qu'il dispose d'un sous-réseau mappé à chaque zone de disponibilité de la région dans laquelle vous travaillez. Au minimum, vous devez disposer de deux sous-réseaux publics disponibles pour créer l'équilibreur de charge. Vous devez également disposer de deux sous-réseaux privés ou deux sous-réseaux publics pour créer votre groupe Auto Scaling et l'enregistrer auprès de l'équilibreur de charge.

Étape 1 : configurer un modèle de lancement ou d'une configuration de lancement

Utilisez un modèle de lancement ou une configuration de lancement pour ce didacticiel.

Sélectionnez ou créez un modèle de lancement

Si vous possédez déjà un modèle de lancement que vous souhaiteriez utiliser, sélectionnez-le grâce à la procédure suivante.

Pour sélectionner un modèle de lancement existant
  1. Ouvrez la page des modèles de lancement de la console Amazon EC2.

  2. Dans la barre de navigation située en haut de l'écran, choisissez la région dans laquelle l'équilibreur de charge a été créé.

  3. Sélectionnez un modèle de lancement.

  4. Choisissez Actions, Create Auto Scaling group (Créer un groupe Auto Scaling).

Sinon, pour créer un nouveau modèle de lancement, utilisez la procédure suivante.

Pour créer un modèle de lancement
  1. Ouvrez la page des modèles de lancement de la console Amazon EC2.

  2. Dans la barre de navigation située en haut de l'écran, choisissez la région dans laquelle l'équilibreur de charge a été créé.

  3. Choisissez Créer un modèle de lancement.

  4. Saisissez un nom et une description pour la version initiale du modèle de lancement.

  5. Pour Application and OS Images (Amazon Machine Image) (Images d'applications et de systèmes d'exploitation [Amazon Machine Image]), sélectionnez l'ID de l'AMI pour vos instances. Vous pouvez effectuer une recherche parmi toutes les AMI disponibles ou sélectionner une AMI depuis la liste Recent (Récent) ou Quick Start (Démarrage rapide). Si vous ne voyez pas l'AMI dont vous avez besoin, choisissez Browser more AMIs (Parcourir plus d'AMI) pour parcourir le catalogue complet des AMI.

  6. Pour Instance type (Type d'instance), sélectionnez une configuration matérielle pour vos instances qui soit compatible avec l'AMI que vous avez spécifiée.

  7. (Facultatif) Pour Key pair (login) (Paire de clés [connexion]), choisissez la paire de clés à utiliser lors de la connexion à vos instances.

  8. Pour Network settings (Paramètres réseau), développez Advanced network configuration (Configuration réseau avancée) et procédez comme suit :

    1. Choisissez Add network interface (Ajouter une interface réseau) pour ajouter une interface réseau primaire.

    2. Pour Attribuer automatiquement une adresse IP publique, spécifiez si vos instances reçoivent des adresses IPv4 publiques. Par défaut, Amazon EC2 attribue une adresse IPv4 publique si l'instance EC2 est lancée dans un sous-réseau par défaut ou si l'instance est lancée dans un sous-réseau configuré pour attribuer automatiquement une adresse IPv4 publique. Si vous n'avez pas besoin de vous connecter à vos instances, vous pouvez choisir Désactiver pour empêcher les instances de votre groupe de recevoir du trafic directement depuis Internet. Dans ce cas, elles recevront le trafic uniquement de l'équilibreur de charge.

    3. Pour Security group ID (ID du groupe de sécurité), spécifiez un groupe de sécurité pour vos instances à partir du même VPC que l'équilibreur de charge.

    4. Pour Delete on termination (Supprimer à la résiliation), choisissez Yes. Cela supprime l'interface réseau lorsque le groupe Auto Scaling est mis à l'échelle et lorsque l'instance à laquelle l'interface réseau est attachée est résiliée.

  9. (Facultatif) Pour distribuer en toute sécurité les informations d'identification à vos instances, pour Advanced details (Détails avancés), IAM instance profile (Profil d'instance IAM), saisissez l'Amazon Resource Name (ARN) de votre rôle IAM.

  10. (Facultatif) Pour spécifier des données utilisateur ou un script de configuration pour vos instances, collez-les dans Advanced details (Détails avancés), User data (Données utilisateur).

  11. Choisissez Create launch template (Créer un modèle de lancement).

  12. Sur la page de confirmation, choisissez Create Auto Scaling group (Créer un groupe Auto Scaling).

Sélectionner ou créer une configuration de lancement

Note

Nous vous déconseillons vivement d'utiliser des configurations de lancement dans les nouvelles applications, car il s'agit d'une fonctionnalité héritée pour laquelle aucun investissement n'est prévu. En outre, les nouveaux comptes créés le 1er juin 2023 ou après cette date n'auront pas la possibilité de créer de nouvelles configurations de lancement via la console. Pour plus d’informations, consultez Configurations de lancement.

Pour sélectionner une configuration de lancement existante
  1. Ouvrez la page des configurations de lancement de la console Amazon EC2.

  2. Dans la barre de navigation en haut de l’écran, choisissez la région dans laquelle l’équilibreur de charge a été créé.

  3. Sélectionnez une configuration de lancement.

  4. Choisissez Actions, Create Auto Scaling group (Créer un groupe Auto Scaling).

Sinon, pour créer une nouvelle configuration de lancement, utilisez la procédure suivante.

Pour créer une configuration du lancement
  1. Ouvrez la page des configurations de lancement de la console Amazon EC2. Lorsque vous êtes invité à confirmer, choisissez Afficher les configurations de lancement pour confirmer que vous souhaitez consulter la page Configurations de lancement.

  2. Dans la barre de navigation en haut de l’écran, choisissez la région dans laquelle l’équilibreur de charge a été créé.

  3. Choisissez Create launch configuration (Créer une configuration de lancement) et entrez un nom pour votre configuration.

  4. Pour Amazon machine Image (AMI), saisissez l'ID de l'AMI pour vos instances en tant que critères de recherche.

  5. Pour Instance type (Type d'instance), sélectionnez une configuration matérielle pour l'instance.

  6. Sous Additional configuration (Configuration supplémentaire), prêtez attention aux champs suivants :

    1. (Facultatif) Pour distribuer de manière sécurisée les informations d'identification à votre instance EC2, pour IAM instance profile (Profil d'instance IAM), sélectionnez votre rôle IAM. Pour plus d’informations, consultez Rôle IAM pour les applications qui s'exécutent sur des instances Amazon EC2.

    2. (Facultatif) Pour spécifier des données utilisateur ou un script de configuration pour votre instance, collez-les dans Détails avancés, Données utilisateur.

    3. (Facultatif) Pour Détails avancés, Type d'adresse IP, conservez la valeur par défaut. Lorsque vous créez votre groupe Auto Scaling, vous pouvez attribuer une adresse IP publique aux instances de votre groupe Auto Scaling en utilisant des sous-réseaux dont l'attribut d'adressage IP public est activé, tels que les sous-réseaux par défaut dans le VPC par défaut. Sinon, si vous n'avez pas besoin de vous connecter à vos instances, vous pouvez choisir N'affecter une adresse IP publique à aucune instance afin d'empêcher les instances de votre groupe de recevoir du trafic directement à partir d'Internet. Dans ce cas, elles recevront le trafic uniquement de l'équilibreur de charge.

  7. Pour Security groups (Groupes de sécurité), choisissez un groupe de sécurité existant dans le même VPC que l'équilibreur de charge. Si vous ne désélectionnez pas Create a new security group (Créer un groupe de sécurité), une règle SSH par défaut est configurée pour les instances Amazon EC2 s'exécutant sur les systèmes d'exploitation Linux. Une règle RDP par défaut est configurée pour les instances Amazon EC2 s'exécutant sous Windows.

  8. Pour Key pair (login) (Paire de clés [connexion]), choisissez une option sous Key pair options (Options de la paire de clés).

    Si vous avez déjà configuré une paire de clés d'instance Amazon EC2, vous pouvez la choisir ici.

    Si vous ne disposez pas déjà d'une paire de clés d'instance Amazon EC2, choisissez Create a new key pair (Créer une nouvelle paire de clés) et attribuez-lui un nom facilement identifiable. Choisissez Download key pair (Télécharger une paire de clés) pour télécharger la paire de clés sur votre ordinateur.

    Important

    Ne choisissez pas Proceed without a key pair (Continuer sans paire de clés) si vous avez besoin de vous connecter aux instances.

  9. Sélectionnez la case à cocher de confirmation, puis choisissez Create launch configuration (Créer une configuration de lancement).

  10. Activez la case à cocher en regard du nom de votre nouvelle configuration du lancement et choisissez Actions, Create Auto Scaling group (Créer un groupe Auto Scaling).

Étape 2 : créer un groupe Auto Scaling

Utilisez la procédure suivante pour reprendre là où vous en étiez après avoir créé ou sélectionné votre modèle de lancement ou votre configuration de lancement.

Pour créer un groupe Auto Scaling
  1. Dans la page Choisir un modèle de lancement ou une configuration, dans Auto Scaling group name (Nom du groupe Auto Scaling), entrez un nom pour le groupe Auto Scaling.

  2. [Modèle de lancement uniquement] Pour Launch template (Modèle de lancement), indiquez si le groupe Auto Scaling utilise la version par défaut, la version la plus récente ou une version spécifique du modèle de lancement lors de l'évolutivité horizontale.

  3. Choisissez Suivant.

    La page Choisir les options de lancement de l'instance (Choisir les options de lancement d'instance) s'affiche, vous permettant de choisir les paramètres de réseau VPC que vous voulez que le groupe Auto Scaling utilise et vous donnant des options pour le lancement des instances à la demande et Spot (si vous avez choisi un modèle de lancement).

  4. Dans la section Network (Réseau), pour VPC, choisissez le VPC que vous avez utilisé pour votre équilibreur de charge. Si vous choisissez le VPC par défaut, il est automatiquement configuré pour fournir une connectivité Internet à vos instances. Ce VPC inclut un sous-réseau public dans chaque zone de disponibilité de la région.

  5. Pour Availability Zones and subnets (Zones de disponibilité et sous-réseaux), choisissez un ou plusieurs sous-réseaux dans chaque zone de disponibilité que vous souhaitez inclure, en fonction des zones de disponibilité dans lesquelles se trouve l'équilibreur de charge. Pour plus d’informations, consultez Considérations à prendre en compte lors du choix des sous-réseaux VPC.

  6. [Modèle de lancement uniquement] Dans la section Exigences relatives au type d'instance, utilisez le paramètre par défaut pour simplifier cette étape. (Ne remplacez pas le modèle de lancement.) Pour ce didacticiel, vous lancerez uniquement des instances à la demande en utilisant le type d'instance spécifié dans votre modèle de lancement.

  7. Choisissez Next (Suivant) pour accéder à la page Configurer les options avancées.

  8. Pour attacher le groupe à un équilibreur de charge existant, dans la section Répartition de charge, choisissez Attach to an existing load balancer (Attacher à un équilibreur de charge existant). Vous pouvez choisir Choose from your load balancer target groups (Choisir parmi les groupes cibles de votre équilibreur de charge) ou Choose from Classic Load Balancers (Choisir parmi les Classic Load Balancers). Vous pouvez ensuite choisir le nom d'un groupe cible pour l'Application Load Balancer ou le Network Load Balancer que vous avez créé ou choisir le nom d'un Classic Load Balancer.

  9. (Facultatif) Pour utiliser les surveillances de l'état Elastic Load Balancing, pour Health checks (Surveillances de l'état), choisissez ELB sous Health check type (Type de surveillance de l'état).

  10. Lorsque vous avez terminé la configuration du groupe Auto Scaling, choisissez Skip to review (Ignorer pour vérification).

  11. Sur la page Review (Vérifier), passez en revue les détails de votre groupe Auto Scaling. Vous pouvez choisir Edit (Modifier) pour effectuer des changements. Lorsque vous avez terminé, choisissez Create Auto Scaling group (Créer un groupe Auto Scaling).

Après avoir créé le groupe Auto Scaling avec l'équilibreur de charge attaché, l'équilibreur de charge enregistre automatiquement les nouvelles instances au fur et à mesure qu'elles sont en ligne. À ce stade, vous n'avez qu'une seule instance, il n'y a donc pas grand-chose à enregistrer. Toutefois, vous pouvez ajouter des instances supplémentaires en mettant à jour la capacité souhaitée du groupe. Pour step-by-step obtenir des instructions, voirChanger la capacité souhaitée de votre groupe Auto Scaling.

Étape 3 : vérifier que votre équilibreur de charge est attaché

Pour vérifier que votre équilibreur de charge est attaché
  1. Dans la page des groupes Auto Scaling de la console Amazon EC2, cochez la case située en regard de votre groupe Auto Scaling.

  2. Dans l'onglet Details (Détails), Load balancing (Répartition de charge) affiche les groupes cibles d'équilibrage de charge attachés ou les Classic Load Balancers.

  3. Dans l'onglet Activity, au niveau d'Activity history (Historique de l'activité), vous pouvez vérifier que vos instances ont été lancées correctement. La colonne Status indique si le groupe Auto Scaling a réussi le lancement des instances. Si vos instances ne parviennent pas à se lancer, vous trouverez des idées de dépannage pour des problèmes courants de lancement d'instance dans Résoudre les problèmes d'Amazon EC2 Auto Scaling.

  4. Dans l'onglet Instance management (Gestion des instances) sous Instances, vous pouvez vérifier que vos instances sont prêtes à recevoir le trafic. Initialement, vos instances sont à l'état Pending. Lorsqu'une instance est prête à recevoir du trafic, son statut passe à InService. La colonne Health Status (État de santé) affiche le résultat des surveillances de l'état Amazon EC2 Auto Scaling des instances. Bien qu'une instance puisse être marquée comme saine, l'équilibreur de charge n'envoie le trafic qu'aux instances qui passent les surveillances d'état de l'équilibreur de charge.

  5. Vérifiez que vos instances sont enregistrées auprès de l'équilibreur de charge. Ouvrez la page des groupes cibles de la console Amazon EC2. Sélectionnez votre groupe cible, puis cliquez sur l'onglet Targets (Cibles). Si l'état de vos instances est initial, c'est probablement parce qu'ils sont encore en train d'être enregistrés ou qu'ils subissent encore des surveillances de l'état. Lorsque l'état de vos instances indique healthy, elles sont prêtes à être utilisées.

Étape 4 : étapes suivantes

Maintenant que vous avez terminé ce didacticiel, vous pouvez en savoir plus :

  • Amazon EC2 Auto Scaling détermine si une instance est saine en fonction du statut des surveillances de l'état que votre groupe Auto Scaling utilise. Si vous activez les contrôles de santé de l'équilibreur de charge et qu'une instance échoue aux tests de santé, votre groupe Auto Scaling considère que l'instance est défectueuse et la remplace. Pour plus d’informations, consultez Surveillance de l'état.

  • Vous pouvez étendre votre application à une zone de disponibilité supplémentaire dans la même région afin d'augmenter la tolérance aux pannes en cas d'interruption de service. Pour plus d’informations, consultez Ajouter de zones de disponibilité.

  • Vous pouvez configurer votre groupe Auto Scaling pour qu'il utilise une politique de suivi des objectifs et d'échelonnement. Cela augmente ou diminue automatiquement le nombre d'instances à mesure que la demande sur vos instances change. Cela permet au groupe de gérer les modifications de la quantité de trafic que votre application reçoit. Pour plus d’informations, consultez Politiques de suivi des objectifs de la mise à l'échelle.

Étape 5 : nettoyer

Une fois que vous avez fini avec les ressources que vous avez créées dans le cadre de ce didacticiel, vous devez les nettoyer pour éviter des frais inutiles.

Pour supprimer votre groupe Auto Scaling
  1. Ouvrez la page des groupes Auto Scaling de la console Amazon EC2.

  2. Cochez la case située en regard de votre groupe Auto Scaling.

  3. Sélectionnez Delete (Supprimer).

  4. Lorsque vous êtes invité à confirmer l'opération, saisissez delete pour confirmer la suppression du groupe Auto Scaling spécifié, puis choisissez Delete (Supprimer).

    Une icône de chargement dans la colonne Name (Nom) indique que le groupe Auto Scaling est en cours de suppression. Lorsque la suppression s'est produite, les colonnes Desired (Souhaité), Min et Max affichent 0 instances du groupe Auto Scaling. Quelques minutes sont nécessaires pour résilier l'instance et supprimer le groupe. Actualisez la liste pour afficher l'état actuel.

Passez cette procédure si vous souhaitez conserver le modèle de lancement.

Pour supprimer votre modèle de lancement
  1. Ouvrez la page des modèles de lancement de la console Amazon EC2.

  2. Sélectionnez votre modèle de lancement.

  3. Choisissez Actions, puis Delete template (Supprimer le modèle).

  4. Lorsque vous êtes invité à confirmer l'opération, saisissez Delete pour confirmer la suppression du modèle de lancement spécifié, puis choisissez Delete (Supprimer).

Passez cette procédure si vous souhaitez conserver la configuration du lancement.

Pour supprimer la configuration du lancement
  1. Ouvrez la page des configurations de lancement de la console Amazon EC2.

  2. Sélectionnez votre configuration de lancement.

  3. Choisissez Actions, Delete launch configuration (Supprimer la configuration du lancement).

  4. Lorsque vous êtes invité à confirmer l’opération, choisissez Supprimer.

Ignorez la procédure suivante si vous souhaitez conserver l'équilibreur de charge pour une utilisation ultérieure.

Pour supprimer l'équilibreur de charge
  1. Ouvrez la page des équilibreurs de charge de la console Amazon EC2.

  2. Sélectionnez l'équilibreur de charge et choisissez Actions, Delete (Supprimer).

  3. Lorsque vous êtes invité à confirmer l'opération, choisissez Oui, supprimer.

Pour supprimer votre groupe cible
  1. Ouvrez la page des groupes cibles de la console Amazon EC2.

  2. Sélectionnez le groupe cible et choisissez Actions, Delete (Supprimer).

  3. Lorsque vous êtes invité à confirmer l’opération, choisissez Yes, Delete.

Vous pouvez ainsi créer et provisionner des déploiements d' AWS infrastructure de manière prévisible et répétée, en utilisant des fichiers modèles pour créer et supprimer un ensemble de ressources en une seule unité (une pile). AWS CloudFormation Pour plus d’informations, consultez le Guide de l’utilisateur AWS CloudFormation.

Pour une démonstration vous expliquant comment utiliser un modèle de pile pour alimenter un groupe Auto Scaling et Application Load Balancer, consultez la section Procédure : Création d’une application redimensionnée et équilibrée de charge dans le Guide de l’utilisateur AWS CloudFormation . Utilisez la démonstration et le modèle en exemple comme point de départ pour créer des modèles similaires répondant à vos besoins.