Étape 1 : Création et configuration du groupe Auto Scaling - AWS CodeDeploy

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.

Étape 1 : Création et configuration du groupe Auto Scaling

Au cours de cette étape, vous allez créer un groupe Auto Scaling contenant une seule instance Amazon EC2 Amazon Linux, RHEL ou Windows Server. Dans une étape ultérieure, vous demanderez à Amazon EC2 Auto Scaling d'ajouter une instance Amazon EC2 supplémentaire, CodeDeploy et vous y déploierez votre révision.

Pour créer et configurer le groupe Auto Scaling (CLI)

  1. Appelez la create-launch-template commande pour créer un modèle de lancement Amazon EC2.

    Avant d'appeler cette commande, vous avez besoin de l'ID d'une AMI qui fonctionne pour ce didacticiel, représenté par l'espace réservé image-id. Vous avez également besoin du nom d'une paire de clés d'instance Amazon EC2 pour permettre l'accès à l'instance Amazon EC2, représentée par le nom de clé de remplacement.

    Pour obtenir l'ID d'une image AMI qui fonctionne avec ce didacticiel :

    1. Ouvrez la console Amazon EC2 à l’adresse https://console.aws.amazon.com/ec2/.

    2. Dans le volet de navigation, sous Instances, choisissez Instances, puis choisissez Lancer une instance.

    3. Dans l'onglet Démarrage rapide de la page Choisissez une image de machine Amazon, notez l'ID de l'AMI à côté de l'AMI Amazon Linux 2, Red Hat Enterprise Linux 7.1, Ubuntu Server 14.04 LTS ou Microsoft Windows Server 2012 R2.

      Note

      Si vous disposez d'une version personnalisée d'une AMI compatible avec CodeDeploy, choisissez-la ici au lieu de parcourir l'onglet Démarrage rapide. Pour plus d'informations sur l'utilisation d'une AMI personnalisée avec CodeDeploy Amazon EC2 Auto Scaling, consultez. Utilisation d'une AMI personnalisée avec CodeDeploy Amazon EC2 Auto Scaling

    Pour la paire de clés d'instance Amazon EC2, utilisez le nom de votre paire de clés d'instance Amazon EC2.

    Appelez la commande create-launch-template.

    Sur les machines Linux, macOS ou Unix locales :

    aws ec2 create-launch-template \ --launch-template-name CodeDeployDemo-AS-Launch-Template \ --launch-template-data file://config.json

    Le contenu du config.json fichier :

    { "InstanceType":"t1.micro", "ImageId":"image-id", "IamInstanceProfile":{ "Name":"CodeDeployDemo-EC2-Instance-Profile" }, "KeyName":"key-name" }

    Sur les machines Windows locales :

    aws ec2 create-launch-template --launch-template-name CodeDeployDemo-AS-Launch-Template --launch-template-data file://config.json

    Le contenu du config.json fichier :

    { "InstanceType":"t1.micro", "ImageId":"image-id", "IamInstanceProfile":{ "Name":"CodeDeployDemo-EC2-Instance-Profile" }, "KeyName":"key-name" }

    Ces commandes, associées au config.json fichier, créent un modèle de lancement Amazon EC2 nommé CodeDeployDemo -as-Launch-template pour votre groupe Auto Scaling qui sera créé lors d'une étape suivante sur la base du type d'instance Amazon EC2 t1.micro. Sur la base de vos entrées pour ImageIdIamInstanceProfile, etKeyName, le modèle de lancement spécifie également l'ID AMI, le nom du profil d'instance associé au rôle IAM à transmettre aux instances lors du lancement et la paire de clés Amazon EC2 à utiliser lors de la connexion aux instances.

  2. Appelez la create-auto-scaling-group commande pour créer un groupe Auto Scaling. Vous aurez besoin du nom de l'une des zones de disponibilité de l'une des régions répertoriées dans Région et des points de terminaison dans la Références générales AWS, représentés par la zone de disponibilité de l'espace réservé.

    Note

    Pour afficher la liste des zones de disponibilité d'une région, appelez :

    aws ec2 describe-availability-zones --region region-name

    Par exemple, pour consulter la liste des zones de disponibilité dans la région ouest des États-Unis (Oregon), appelez :

    aws ec2 describe-availability-zones --region us-west-2

    Pour obtenir la liste des identifiants de noms de régions, consultez Noms des compartiments du kit de ressources par région.

    Sur les machines Linux, macOS ou Unix locales :

    aws autoscaling create-auto-scaling-group \ --auto-scaling-group-name CodeDeployDemo-AS-Group \ --launch-template CodeDeployDemo-AS-Launch-Template,Version='$Latest' \ --min-size 1 \ --max-size 1 \ --desired-capacity 1 \ --availability-zones availability-zone \ --tags Key=Name,Value=CodeDeployDemo,PropagateAtLaunch=true

    Sur les machines Windows locales :

    aws autoscaling create-auto-scaling-group --auto-scaling-group-name CodeDeployDemo-AS-Group --launch-template LaunchTemplateName=CodeDeployDemo-AS-Launch-Template,Version="$Latest" --min-size 1 --max-size 1 --desired-capacity 1 --availability-zones availability-zone --tags Key=Name,Value=CodeDeployDemo,PropagateAtLaunch=true

    Ces commandes créent un groupe Auto Scaling nommé d'CodeDeployDemo-AS-Groupaprès le modèle de lancement Amazon EC2 nommé. CodeDeployDemo-AS-Launch-Template Ce groupe Auto Scaling ne possède qu'une seule instance Amazon EC2 et il est créé dans la zone de disponibilité spécifiée. Chaque instance de ce groupe Auto Scaling aura le tagName=CodeDeployDemo. La balise sera utilisée lors de l'installation ultérieure de l' CodeDeploy agent.

  3. Appelez la commande describe-auto-scaling-groups sur CodeDeployDemo-AS-Group :

    aws autoscaling describe-auto-scaling-groups --auto-scaling-group-names CodeDeployDemo-AS-Group --query "AutoScalingGroups[0].Instances[*].[HealthStatus, LifecycleState]" --output text

    Ne continuez pas tant que les valeurs retournées n'affichent pas Healthy et InService.

  4. L' CodeDeploy agent doit être installé sur les instances de votre groupe Auto Scaling pour être utilisé dans CodeDeploy les déploiements. Installez l' CodeDeploy agent en appelant la create-association commande depuis AWS Systems Manager les balises ajoutées lors de la création du groupe Auto Scaling.

    aws ssm create-association \ --name AWS-ConfigureAWSPackage \ --targets Key=tag:Name,Values=CodeDeployDemo \ 
 --parameters action=Install, name=AWSCodeDeployAgent \ --schedule-expression "cron(0 2 ? * SUN *)"

    Cette commande crée une association dans Systems Manager State Manager qui installera l' CodeDeploy agent sur toutes les instances du groupe Auto Scaling, puis tentera de le mettre à jour à 2 h tous les dimanches matins. Pour plus d'informations sur l' CodeDeploy agent, consultez la section Utilisation de l' CodeDeploy agent. Pour plus d'informations sur Systems Manager, consultez What is AWS Systems Manager.

Pour créer et configurer le groupe Auto Scaling (console)

  1. Ouvrez la console Amazon EC2 à l’adresse https://console.aws.amazon.com/ec2/.

  2. Dans la barre de navigation globale, assurez-vous que l'une des régions répertoriées dans Région et points de terminaison dans le Références générales AWSest sélectionnée. Les ressources Amazon EC2 Auto Scaling sont liées à la région que vous spécifiez et ne CodeDeploy sont prises en charge que dans certaines régions.

  3. Dans la barre de navigation, sous Instances, choisissez Launch Templates.

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

  5. Dans la boîte de dialogue Nom et description du modèle de lancement, pour Nom du modèle de lancement, entrezCodeDeployDemo-AS-Launch-Template. Conservez les valeurs par défaut pour les autres champs.

  6. Dans la boîte de dialogue Amazon machine image (AMI), cliquez sur le menu déroulant sous AMI, choisissez une AMI compatible avec ce didacticiel :

    1. Dans l'onglet Quick Start de la liste déroulante AMI, sélectionnez l'une des options suivantes : Amazon Linux 2 AMI, Red Hat Enterprise Linux 7.1, Ubuntu Server 14.04 LTS ou Microsoft Windows Server 2012 R2.

      Note

      Si vous disposez d'une version personnalisée d'une AMI compatible avec CodeDeploy, choisissez-la ici au lieu de parcourir l'onglet Démarrage rapide. Pour plus d'informations sur l'utilisation d'une AMI personnalisée avec CodeDeploy Amazon EC2 Auto Scaling, consultez. Utilisation d'une AMI personnalisée avec CodeDeploy Amazon EC2 Auto Scaling

  7. Dans Type d'instance, sélectionnez le menu déroulant et choisissez t1.micro. Vous pouvez utiliser la barre de recherche pour le trouver plus rapidement.

  8. Dans la boîte de dialogue Paire de clés (connexion), sélectionnez Choisir une paire de clés existante. Dans la liste déroulante Sélectionnez une paire de clés, sélectionnez la paire de clés d'instance Amazon EC2 que vous avez créée ou utilisée lors des étapes précédentes.

  9. Dans la boîte de dialogue Paramètres réseau, choisissez Virtual Public Cloud (VPC).

    Dans le menu déroulant Groupes de sécurité, choisissez le groupe de sécurité que vous avez créé dans la section des prérequis du didacticiel ()CodeDeployDemo-AS-SG.

  10. Développez la boîte de dialogue Détails avancés. Dans la liste déroulante du profil d'instance IAM, sélectionnez le rôle IAM que vous avez créé précédemment (CodeDeployDemo-EC2-Instance-Profile) sous Profil d'instance IAM.

    Conservez le reste des valeurs par défaut.

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

  12. Dans la boîte de dialogue Next steps, choisissez Create Auto Scaling group.

  13. Sur la page Choisir un modèle de lancement ou de configuration, saisissez le nom du groupe Auto ScalingCodeDeployDemo-AS-Group.

  14. Dans la boîte de dialogue Modèle de lancement, votre modèle de lancement (CodeDeployDemo-AS-Launch-Template) doit être renseigné. Sinon, sélectionnez-le dans le menu déroulant. Conservez les valeurs par défaut et choisissez Next.

  15. Sur la page Choisir les options de lancement de l'instance, dans la section Réseau, pour VPC, choisissez le VPC par défaut. Ensuite, pour les zones de disponibilité et les sous-réseaux, choisissez un sous-réseau par défaut. Vous devez créer un VPC si vous ne pouvez pas choisir la valeur par défaut. Pour plus d'informations, consultez Getting started with Amazon VPC.

  16. Dans la section Instance type requirements (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.

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

  18. Conservez les valeurs par défaut et choisissez Next.

  19. Sur la page Configurer la taille du groupe et les politiques de dimensionnement, conservez les valeurs de taille de groupe par défaut de 1. Choisissez Suivant.

  20. Ignorez l'étape de configuration des notifications et choisissez Next.

  21. Sur la page Ajouter des balises, ajoutez une balise à utiliser ultérieurement lors de l'installation de l' CodeDeploy agent. Choisissez Ajouter une balise.

    1. Dans Clé, entrez Name.

    2. Dans Value (Valeur), entrez CodeDeployDemo.

    Choisissez Suivant.

  22. Passez en revue les informations de votre groupe Auto Scaling sur la page de révision, puis choisissez Create Auto Scaling group.

  23. Dans la barre de navigation, avec Auto Scaling Groups sélectionnéCodeDeployDemo-AS-Group, choisissez, puis choisissez l'onglet Instance Management. Ne poursuivez pas tant que la valeur de n'InServiceapparaît pas dans la colonne Lifecycle et que la valeur de Healthy n'apparaît pas dans la colonne Health Status.

  24. Installez l' CodeDeploy agent en suivant les étapes décrites dans Installer l' CodeDeploy agent et en utilisant les balises d'Name=CodeDeployDemoinstance.