Comment puis-je utiliser des configurations de lancement pour installer automatiquement l'agent AWS CodeDeploy sur une instance Amazon EC2 Windows ?

Date de la dernière mise à jour : 02/08/2019

Je souhaite installer l'agent AWS CodeDeploy sur mon instance Amazon Elastic Compute Cloud (Amazon EC2) Windows. Comment y parvenir à l'aide de configurations de lancement ?

Brève description

Vous pouvez effectuer l'une des actions suivantes :

  • Utilisez une configuration de lancement pour transmettre les commandes Windows PowerShell à une instance à l'aide de données utilisateur.
  • Lancez des instances à partir d'une Amazon Machine Image (AMI) personnalisée sur laquelle CodeDeploy est installé.

Résolution

Utiliser les commandes Windows PowerShell pour spécifier les détails de configuration du lancement

Remarque : Les étapes suivantes utilisent des configurations de lancement Amazon EC2 Auto Scaling pour installer l'agent CodeDeploy et le programme de mise à jour de l'agent, mais vous pouvez également appliquer ces instructions à des instances individuelles.

1.    Ouvrez la console Amazon EC2.

2.    Dans le volet de navigation, sous la section AUTOSCALING, sélectionnez Configurations de lancement.

3.    Sélectionnez Créer une configuration de lancement.

4.    Sélectionnez une AMI Microsoft Windows prise en charge par l'agent CodeDeploy.

5.    Sélectionnez un type d'instance, puis Next: Configure Instance Details (Suivant : Configurer les détails de l'instance).

Remarque : utilisez une instance de taille t2.medium ou supérieure lors de l'exécution de Windows Server.

6.    Dans le champ Nom, saisissez un nom pour la configuration de lancement.

7.    Sous rôle IAM, sélectionnez un rôle AWS Identity and Access Management (IAM) compatible avec les autorisations CodeDeploy.

8.    Sélectionnez Détails avancés.

9.    Sous Données utilisateur, saisissez les commandes Windows PowerShell suivantes :

<powershell>
Set-ExecutionPolicy RemoteSigned -Force
Import-Module AWSPowerShell
$REGION = (ConvertFrom-Json (Invoke-WebRequest -Uri http://169.254.169.254/latest/dynamic/instance-identity/document -UseBasicParsing).Content).region
New-Item -Path c:\temp -ItemType "directory" -Force
powershell.exe -Command Read-S3Object -BucketName aws-codedeploy-$REGION -Key latest/codedeploy-agent-updater.msi -File c:\temp\codedeploy-agent-updater.msi
// Start-Sleep -Seconds 30 *optional
c:\temp\codedeploy-agent-updater.msi /quiet /l c:\temp\host-agent-updater-log.txt
</powershell>

Remarque : L'exécution de ces commandes Windows PowerShell installe le programme de mise à jour de l'agent CodeDeploy. Il est recommandé d'installer le programme de mise à jour de l'agent CodeDeploy pour Windows Server à la fois sur les instances nouvelles et sur celles existantes.

10.    Suivez la procédure de stockage et de groupe de sécurité pour votre configuration de lancement ou cliquez sur Ignorer pour vérification.

11.    Sélectionnez Créer une configuration de lancement.

Lancer des instances à partir d'une AMI personnalisée sur laquelle CodeDeploy est installé

Avertissement : Veillez à effectuer ces étapes dans l'ordre indiqué. Si vous ne configurez pas votre instance correctement avant de créer l'AMI, votre déploiement échouera.

1.    Vérifiez que l'agent CodeDeploy est installé sur votre instance Amazon EC2 exécutant Windows.

2.    Connectez-vous à votre instance Windows.

3.    Pour configurer l'agent AWS CodeDeploy sur l'état arrêté et passer en mode de démarrage manuel, exécutez la commande suivante :

Set-Service -Name 'codedeployagent' -StartupType 'manual' -Status 'stopped'

4.    Pour démarrer l'agent AWS CodeDeploy et passer en type de démarrage automatique, exécutez la commande suivante dans les données utilisateur de l'instance :

Avertissement : la commande suivante doit être la dernière commande exécutée dans les données utilisateur de l'instance.

Set-Service -Name 'codedeployagent' -StartupType 'automatic' -Status 'running'

5.    Créez une AMI personnalisée à partir de votre instance.

L'agent CodeDeploy sera déjà installé sur toutes les instances que vous lancez à l'aide de cette AMI personnalisée.


Cette page vous a-t-elle été utile ?

Cette page peut-elle être améliorée ?


Vous avez besoin d'aide ?