Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Tutoriel : Déployez sur EC2 des instances Amazon avec CodePipeline

Mode de mise au point
Tutoriel : Déployez sur EC2 des instances Amazon avec CodePipeline - AWS CodePipeline

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.

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.

Ce didacticiel vous aide à créer une action de déploiement CodePipeline qui déploie votre code sur les instances que vous avez configurées sur Amazon EC2.

Note

Dans le cadre de la création d'un pipeline dans la console, un compartiment d'artefacts S3 sera utilisé par CodePipeline pour les artefacts. (Ceci est différent du compartiment utilisé pour une action source S3.) Si le compartiment d'artefacts S3 se trouve dans un compte différent de celui de votre pipeline, assurez-vous que le compartiment d'artefacts S3 appartient Comptes AWS à une personne sûre et fiable.

Note

L'action de EC2 déploiement n'est disponible que pour les pipelines de type V2.

Prérequis

Avant de pouvoir créer votre pipeline de déploiement continu à l'aide de ce didacticiel, vous devez avoir mis en place certaines ressources. Voici ce dont vous avez besoin pour commencer :

Note

Toutes ces ressources devraient être créées au sein de la même AWS région.

  • Un référentiel de contrôle de source (utilisé dans ce didacticiel GitHub) dans lequel vous ajouterez un exemple de script.sh fichier.

  • Vous devez utiliser un rôle de CodePipeline service existant qui a été mis à jour avec les autorisations nécessaires pour cette action. Pour mettre à jour votre rôle de service, consultezPolitique des rôles de service et autorisations pour l'action de EC2 déploiement.

Dès lors que ces prérequis sont respectés, vous pouvez commencer à créer votre pipeline de déploiement continu à l'aide du didacticiel.

Étape 1 : créer des instances Amazon EC2 Linux

Au cours de cette étape, vous créez les EC2 instances Amazon dans lesquelles vous déploierez un exemple d'application. Dans le cadre de ce processus, créez un rôle d'instance dans IAM, si vous n'en avez pas déjà créé un dans la région où vous souhaitez créer des ressources.

Pour créer un rôle d'instance
  1. Ouvrez la console IAM à l'adresse https://console.aws.amazon.com/iam/).

  2. Dans le tableau de bord de la console, choisissez Rôles.

  3. Sélectionnez Créer un rôle.

  4. Sous Sélectionner le type d'entité de confiance, sélectionnez Service AWS. Sous Choisir un cas d'utilisation, sélectionnez EC2. Sous Sélectionnez votre cas d'utilisation, choisissez EC2. Choisissez Suivant : Autorisations.

  5. Recherchez et sélectionnez la politique nommée AWSSystemsManagerDefaultEC2InstanceManagementRoleeployAction.

  6. Recherchez et sélectionnez la politique nommée AmazonSSMManagedInstanceCore. Choisissez Suivant : Balises.

  7. Choisissez Suivant : Vérification. Saisissez un nom pour le rôle (par exemple, EC2InstanceRole).

    Note

    Notez le nom de votre rôle pour l'étape suivante. Vous choisissez ce rôle lorsque vous créez votre instance.

    Note

    Vous allez ajouter des autorisations à ce rôle afin de permettre l'accès au compartiment d'artefacts S3 pour votre pipeline après la création du pipeline.

    Sélectionnez Créer un rôle.

Pour lancer des instances
  1. Ouvrez la EC2 console Amazon à l'adresse https://console.aws.amazon.com/ec2/.

  2. Dans la navigation latérale, choisissez Instances, puis sélectionnez Launch instances en haut de la page.

  3. Pour Name (Nom), entrez MyInstances. Cela affecte à l'instance une balise Key of Name et une balise Value deMyInstances.

  4. Sous Images de l'application et du système d'exploitation (Amazon Machine Image), recherchez l'option AMI Amazon Linux avec le AWS logo et assurez-vous qu'elle est sélectionnée. (Cette AMI est décrite comme l'AMI Amazon Linux 2 (HVM) et est étiquetée « éligible au niveau gratuit ».)

  5. Sous Type d'instance, choisissez le t2.micro type éligible au niveau gratuit comme configuration matérielle de votre instance.

  6. Sous Paire de clés (connexion), choisissez une paire de clés ou créez-en une.

  7. Sous Paramètres réseau, assurez-vous que le statut est Activé.

  8. Développez Advanced Details (Détails avancés). Dans le profil d'instance IAM, choisissez le rôle IAM que vous avez créé lors de la procédure précédente (par exemple,EC2InstanceRole).

    Note

    Ne laissez pas le rôle d'instance vide car cela crée un rôle par défaut et ne sélectionne pas le rôle que vous avez créé.

  9. Sous Résumé, sous Nombre d'instances, entrez2.

  10. Choisissez Launch instance (Lancer une instance).

  11. Sur la page Instances, vous pouvez afficher le statut du lancement. Lorsque vous lancez une instance, son état initial est pending. Une fois que l'instance a démarré, son état devient running et elle reçoit un nom DNS public. (Si la colonne DNS public ne s'affiche pas, choisissez l'icône Afficher/Masquer, puis sélectionnez DNS public.)

Étape 2 : ajouter des autorisations de bucket d'artefacts au rôle d' EC2 instance

Vous devez mettre à jour le rôle d' EC2 instance que vous avez créé pour votre instance afin de lui permettre d'accéder au bucket d'artefacts de votre pipeline.

Note

Lorsque vous créez l'instance, vous créez ou utilisez un rôle d' EC2 instance existant. Pour éviter les Access Denied erreurs, vous devez ajouter des autorisations de compartiment S3 au rôle d'instance afin de donner à l'instance des autorisations d'accès au compartiment d' CodePipeline artefacts. Créez un rôle par défaut ou mettez à jour votre rôle existant avec l's3:GetObjectautorisation limitée au compartiment d'artefacts correspondant à la région de votre pipeline.

  1. Accédez à votre pipeline dans la CodePipeline console. Sélectionnez Paramètres. Affichez le nom et l'emplacement du magasin d'artefacts d'un pipeline existant. Notez le nom de ressource Amazon (ARN) du compartiment d'artefacts et copiez-le.

  2. Accédez à la console IAM, puis choisissez Roles (Rôles). Choisissez le rôle d'instance que vous avez créé à l'étape 1 de ce didacticiel.

  3. Sous l'onglet Autorisations, sélectionnez Ajouter une politique en ligne.

  4. Ajoutez le code JSON suivant au document de politique, en remplaçant la valeur du Resource champ par l'ARN du bucket.

    { "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::BucketName" }
  5. Choisissez Mettre à jour.

Étape 3 : ajouter un fichier de script à votre dépôt

Collez cet exemple de texte pour créer votre script.sh fichier pour l'étape post-script du déploiement.

echo "Hello World!"
Pour ajouter un fichier script.sh à votre référentiel source
  1. Ouvrez un éditeur de texte, puis copiez-collez le fichier ci-dessus dans un nouveau fichier.

  2. Validez votre fichier script.sh et transmettez-le à votre référentiel source.

    1. Ajoutez le fichier.

      git add .
    2. Validez la modification.

      git commit -m "Adding script.sh."
    3. Transmettez la validation.

      git push

    Notez le chemin dans votre dépôt.

    /MyDemoRepo/test/script.sh

Étape 4 : Création de votre pipeline

Utilisez l' CodePipeline assistant pour créer les étapes de votre pipeline et connecter votre référentiel source.

Pour créer le pipeline
  1. Ouvrez la CodePipeline console à l'adresse https://console.aws.amazon.com/codepipeline/.

  2. Sur la page Bienvenue, la page Démarrez ou la page Pipelines, choisissez Créer un pipeline.

  3. Sur la page Étape 1 : Choisir une option de création, sous Options de création, choisissez l'option Créer un pipeline personnalisé. Choisissez Suivant.

  4. À l'étape 2 : Choisissez les paramètres du pipeline, dans Nom du pipeline, entrezMyPipeline.

  5. CodePipeline fournit des pipelines de type V1 et V2, dont les caractéristiques et le prix diffèrent. Le type V2 est le seul type que vous pouvez choisir dans la console. Pour plus d'informations, consultez la section Types de pipelines. Pour plus d'informations sur la tarification CodePipeline, consultez la section Tarification.

  6. Dans Rôle de service, choisissez Utiliser le rôle de service existant, puis choisissez le rôle de CodePipeline service qui a été mis à jour avec les autorisations requises pour cette action. Pour configurer votre rôle CodePipeline de service pour cette action, consultezPolitique des rôles de service et autorisations pour l'action de EC2 déploiement.

  7. Laissez les paramètres sous Advanced settings (Paramètres avancés) à leurs valeurs par défaut, puis choisissez Suivant.

  8. Sur la page Étape 3 : Ajouter un stage source, ajoutez un stage source :

    1. Dans Source provider, sélectionnez GitHub (via GitHub App).

    2. Sous Connexion, choisissez une connexion existante ou créez-en une nouvelle. Pour créer ou gérer une connexion pour votre action GitHub source, consultezGitHub connexions.

    3. Dans Nom du référentiel, choisissez le nom de votre référentiel GitHub .

    Choisissez Suivant.

  9. Sur la page Étape 4 : Ajouter une phase de construction, choisissez Ignorer.

  10. Sur la page Étape 5 : Ajouter une phase de déploiement, sélectionnez EC2.

    Ajoutez une action de EC2 déploiement à votre pipeline.
    1. Pour le répertoire cible, entrez le répertoire de l'instance vers laquelle vous souhaitez effectuer le déploiement, par exemple/home/ec2-user/testhelloworld.

      Note

      Spécifiez le répertoire de déploiement que vous souhaitez que l'action utilise sur l'instance. L'action automatisera la création du répertoire spécifié sur l'instance dans le cadre du déploiement.

    2. Pour PostScript, entrez le chemin et le nom de fichier de votre script, par exempletest/script.sh.

    3. Choisissez Suivant.

  11. Sur la page Étape 6 : Vérification, vérifiez la configuration de votre pipeline, puis choisissez Créer un pipeline pour créer le pipeline.

    Schéma de console illustrant l'exécution réussie d'un pipeline avec l'action de déploiement ajoutée à votre pipeline.
  12. Une fois le pipeline exécuté avec succès, choisissez Afficher les détails pour afficher les journaux de l'action afin de visualiser le résultat de l'action de calcul gérée.

    Consultez les journaux de l'action de EC2 déploiement d'Amazon dans votre pipeline.
    Consultez la deuxième page des journaux de l'action Amazon EC2 Deploy dans votre pipeline.

Étape 5 : Testez votre pipeline

Votre pipeline doit disposer de tous les éléments nécessaires pour exécuter un déploiement AWS continu end-to-end natif. À présent, testez sa fonctionnalité en transmettant une modification de code à votre référentiel source.

Pour tester votre pipeline
  1. Apportez une modification de code au référentiel source que vous avez configuré, validez-la, puis transmettez-la.

  2. Ouvrez la CodePipeline console à l'adresse https://console.aws.amazon.com/codepipeline/.

  3. Choisissez votre pipeline dans la liste.

  4. Observez la progression du pipeline dans ses différentes phases. Votre pipeline doit être terminé et votre action déploie le script sur vos instances.

  5. Pour plus d'informations sur la résolution des problèmes, consultezEC2 L'action de déploiement échoue avec un message d'erreur No such file.

ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.