

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.

# Tutoriel : CodeDeploy À utiliser pour déployer une application dans un groupe Auto Scaling
<a name="tutorials-auto-scaling-group"></a>

Dans ce didacticiel, vous allez utiliser CodeDeploy pour déployer une révision d'application dans un groupe Auto Scaling. Amazon EC2 Auto Scaling lance des instances Amazon EC2 selon des conditions prédéfinies, puis met fin à ces instances lorsqu'elles ne sont plus nécessaires. Amazon EC2 Auto Scaling peut CodeDeploy vous aider à évoluer en garantissant qu'il dispose toujours du nombre correct d'instances Amazon EC2 disponibles pour gérer la charge des déploiements. Pour plus d'informations sur l'intégration d'Amazon EC2 Auto Scaling CodeDeploy avec, [Intégration CodeDeploy à Amazon EC2 Auto Scaling](integrations-aws-auto-scaling.md) consultez.

**Topics**
+ [Conditions préalables](tutorials-auto-scaling-group-prerequisites.md)
+ [Étape 1 : Création et configuration du groupe Auto Scaling](tutorials-auto-scaling-group-create-auto-scaling-group.md)
+ [Étape 2 : Déployer l'application dans le groupe Auto Scaling](tutorials-auto-scaling-group-create-deployment.md)
+ [Étape 3 : Vérifiez vos résultats](tutorials-auto-scaling-group-verify.md)
+ [Étape 4 : augmenter le nombre d'instances Amazon EC2 dans le groupe Auto Scaling](tutorials-auto-scaling-group-scale-up.md)
+ [Étape 5 : Vérifiez à nouveau vos résultats](tutorials-auto-scaling-group-reverify.md)
+ [Étape 6 : Nettoyer](tutorials-auto-scaling-group-clean-up.md)

# Conditions préalables
<a name="tutorials-auto-scaling-group-prerequisites"></a>

Pour suivre ce tutoriel :
+ Effectuez toutes les étapes décrites[Commencer avec CodeDeploy](getting-started-codedeploy.md), y compris la configuration AWS CLI et la création d'un profil d'instance IAM (**CodeDeployDemo-EC2-Instance-Profile**) et d'un rôle de service (**CodeDeployDemo**). Un *rôle de service* est un type spécial de rôle IAM qui autorise un service à agir en votre nom.
+ Si vous créez votre groupe Auto Scaling avec un modèle de lancement, vous devez ajouter les autorisations suivantes :
  +  `ec2:RunInstances` 
  +  `ec2:CreateTags` 
  +  `iam:PassRole` 

  Pour plus d'informations[Étape 2 : créer un rôle de service](getting-started-create-service-role.md), consultez les sections [Création d'un modèle de lancement pour un groupe Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html) et [prise en charge des modèles de lancement](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-launch-template-permissions.html) dans le guide de l'*utilisateur Amazon EC2 Auto Scaling*. 
+  Créez et utilisez une révision compatible avec une instance de serveur Ubuntu et CodeDeploy. Pour votre révision, vous pouvez effectuer l'une des opérations suivantes :
  + Créer et utiliser l'exemple de révision de l'[Étape 2 : Création d'un exemple de révision d'application](tutorials-on-premises-instance-2-create-sample-revision.md) du didacticiel [Tutoriel : Déployer une application sur une instance locale avec CodeDeploy (Windows Server, Ubuntu Server ou Red Hat Enterprise Linux)](tutorials-on-premises-instance.md). 
  + Créer vous-même une révision. Pour ce faire, consultez [Travailler avec les révisions d'applications pour CodeDeploy](application-revisions.md).
+ Créez un groupe de sécurité nommé **CodeDeployDemo-AS-SG** avec la **règle entrante** suivante :
  + Type : HTTP
  + Source : N'importe où

  Cela est nécessaire pour visualiser votre application et vérifier le succès du déploiement. Pour plus d'informations sur la création d'un groupe de sécurité, consultez la section [Création d'un groupe de sécurité](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/working-with-security-groups.html#creating-security-group) dans le guide de l'*utilisateur Amazon EC2*.

 

# Étape 1 : Création et configuration du groupe Auto Scaling
<a name="tutorials-auto-scaling-group-create-auto-scaling-group"></a>

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.

**Topics**
+ [Pour créer et configurer le groupe Auto Scaling (CLI)](#tutorials-auto-scaling-group-create-auto-scaling-group-cli)
+ [Pour créer et configurer le groupe Auto Scaling (console)](#tutorials-auto-scaling-group-create-auto-scaling-group-console)

## Pour créer et configurer le groupe Auto Scaling (CLI)
<a name="tutorials-auto-scaling-group-create-auto-scaling-group-cli"></a>

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 compatible avec 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 l'espace réservé. *key-name*

   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/](https://console.aws.amazon.com/ec2/).

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

   1. 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 avez une version personnalisée d'une image 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, [Utilisation d'une AMI personnalisée avec CodeDeploy Amazon EC2 Auto Scaling](integrations-aws-auto-scaling.md#integrations-aws-auto-scaling-custom-ami) consultez.

   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 d'après 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 `ImageId``IamInstanceProfile`, et`KeyName`, 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.

1.  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é dans l'une des régions répertoriées dans [Région et des points de terminaison](https://docs.aws.amazon.com/general/latest/gr/rande.html#codedeploy_region) dans la *Références générales AWS*, représentés par l'espace réservé*availability-zone*.
**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](resource-kit.md#resource-kit-bucket-names).

   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-Group**aprè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 tag`Name=CodeDeployDemo`. La balise sera utilisée lors de l'installation ultérieure de l' CodeDeploy agent.

1. 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`.

1.  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](https://docs.aws.amazon.com/codedeploy/latest/userguide/codedeploy-agent.html). Pour plus d'informations sur Systems Manager, consultez [What is AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html).

## Pour créer et configurer le groupe Auto Scaling (console)
<a name="tutorials-auto-scaling-group-create-auto-scaling-group-console"></a>

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

1. Dans la barre de navigation globale, assurez-vous que l'une des régions répertoriées dans [Région et points de terminaison](https://docs.aws.amazon.com/general/latest/gr/rande.html#codedeploy_region) dans le *Références générales AWS*est sélectionnée. Les ressources Amazon EC2 Auto Scaling sont liées à la région que vous spécifiez CodeDeploy et ne sont prises en charge que dans certaines régions.

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

1. Choisissez **Créer un modèle de lancement**.

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

1. 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 avez une version personnalisée d'une image 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, [Utilisation d'une AMI personnalisée avec CodeDeploy Amazon EC2 Auto Scaling](integrations-aws-auto-scaling.md#integrations-aws-auto-scaling-custom-ami) consultez.

1. 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.

1. Dans la boîte de dialogue **Key pair (login)**, 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.

1. 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](https://docs.aws.amazon.com/codedeploy/latest/userguide/tutorials-auto-scaling-group-prerequisites.html) ()**CodeDeployDemo-AS-SG**.

1. 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.

1. Choisissez **Créer un modèle de lancement**.

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

1. Sur la page **Choisir un modèle de lancement ou de configuration**, saisissez le **nom du groupe Auto Scaling****CodeDeployDemo-AS-Group**.

1. 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**. 

1. 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](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-getting-started.html).

1. 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.

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

1. Conservez les valeurs par défaut et choisissez **Next**.

1. 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**.

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

1. 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**.

   1. Dans **Value (Valeur)**, entrez **CodeDeployDemo**.

   Choisissez **Suivant**.

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

1. 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'**InService**apparaît pas dans la colonne **Lifecycle** et que la valeur de **Healthy** n'apparaît pas dans la colonne **Health Status**.

1. Installez l' CodeDeploy agent en suivant les étapes décrites dans [Installer l' CodeDeploy agent](https://docs.aws.amazon.com/codedeploy/latest/userguide/codedeploy-agent-operations-install.html) et en utilisant les balises d'`Name=CodeDeployDemo`instance.

# Étape 2 : Déployer l'application dans le groupe Auto Scaling
<a name="tutorials-auto-scaling-group-create-deployment"></a>

Au cours de cette étape, vous allez déployer la révision sur l'instance Amazon EC2 unique du groupe Auto Scaling.

**Topics**
+ [Pour créer le déploiement (interface CLI)](#tutorials-auto-scaling-group-create-deployment-cli)
+ [Pour créer le déploiement (console)](#tutorials-auto-scaling-group-create-deployment-console)

## Pour créer le déploiement (interface CLI)
<a name="tutorials-auto-scaling-group-create-deployment-cli"></a>

1. Appelez la commande **create-application** pour créer une application nommée **SimpleDemoApp** :

   ```
   aws deploy create-application --application-name SimpleDemoApp
   ```

1. Vous devriez avoir déjà créé un rôle de service en suivant les instructions de la rubrique [Étape 2 : créer un rôle de service pour CodeDeploy](getting-started-create-service-role.md). Le rôle de service donnera CodeDeploy l'autorisation d'accéder à vos instances Amazon EC2 pour développer (lire) leurs balises. Vous avez besoin du nom ARN du rôle de service. Afin d'obtenir le nom ARN du rôle de service, suivez les instructions de la rubrique [Obtenez l'ARN du rôle de service (CLI)](getting-started-create-service-role.md#getting-started-get-service-role-cli).

1. Maintenant que vous disposez d'un ARN de rôle de service, appelez la **create-deployment-group** commande pour créer un groupe de déploiement nommé**SimpleDemoDG**, associé à l'application nommée**SimpleDemoApp**, en utilisant le nom du groupe Auto Scaling **CodeDeployDemo-AS-Group** et le nom de la configuration de déploiement**CodeDeployDefault.OneAtATime**, avec l'ARN du rôle de service spécifié.
**Note**  
La [create-deployment-group](https://docs.aws.amazon.com/cli/latest/reference/deploy/create-deployment-group.html)commande permet de créer des déclencheurs qui entraînent l'envoi de notifications Amazon SNS aux abonnés du topic concernant des événements spécifiques liés aux déploiements et aux instances. La commande prend également en charge des options permettant d'annuler automatiquement les déploiements et de configurer des alarmes pour arrêter les déploiements lorsque les seuils de surveillance des CloudWatch alarmes d'Amazon sont atteints. Les commandes associées à ces actions ne sont pas incluses dans ce didacticiel.

   Sur les machines Linux, macOS ou Unix locales :

   ```
   aws deploy create-deployment-group \
     --application-name SimpleDemoApp \
     --auto-scaling-groups CodeDeployDemo-AS-Group \
     --deployment-group-name SimpleDemoDG \
     --deployment-config-name CodeDeployDefault.OneAtATime \
     --service-role-arn service-role-arn
   ```

   Sur les machines Windows locales :

   ```
   aws deploy create-deployment-group --application-name SimpleDemoApp --auto-scaling-groups CodeDeployDemo-AS-Group --deployment-group-name SimpleDemoDG --deployment-config-name CodeDeployDefault.OneAtATime --service-role-arn service-role-arn
   ```

1. Appelez la commande **create-deployment** pour créer un déploiement associé à l'application nommée **SimpleDemoApp**, à la configuration de déploiement nommée **CodeDeployDefault.OneAtATime**, au groupe de déploiement nommé **SimpleDemoDG**, en utilisant la révision à l'emplacement spécifié.

   **Pour les instances Amazon Linux et RHEL Amazon EC2, appels depuis des machines Linux, macOS ou Unix locales**

    

   ```
   aws deploy create-deployment \
     --application-name SimpleDemoApp \
     --deployment-config-name CodeDeployDefault.OneAtATime \
     --deployment-group-name SimpleDemoDG \
     --s3-location bucket=bucket-name,bundleType=zip,key=samples/latest/SampleApp_Linux.zip
   ```

   *bucket-name*est le nom du compartiment Amazon S3 qui contient les fichiers du kit de CodeDeploy ressources pour votre région. Par exemple, pour la région USA Est (Ohio), remplacez *bucket-name* par`aws-codedeploy-us-east-2`. Pour obtenir la liste des noms de compartiments, consultez[Noms des compartiments du kit de ressources par région](resource-kit.md#resource-kit-bucket-names).

   **Pour les instances Amazon Linux et RHEL Amazon EC2, appels depuis des machines Windows locales**

    

   ```
   aws deploy create-deployment --application-name SimpleDemoApp --deployment-config-name CodeDeployDefault.OneAtATime --deployment-group-name SimpleDemoDG --s3-location bucket=bucket-name,bundleType=zip,key=samples/latest/SampleApp_Linux.zip
   ```

   *bucket-name*est le nom du compartiment Amazon S3 qui contient les fichiers du kit de CodeDeploy ressources pour votre région. Par exemple, pour la région USA Est (Ohio), remplacez *bucket-name* par`aws-codedeploy-us-east-2`. Pour obtenir la liste des noms de compartiments, consultez[Noms des compartiments du kit de ressources par région](resource-kit.md#resource-kit-bucket-names).

   **Pour les instances Amazon EC2 de Windows Server, appels depuis des machines Linux, macOS ou Unix locales**

    

   ```
   aws deploy create-deployment \
     --application-name SimpleDemoApp \
     --deployment-config-name CodeDeployDefault.OneAtATime \
     --deployment-group-name SimpleDemoDG \
     --s3-location bucket=bucket-name,bundleType=zip,key=samples/latest/SampleApp_Windows.zip
   ```

   *bucket-name*est le nom du compartiment Amazon S3 qui contient les fichiers du kit de CodeDeploy ressources pour votre région. Par exemple, pour la région USA Est (Ohio), remplacez *bucket-name* par`aws-codedeploy-us-east-2`. Pour obtenir la liste des noms de compartiments, consultez[Noms des compartiments du kit de ressources par région](resource-kit.md#resource-kit-bucket-names).

   **Pour les instances Amazon EC2 de Windows Server, appel depuis des machines Windows locales**

   ```
   aws deploy create-deployment --application-name SimpleDemoApp --deployment-config-name CodeDeployDefault.OneAtATime --deployment-group-name SimpleDemoDG --s3-location bucket=bucket-name,bundleType=zip,key=samples/latest/SampleApp_Windows.zip
   ```

   *bucket-name*est le nom du compartiment Amazon S3 qui contient les fichiers du kit de CodeDeploy ressources pour votre région. Par exemple, pour la région USA Est (Ohio), remplacez *bucket-name* par`aws-codedeploy-us-east-2`. Pour obtenir la liste des noms de compartiments, consultez[Noms des compartiments du kit de ressources par région](resource-kit.md#resource-kit-bucket-names).
**Note**  
Actuellement, CodeDeploy ne fournit pas d'exemple de révision à déployer sur les instances Amazon EC2 du serveur Ubuntu. Pour créer une révision par vous-même, consultez [Travailler avec les révisions d'applications pour CodeDeploy](application-revisions.md).

1. Appelez la commande **get-deployment** pour vous assurer que le déploiement a réussi.

   Avant d'appeler cette commande, vous avez besoin de l'ID du déploiement, qui doit avoir été renvoyé par l'appel à la commande **create-deployment**. Si vous avez besoin d'obtenir l'ID de déploiement à nouveau, appelez la commande **list-deployments** sur l'application nommée **SimpleDemoApp** et le groupe de déploiement nommé **SimpleDemoDG** :

   ```
   aws deploy list-deployments --application-name SimpleDemoApp --deployment-group-name SimpleDemoDG --query "deployments" --output text
   ```

   Maintenant, appelez la commande **get-deployment**, en utilisant l'ID du déploiement :

   ```
   aws deploy get-deployment --deployment-id deployment-id --query "deploymentInfo.status" --output text
   ```

   Ne continuez pas tant que la valeur `Succeeded` n'est pas retournée.

## Pour créer le déploiement (console)
<a name="tutorials-auto-scaling-group-create-deployment-console"></a>

1. Vous devriez avoir déjà créé un rôle de service en suivant les instructions de la rubrique [Étape 2 : créer un rôle de service pour CodeDeploy](getting-started-create-service-role.md). Le rôle de service donnera CodeDeploy l'autorisation d'accéder à vos instances pour développer (lire) leurs balises. Avant d'utiliser la CodeDeploy console pour déployer la révision de votre application, vous aurez besoin de l'ARN du rôle de service. Afin d'obtenir le nom ARN du rôle de service, suivez les instructions de la rubrique [Obtenir l'ARN du rôle de service (console)](getting-started-create-service-role.md#getting-started-get-service-role-console). 

1. Maintenant que vous disposez de l'ARN du rôle de service, vous pouvez utiliser la CodeDeploy console pour déployer la révision de votre application.

   Connectez-vous à la CodeDeploy console AWS Management Console et ouvrez-la à l'adresse [https://console.aws.amazon.com/codedeploy.](https://console.aws.amazon.com/codedeploy)
**Note**  
Connectez-vous avec le même utilisateur que celui que vous avez configuré[Commencer avec CodeDeploy](getting-started-codedeploy.md).

1. Dans le volet de navigation, développez **Deploy**, puis choisissez **Applications**.

1. Choisissez **Créer une application**.

1. Choisissez **Application personnalisée**.

1. Dans **Nom de l'application**, saisissez **SimpleDemoApp**.

1. Dans **Plateforme de calcul**, choisissez **EC2/Solutions sur site**.

1. Choisissez **Créer une application**.

1. Dans l'onglet **Groupes de déploiement**, choisissez **Créer un groupe de déploiement**.

1. Dans **Nom du groupe de déploiement**, saisissez **SimpleDemoDG**.

1. Dans **Rôle de service**, choisissez le nom du rôle de service .

1. Dans **Type de déploiement**, choisissez **Sur place**.

1. Dans **Configuration de l'environnement**, sélectionnez **les groupes Auto Scaling**, puis choisissez**CodeDeployDemo-AS-Group**.

1. Dans **Configuration du déploiement**, choisissez **CodeDeployDefault. OneAtATime**.

1. Désactivez **Activer l'équilibrage de charge**.

1. Choisissez **Créer un groupe de déploiement**. 

1. Sur la page du groupe de déploiement, choisissez **Créer un déploiement**.

1. Dans **Type de révision**, choisissez **Mon application est stockée dans Amazon S3**. 

1. Dans **Emplacement de la révision**, entrez l'emplacement de l'exemple d'application pour votre système d'exploitation et votre région.

   **Pour les instances Amazon Linux et RHEL Amazon EC2**  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/codedeploy/latest/userguide/tutorials-auto-scaling-group-create-deployment.html)

   **Pour les instances Amazon EC2 de Windows Server**  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/codedeploy/latest/userguide/tutorials-auto-scaling-group-create-deployment.html)

    **Pour les instances Amazon EC2 du serveur Ubuntu**

   Entrez l'emplacement de la révision personnalisée de votre application stockée dans Amazon S3.

1. Laissez **Description du déploiement** vide.

1. Développez **Avancé**.

1. Choisissez **Créer un déploiement**. 
**Note**  
Si **Échec** s'affiche au lieu de **Réussi**, vous voudrez peut-être essayer certaines techniques de la rubrique [Surveillez et résolvez les problèmes liés à votre déploiement](tutorials-wordpress-deploy-application.md#tutorials-wordpress-deploy-application-monitor) (en utilisant le nom d'application **SimpleDemoApp** et le nom de groupe de déploiement **SimpleDemoDG**).

# Étape 3 : Vérifiez vos résultats
<a name="tutorials-auto-scaling-group-verify"></a>

Au cours de cette étape, vous allez vérifier que la **SimpleDemoApp** révision a CodeDeploy été installée sur l'unique instance Amazon EC2 du groupe Auto Scaling.

**Topics**
+ [Pour vérifier les résultats (interface CLI)](#tutorials-auto-scaling-group-verify-cli)
+ [Pour vérifier les résultats (console)](#tutorials-auto-scaling-group-verify-console)

## Pour vérifier les résultats (interface CLI)
<a name="tutorials-auto-scaling-group-verify-cli"></a>

Tout d'abord, vous aurez besoin du DNS public de l'instance Amazon EC2.

Utilisez le AWS CLI pour obtenir le DNS public de l'instance Amazon EC2 dans le groupe Auto Scaling en appelant la **describe-instances** commande. 

Avant d'appeler cette commande, vous aurez besoin de l'ID de l'instance Amazon EC2. Pour obtenir l'ID, appelez la **describe-auto-scaling-groups** sur **CodeDeployDemo-AS-Group** comme précédemment :

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

Maintenant, appelez la commande **describe-instances** :

```
aws ec2 describe-instances --instance-id instance-id --query "Reservations[0].Instances[0].PublicDnsName" --output text
```

La valeur renvoyée est le DNS public de l'instance Amazon EC2.

À l'aide d'un navigateur Web, affichez la SimpleDemoApp révision déployée sur cette instance Amazon EC2, à l'aide d'une URL comme celle-ci :

```
http://ec2-01-234-567-890.compute-1.amazonaws.com
```

Si vous voyez la page de félicitations, cela signifie que vous avez réussi CodeDeploy à déployer une révision sur une seule instance Amazon EC2 dans un groupe Auto Scaling \$1

Vous allez ensuite ajouter une instance Amazon EC2 au groupe Auto Scaling. Une fois qu'Amazon EC2 Auto Scaling aura ajouté l' CodeDeploy instance Amazon EC2, votre révision sera déployée sur la nouvelle instance.

## Pour vérifier les résultats (console)
<a name="tutorials-auto-scaling-group-verify-console"></a>

Tout d'abord, vous aurez besoin du DNS public de l'instance Amazon EC2.

Ouvrez la console Amazon EC2 à l’adresse [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

Dans le volet de navigation Amazon EC2, sous **Auto Scaling**, choisissez **Auto Scaling Groups**, puis choisissez l'**CodeDeployDemo-AS-Group**entrée.

**Dans l'onglet Instances**, choisissez l'ID d'instance Amazon EC2 dans la liste.

Sur la page **Instances**, dans l'onglet **Description**, notez la valeur **DNS public**. Elle doit se présenter comme suit : **ec2-01-234-567-890.compute-1.amazonaws.com**

À l'aide d'un navigateur Web, affichez la SimpleDemoApp révision déployée sur cette instance Amazon EC2, à l'aide d'une URL comme celle-ci :

```
http://ec2-01-234-567-890.compute-1.amazonaws.com
```

Si vous voyez la page de félicitations, cela signifie que vous avez réussi CodeDeploy à déployer une révision sur une seule instance Amazon EC2 dans un groupe Auto Scaling \$1

Ensuite, vous ajoutez une instance Amazon EC2 au groupe Auto Scaling. Une fois qu'Amazon EC2 Auto Scaling aura ajouté l' CodeDeploy instance Amazon EC2, votre révision sera déployée sur la nouvelle instance Amazon EC2.

# Étape 4 : augmenter le nombre d'instances Amazon EC2 dans le groupe Auto Scaling
<a name="tutorials-auto-scaling-group-scale-up"></a>

Au cours de cette étape, vous demandez au groupe Auto Scaling de créer une instance Amazon EC2 supplémentaire. Une fois qu'Amazon EC2 Auto Scaling a créé l'instance CodeDeploy , y déploie votre révision.

**Topics**
+ [Pour augmenter le nombre d'instances Amazon EC2 dans le groupe Auto Scaling (CLI)](#tutorials-auto-scaling-group-scale-up-cli)
+ [Pour augmenter le nombre d'instances Amazon EC2 dans le groupe de déploiement (console)](#tutorials-auto-scaling-group-scale-up-console)

## Pour augmenter le nombre d'instances Amazon EC2 dans le groupe Auto Scaling (CLI)
<a name="tutorials-auto-scaling-group-scale-up-cli"></a>

1. Appelez la **update-auto-scaling-group** commande pour augmenter le nombre d'instances Amazon EC2 dans le groupe Auto Scaling nommé **CodeDeployDemo-AS-Group** de un à deux.

   Sur les machines Linux, macOS ou Unix locales :

   ```
   aws autoscaling update-auto-scaling-group \
     --auto-scaling-group-name CodeDeployDemo-AS-Group \
     --min-size 2 \
     --max-size 2 \
     --desired-capacity 2
   ```

   Sur les machines Windows locales :

   ```
   aws autoscaling update-auto-scaling-group --auto-scaling-group-name CodeDeployDemo-AS-Group --min-size 2 --max-size 2 --desired-capacity 2
   ```

1. Assurez-vous que le groupe Auto Scaling dispose désormais de deux instances Amazon EC2. 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 deux valeurs retournées n'affichent pas `Healthy` et `InService`.

## Pour augmenter le nombre d'instances Amazon EC2 dans le groupe de déploiement (console)
<a name="tutorials-auto-scaling-group-scale-up-console"></a>

1. Dans la barre de navigation d'Amazon EC2, sous **Auto Scaling**, choisissez **Auto Scaling Groups**, puis choisissez. **CodeDeployDemo-AS-Group**

1. Sélectionnez **Actions**, puis **Edit** (Modifier).

1. Dans l'onglet **Détails**, dans les zones **Souhaitée**, **Min** et **Max**, tapez **2**, puis choisissez **Enregistrer**.

1. Choisissez l'onglet **Instances**. La nouvelle instance Amazon EC2 doit apparaître dans la liste. (Si l'instance n'apparaît pas, vous pouvez être amené à choisir le bouton **Actualiser** plusieurs fois.) Ne poursuivez pas tant que la valeur de n'**InService**apparaît pas dans la colonne **Lifecycle** et que la valeur de **Healthy** n'apparaît pas dans la colonne **Health Status**.

# Étape 5 : Vérifiez à nouveau vos résultats
<a name="tutorials-auto-scaling-group-reverify"></a>

Au cours de cette étape, vous allez vérifier si la SimpleDemoApp révision a CodeDeploy été installée sur la nouvelle instance du groupe Auto Scaling.

**Topics**
+ [Pour vérifier les résultats de déploiement automatique (interface CLI)](#tutorials-auto-scaling-group-reverify-cli)
+ [Pour vérifier les résultats de déploiement automatique (console)](#tutorials-auto-scaling-group-reverify-console)

## Pour vérifier les résultats de déploiement automatique (interface CLI)
<a name="tutorials-auto-scaling-group-reverify-cli"></a>

1. Avant d'appeler la commande **get-deployment**, vous avez besoin de l'ID du déploiement automatique. Pour obtenir l'ID, appelez la commande **list-deployments** sur le l'application nommée **SimpleDemoApp** et le groupe de déploiement nommé **SimpleDemoDG** :

   ```
   aws deploy list-deployments --application-name SimpleDemoApp --deployment-group-name SimpleDemoDG --query "deployments" --output text
   ```

   Il devrait y avoir deux déploiements IDs. Utilisez celui que vous n'avez pas encore utilisé dans un appel à la commande **get-deployment** :

   ```
   aws deploy get-deployment --deployment-id deployment-id --query "deploymentInfo.[status, creator]" --output text
   ```

   Outre l'état du déploiement, vous devriez le voir `autoScaling` dans le résultat de la commande. (`autoScaling`signifie qu'Amazon EC2 Auto Scaling a créé le déploiement.) 

   Ne continuez pas tant que l'état du déploiement n'affiche pas `Succeeded`.

1. Avant d'appeler la **describe-instances** commande, vous aurez besoin de l'ID de la nouvelle instance Amazon EC2. Pour obtenir cet ID, effectuez un autre appel de 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[*].InstanceId" --output text
   ```

   Maintenant, appelez la commande **describe-instances** :

   ```
   aws ec2 describe-instances --instance-id instance-id --query "Reservations[0].Instances[0].PublicDnsName" --output text
   ```

   Dans le résultat de la **describe-instances** commande, notez le DNS public de la nouvelle instance Amazon EC2.

1. À l'aide d'un navigateur Web, affichez la `SimpleDemoApp` révision déployée sur cette instance Amazon EC2, à l'aide d'une URL comme celle-ci :

   ```
   http://ec2-01-234-567-890.compute-1.amazonaws.com
   ```

   Si la page de félicitations apparaît, cela signifie que vous avez CodeDeploy l'habitude de déployer une révision d'une instance Amazon EC2 agrandie dans un groupe Auto Scaling \$1

## Pour vérifier les résultats de déploiement automatique (console)
<a name="tutorials-auto-scaling-group-reverify-console"></a>

1. Connectez-vous à la CodeDeploy console AWS Management Console et ouvrez-la à l'adresse [https://console.aws.amazon.com/codedeploy.](https://console.aws.amazon.com/codedeploy)
**Note**  
Connectez-vous avec le même utilisateur que celui que vous avez configuré[Commencer avec CodeDeploy](getting-started-codedeploy.md).

1. Dans le volet de navigation, développez **Deploy**, puis choisissez **Deployments.**

   

1. Choisissez l'ID de déploiement du déploiement créé par Amazon EC2 Auto Scaling.

   .

1.  La page **Déploiement** affiche les informations sur le déploiement. Normalement, vous devez créer un déploiement vous-même, mais Amazon EC2 Auto Scaling en a créé un en votre nom pour déployer votre révision sur la nouvelle instance Amazon EC2.

1. Une fois que la mention **Réussi** est affichée en haut de la page, vérifiez les résultats sur l'instance. Tout d'abord, vous devez obtenir le DNS public de l'instance :

1. Dans le volet de navigation Amazon EC2, sous **Auto Scaling**, choisissez **Auto Scaling Groups**, puis choisissez l'**CodeDeployDemo-AS-Group**entrée.

1. **Dans l'onglet Instances**, choisissez l'ID de la nouvelle instance Amazon EC2.

1. Sur la page **Instances**, dans l'onglet **Description**, notez la valeur **DNS public**. Elle doit se présenter comme suit : **ec2-01-234-567-890.compute-1.amazonaws.com**

Affichez la révision `SimpleDemoApp` déployée sur l'instance à l'aide d'une URL similaire à la suivante :

```
http://ec2-01-234-567-890.compute-1.amazonaws.com
```

Si la page de félicitations apparaît, cela signifie que vous avez CodeDeploy l'habitude de déployer une révision d'une instance Amazon EC2 agrandie dans un groupe Auto Scaling \$1

# Étape 6 : Nettoyer
<a name="tutorials-auto-scaling-group-clean-up"></a>

Au cours de cette étape, vous allez supprimer le groupe Auto Scaling afin d'éviter des frais permanents pour les ressources que vous avez utilisées au cours de ce didacticiel. Vous pouvez éventuellement supprimer les enregistrements des composants de configuration et de CodeDeploy déploiement d'Auto Scaling.

**Topics**
+ [Pour nettoyer les ressources (interface CLI)](#tutorials-auto-scaling-group-clean-up-cli)
+ [Pour nettoyer les ressources (console)](#tutorials-auto-scaling-group-clean-up-console)

## Pour nettoyer les ressources (interface CLI)
<a name="tutorials-auto-scaling-group-clean-up-cli"></a>

1. Supprimez le groupe Auto Scaling en appelant la **delete-auto-scaling-group** commande against**CodeDeployDemo-AS-Group**. Cela va également résilier les instances Amazon EC2. 

   ```
   aws autoscaling delete-auto-scaling-group --auto-scaling-group-name CodeDeployDemo-AS-Group --force-delete
   ```

1. Supprimez éventuellement le modèle de lancement Auto Scaling en appelant la **delete-launch-template** commande correspondant à la configuration de lancement nommée **CodeDeployDemo-AS-Launch-Template** :

   ```
   aws ec2 delete-launch-template --launch-template-name CodeDeployDemo-AS-Launch-Template
   ```

1. Vous pouvez éventuellement supprimer l'application CodeDeploy en appelant la **delete-application** commande correspondant à l'application nommée**SimpleDemoApp**. Cela supprime également tous les enregistrements de révision, de groupe de déploiement et de déploiement associés. 

   ```
   aws deploy delete-application --application-name SimpleDemoApp
   ```

1. Pour supprimer l'association Systems Manager State Manager, appelez la **delete-association** commande.

   ```
   aws ssm delete-association --assocation-id association-id
   ```

   Vous pouvez l'obtenir *association-id* en appelant la **describe-association** commande.

   ```
   aws ssm describe-association --name AWS-ConfigureAWSPackage --targets Key=tag:Name,Values=CodeDeployDemo
   ```

## Pour nettoyer les ressources (console)
<a name="tutorials-auto-scaling-group-clean-up-console"></a>

Pour supprimer le groupe Auto Scaling, qui met également fin aux instances Amazon EC2 :

1. 

   Connectez-vous à la console Amazon EC2 AWS Management Console et ouvrez-la à l'adresse. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Dans le volet de navigation Amazon EC2, sous **Auto Scaling**, choisissez **Auto Scaling Groups**, puis choisissez l'**CodeDeployDemo-AS-Group**entrée.

1. Choisissez **Actions**, **Supprimer**, puis **Oui, supprimer**.

(Facultatif) Pour supprimer le modèle de lancement :

1.  Dans la barre de navigation, sous **Auto Scaling**, choisissez **Launch Configurations**, puis choisissez**CodeDeployDemo-AS-Launch-Template**.

1. Choisissez **Actions**, **Supprimer la configuration de lancement**, puis **Oui, supprimer**.

1. Vous pouvez éventuellement supprimer l'application de CodeDeploy. Cela supprime également tous les enregistrements de révision, de groupe de déploiement et de déploiement associés. Ouvrez la CodeDeploy console à l'adresse [https://console.aws.amazon.com/codedeploy.](https://console.aws.amazon.com/codedeploy)

1. Connectez-vous à la CodeDeploy console AWS Management Console et ouvrez-la à l'adresse [https://console.aws.amazon.com/codedeploy.](https://console.aws.amazon.com/codedeploy)
**Note**  
Connectez-vous avec le même utilisateur que celui que vous avez configuré[Commencer avec CodeDeploy](getting-started-codedeploy.md).

   Dans le volet de navigation, développez **Deploy**, puis choisissez **Applications**.

   

1. Dans la liste des applications, choisissez **SimpleDemoApp**.

1. Sur la page **Détails de l'application**, choisissez **Supprimer l'application**.

1. Lorsque vous y êtes invité, tapez **Delete**, puis choisissez **Supprimer**. 

Pour supprimer l'association Systems Manager State Manager, procédez comme suit :

1. Ouvrez la AWS Systems Manager console dans https://console.aws.amazon.com /systems-manager.

1. Dans le volet de navigation, sélectionnez **State Manager**.

1. Sélectionnez l'association que vous avez créée et choisissez **Delete (Supprimer)**.