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
-
Dans le volet de navigation, choisissez Instances, puis Lancer une instance.
-
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.
-
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.
-
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éer un profil d'IAMinstance pour vos EC2 instances Amazon 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.
-
Choisissez Next: Add Storage (Suivant : Ajouter le stockage).
-
Laissez la page Step 4: Add Storage inchangée, puis choisissez Next: Add Tags.
-
Sur la page Step 5: Add Tags (Étape 5 : Ajouter des balises), choisissez Add Tag (Ajouter une balise).
-
Dans la zone Clé, tapez
Name
. Dans la zone Value, tapezCodeDeployDemo
.Important
Le contenu des zones Clé et Valeur est sensible à la casse.
-
Choisissez Suivant : Configurer le groupe de sécurité.
-
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.
-
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.
-
Laissez la page Étape 7 : Examiner le lancement de l'instance inchangée et choisissez Lancement.
-
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.
-
Choisissez Launch Instances (Démarrer les instances).
-
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
-
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.
-
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 :
-
L'ID d'une Amazon Machine Image (AMI) (
ami-id
) que vous allez utiliser pour l'instance. Pour obtenir l'ID, voir Trouver une AMI appropriée. -
Le nom du type d'instance Amazon EC2 (
type
d'instance) que vous créez, tel que.t1.micro
Pour obtenir une liste, consultez la section Types d'instances Amazon EC2. -
Le nom d'un profil d'instance IAM autorisé à accéder au compartiment Amazon S3 dans lequel sont stockés les fichiers d'installation de l' CodeDeploy agent pour votre région.
Pour plus d'informations sur la création d'un profil d'instance IAM, consultezÉtape 4 : créer un profil d'IAMinstance pour vos EC2 instances Amazon.
-
Le nom d'une paire de clés d'instance Amazon EC2 (
nom-clé
) permettant l'accès SSH à une instance Amazon EC2 exécutant Amazon Linux, Ubuntu Server ou l'accès RHEL ou RDP à une instance Amazon EC2 exécutant Windows Server.Important
Tapez le nom de la paire de clés uniquement, pas l'extension de fichier de la paire de clés. Par exemple, my-keypair, et non my-keypair.pem.
Pour trouver le nom d'une paire de clés, ouvrez la console Amazon EC2 à l'adresse https://console.aws.amazon.com/ec2.
Dans le volet de navigation, sous Réseau et sécurité, choisissez Paires de clés et notez le nom de la paire de clés dans la liste. Pour générer une paire de clés, consultez Création de votre paire de clés à l'aide d'Amazon EC2. Assurez-vous de créer la paire de clés dans l'une des régions répertoriées dans Région et les points de terminaison dans Références générales AWS. Sinon, vous ne pourrez pas utiliser la paire de clés de l'instance Amazon EC2 avec. CodeDeploy
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éer un profil d'IAMinstance pour vos EC2 instances Amazon Par exemple :
aws ec2 run-instances \ --image-id
ami-id
\ --key-namekey-name
\ --count 1 \ --instance-typeinstance-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éer un profil d'IAMinstance pour vos EC2 instances Amazon Par exemple :
aws ec2 run-instances --image-id
ami-id
--key-namekey-name
--count 1 --instance-typeinstance-type
--iam-instance-profile Name=iam-instance-profile
--security-groups CodeDeploy-Windows-Security-GroupCes 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.
-
-
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 textUtilisez 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ée
CodeDeployDemo
, 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=CodeDeployDemoVous 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=BetaPour 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.