Créez une instance Amazon EC2 pour CodeDeploy (AWS CLI ou une console Amazon EC2) - 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.

Créez une instance Amazon EC2 pour CodeDeploy (AWS CLI ou une console Amazon EC2)

Ces instructions vous montrent comment lancer une nouvelle instance Amazon EC2 configurée pour être utilisée dans CodeDeploy des déploiements.

Vous pouvez utiliser notre AWS CloudFormation modèle pour lancer une instance Amazon EC2 exécutant Amazon Linux ou Windows Server qui est déjà configurée pour être utilisée dans CodeDeploy des déploiements. Nous ne fournissons pas de AWS CloudFormation modèle pour les instances Amazon EC2 exécutant Ubuntu Server ou Red Hat Enterprise Linux (RHEL). Pour découvrir des alternatives à l'utilisation du modèle, consultez la page Utilisation d'instances pour CodeDeploy.

Vous pouvez utiliser la console Amazon EC2 ou les AWS CLI API Amazon EC2 pour lancer une instance Amazon EC2.

Lancer une instance Amazon EC2 (console)

Prérequis

Si ce n'est pas déjà fait, suivez les instructions fournies Commencer avec CodeDeploy pour configurer AWS CLI et créer un profil d'instance IAM.

Lancement d’une instance Amazon EC2

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

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

  3. Sur la page Étape 1 : Sélection d'une Amazon Machine Image (AMI), à partir de l'onglet Quick Start, recherchez le système d'exploitation et la version que vous souhaitez utiliser, puis choisissez Sélectionner. Vous devez choisir un système d'exploitation AMI Amazon EC2 pris en charge par. CodeDeploy Pour plus d’informations, consultez Systèmes d'exploitation pris en charge par l' CodeDeploy agent.

  4. Sur la page Étape 2 : Choisissez un type d'instance, choisissez n'importe quel type d'instance Amazon EC2 disponible, puis choisissez Suivant : Configurer les détails de l'instance.

  5. Sur la page Étape 3 : Configuration des détails de l'instance, dans la liste des rôles IAM, choisissez le rôle d'instance IAM que vous avez créé dans. Étape 4 : Création d'un profil d'instance IAM pour vos instances Amazon EC2 Si vous avez utilisé le nom de rôle suggéré, choisissez CodeDeployDemo-EC2-Instance-Profile. Si vous avez créé votre propre nom de rôle, choisissez-le.

    Note

    Si un cloud privé virtuel (VPC) par défaut ne figure pas dans la liste des réseaux, vous devez choisir ou créer un VPC et un sous-réseau Amazon. Choisissez Create new VPC (Créer un VPC) ou Create new subnet (Créer un sous-réseau), ou les deux. Pour plus d'informations, consultez Votre VPC et vos sous-réseaux.

  6. Choisissez Next: Add Storage (Suivant : Ajouter le stockage).

  7. Laissez la page Step 4: Add Storage inchangée, puis choisissez Next: Add Tags.

  8. Sur la page Step 5: Add Tags (Étape 5 : Ajouter des balises), choisissez Add Tag (Ajouter une balise).

  9. Dans la zone Clé, tapez Name. Dans la zone Value, tapez CodeDeployDemo.

    Important

    Le contenu des zones Clé et Valeur est sensible à la casse.

  10. Choisissez Suivant : Configurer le groupe de sécurité.

  11. Sur la page Étape 6 : Configurer le groupe de sécurité, laissez l'option Créez un nouveau groupe de sécurité sélectionnée.

    Un rôle SSH par défaut est configuré pour les instances Amazon EC2 exécutant Amazon Linux, Ubuntu Server ou RHEL. Un rôle RDP par défaut est configuré pour les instances Amazon EC2 exécutant Windows Server.

  12. Si vous souhaitez ouvrir le port HTTP, choisissez le bouton Ajouter une règle et, dans la liste déroulante Type, choisissez HTTP. Acceptez la valeur Source par défaut de Custom 0.0.0.0/0, puis choisissez Review and Launch.

    Note

    Dans un environnement de production, nous recommandons de restreindre l'accès aux ports SSH, RDP et HTTP au lieu de spécifier Anywhere 0.0.0.0/0. CodeDeploy ne nécessite pas d'accès illimité aux ports et ne nécessite pas d'accès HTTP. Pour plus d'informations, consultez la section Conseils pour sécuriser votre instance Amazon EC2.

    Si une boîte de dialogue Démarrage depuis General Purpose (SSD) apparaît, suivez les instructions, puis choisissez Suivant.

  13. Laissez la page Étape 7 : Examiner le lancement de l'instance inchangée et choisissez Lancement.

  14. Dans la boîte de dialogue Sélectionnez une paire de clés (key pair) existante ou créez une nouvelle paire de clés (key pair), choisissez Choisir une paire de clés (key pair) existante ou Créer une nouvelle paire de clés (key pair). 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 pour télécharger la paire de clés d'instance Amazon EC2 sur votre ordinateur.

    Important

    Vous devez disposer d'une paire de clés si vous souhaitez accéder à votre instance Amazon EC2 via SSH ou RDP.

  15. Choisissez Launch Instances (Démarrer les instances).

  16. Choisissez l'ID de votre instance Amazon EC2. Ne continuez pas tant que l'instance n'a pas été lancée et n'a pas réussi tous les contrôles.

Installation de l' CodeDeploy agent

L' CodeDeploy agent doit être installé sur votre instance Amazon EC2 avant de l'utiliser dans CodeDeploy des déploiements. Pour plus d’informations, consultez Installation de l' CodeDeploy agent.

Note

Vous pouvez configurer l'installation automatique et les mises à jour de l' CodeDeploy agent lorsque vous créez votre groupe de déploiement dans la console.

Lancer une instance Amazon EC2 (CLI)

Prérequis

Si ce n'est pas déjà fait, suivez les instructions fournies Commencer avec CodeDeploy pour configurer AWS CLI et créer un profil d'instance IAM.

Lancement d’une instance Amazon EC2

  1. Pour Windows Server uniquement Si vous créez une instance Amazon EC2 exécutant Windows Server, appelez les authorize-security-group-ingress commandes create-security-group and pour créer un groupe de sécurité qui autorise l'accès RDP (qui n'est pas autorisé par défaut) et, sinon, l'accès HTTP. Par exemple, pour créer un groupe de sécurité nommé CodeDeployDemo-Windows-Security-Group, exécutez les commandes suivantes, une par une :

    aws ec2 create-security-group --group-name CodeDeployDemo-Windows-Security-Group --description "For launching Windows Server images for use with CodeDeploy"
    aws ec2 authorize-security-group-ingress --group-name CodeDeployDemo-Windows-Security-Group --to-port 3389 --ip-protocol tcp --cidr-ip 0.0.0.0/0 --from-port 3389
    aws ec2 authorize-security-group-ingress --group-name CodeDeployDemo-Windows-Security-Group --to-port 80 --ip-protocol tcp --cidr-ip 0.0.0.0/0 --from-port 80
    Note

    A des fins de démonstration, ces commandes créent un groupe de sécurité qui autorise un accès illimité pour RDP via le port 3389 et pour HTTP, via le port 80. La meilleure pratique consiste à restreindre l'accès aux ports RDP et HTTP. CodeDeploy ne nécessite pas d'accès illimité aux ports et ne nécessite pas d'accès HTTP. Pour plus d'informations, consultez la section Conseils pour sécuriser votre instance Amazon EC2.

  2. Appelez la run-instances commande pour créer et lancer l'instance Amazon EC2.

    Avant d'appeler cette commande, vous devez collecter les éléments suivants :

    Pour Amazon Linux, RHEL et Ubuntu Server

    Pour appeler la run-instances commande pour lancer une instance Amazon EC2 exécutant Amazon Linux, Ubuntu Server ou RHEL et attacher le profil d'instance IAM que vous avez créé dans. Étape 4 : Création d'un profil d'instance IAM pour vos instances Amazon EC2 Par exemple :

    aws ec2 run-instances \ --image-id ami-id \ --key-name key-name \ --count 1 \ --instance-type instance-type \ --iam-instance-profile Name=iam-instance-profile
    Note

    Cette commande crée un groupe de sécurité par défaut pour l'instance Amazon EC2 qui permet d'accéder à plusieurs ports, y compris un accès illimité pour le SSH via le port 22 ou, sinon, pour le protocole HTTP via le port 80. La meilleure pratique consiste à restreindre l'accès aux ports SSH et HTTP uniquement. CodeDeploy ne nécessite pas d'accès illimité au port et ne nécessite pas d'accès au port HTTP. Pour plus d'informations, consultez la section Conseils pour sécuriser votre instance Amazon EC2.

    Pour Windows Server

    Pour appeler la run-instances commande pour lancer une instance Amazon EC2 exécutant Windows Server, joindre le profil d'instance IAM que vous avez créé et spécifier le nom du groupe de sécurité que vous avez créé à l'étape 1. Étape 4 : Création d'un profil d'instance IAM pour vos instances Amazon EC2 Par exemple :

    aws ec2 run-instances --image-id ami-id --key-name key-name --count 1 --instance-type instance-type --iam-instance-profile Name=iam-instance-profile --security-groups CodeDeploy-Windows-Security-Group

    Ces commandes lancent une instance Amazon EC2 unique avec l'AMI, la paire de clés et le type d'instance spécifiés, avec le profil d'instance IAM spécifié, et exécutent le script spécifié lors du lancement.

  3. Notez la valeur de InstanceID dans la sortie. Si vous oubliez cette valeur, vous pouvez l'obtenir ultérieurement en appelant la describe-instances commande sur la paire de clés de l'instance Amazon EC2.

    aws ec2 describe-instances --filters "Name=key-name,Values=keyName" --query "Reservations[*].Instances[*].[InstanceId]" --output text

    Utilisez l'ID d'instance pour appeler la create-tags commande, qui balise l'instance Amazon EC2 afin de CodeDeploy pouvoir la retrouver ultérieurement lors d'un déploiement. Dans l'exemple suivant, la balise est nomméeCodeDeployDemo, mais vous pouvez spécifier n'importe quelle balise d'instance Amazon EC2 de votre choix.

    aws ec2 create-tags --resources instance-id --tags Key=Name,Value=CodeDeployDemo

    Vous pouvez appliquer plusieurs balises simultanément à une instance. Par exemple :

    aws ec2 create-tags --resources instance-id --tags Key=Name,Value=testInstance Key=Region,Value=West Key=Environment,Value=Beta

    Pour vérifier que l'instance Amazon EC2 a été lancée et a passé toutes les vérifications, utilisez l'ID de l'instance pour appeler la describe-instance-status commande.

    aws ec2 describe-instance-status --instance-ids instance-id --query "InstanceStatuses[*].InstanceStatus.[Status]" --output text

Si l'instance a été lancée et a réussi tous les contrôles, ok s'affiche dans la sortie :

Installation de l' CodeDeploy agent

L' CodeDeploy agent doit être installé sur votre instance Amazon EC2 avant de l'utiliser dans CodeDeploy des déploiements. Pour plus d’informations, consultez Installation de l' CodeDeploy agent.

Note

Vous pouvez configurer l'installation automatique et les mises à jour de l' CodeDeploy agent lorsque vous créez votre groupe de déploiement dans la console.