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.
Configurer une instance Amazon EC2 pour qu'elle fonctionne avec CodeDeploy
Ces instructions vous montrent comment configurer une instance Amazon EC2 exécutant Amazon Linux, Ubuntu Server, Red Hat Enterprise Linux (RHEL) ou Windows Server pour une utilisation dans le cadre de déploiements. CodeDeploy
Note
Si vous ne possédez pas d'instance Amazon EC2, vous pouvez utiliser le CloudFormation modèle pour en lancer une exécutant Amazon Linux ou Windows Server. Nous ne fournissons pas de modèle pour Ubuntu Server ou RHEL.
Étape 1 : vérifier qu'un profil d'instance IAM est attaché à votre instance Amazon EC2
-
Connectez-vous à la console Amazon EC2 AWS Management Console et ouvrez-la à l'adresse. https://console.aws.amazon.com/ec2/
-
Dans le panneau de navigation, sous Instances, choisissez Instances.
-
Accédez à votre instance Amazon EC2 et choisissez-la dans la liste.
-
Dans le volet de détails, sous l'onglet Description, notez la valeur dans le champ du rôle IAM, puis passez à la section suivante.
Si le champ est vide, vous pouvez associer un profil d'instance IAM à l'instance. Pour plus d'informations, consultez Attacher un rôle IAM à une instance.
Étape 2 : vérifier que le profil d'instance IAM attaché dispose des autorisations d'accès correctes
-
Ouvrez la console IAM à l’adresse https://console.aws.amazon.com/iam/
. -
Dans le panneau de navigation, choisissez Rôles.
-
Accédez au nom du rôle IAM que vous avez noté à l'étape 4 de la section précédente et choisissez-le.
Note
Si vous souhaitez utiliser le rôle de service généré par le CloudFormation modèle au lieu de celui que vous avez créé en suivant les instructionsÉtape 2 : créer un rôle de service pour CodeDeploy, notez ce qui suit :
Dans certaines versions de notre CloudFormation modèle, le nom d'affichage du profil d'instance IAM généré et attaché aux instances Amazon EC2 n'est pas le même que le nom d'affichage dans la console IAM. Par exemple, le profil d'instance IAM peut avoir un nom d'affichage de
CodeDeploySampleStack-expnyi6-InstanceRoleInstanceProfile-IK8J8A9123EX, tandis que le profil d'instance IAM dans la console IAM peut avoir un nom d'affichage de.CodeDeploySampleStack-expnyi6-InstanceRole-C5P33V1L64EXPour vous aider à identifier le profil d'instance dans la console IAM, vous verrez que le préfixe
CodeDeploySampleStack-expnyi6-InstanceRoleest le même pour les deux. Pour plus d'informations sur les raisons pour lesquelles ces noms d'affichage peuvent être différents, consultez la section Profils d'instance. -
Choisissez l’onglet Relations d’approbation. Si aucune entrée n'indique The identity provider (s) ec2.amazonaws.com dans Trusted Entities, vous ne pouvez pas utiliser cette instance Amazon EC2. Arrêtez et créez une instance Amazon EC2 à l'aide des informations contenues dans. Utilisation d'instances pour CodeDeploy
Si une entrée indique The identity provider (s) ec2.amazonaws.com et que vous stockez vos applications uniquement dans des GitHub référentiels, passez directement à. Étape 3 : baliser l'instance Amazon EC2
Si une entrée indique The identity provider (s) ec2.amazonaws.com et que vous stockez vos applications dans des compartiments Amazon S3, choisissez l'onglet Autorisations.
-
S'il y a une stratégie dans la zone Managed Policies (Stratégies gérées), choisissez le nom de la stratégie, puis choisissez Edit policy (Modifier la stratégie).
-
Choisissez l’onglet JSON. Si vous stockez vos applications dans des compartiments Amazon S3, assurez-vous qu'
"s3:Get*""s3:List*"elles figurent dans la liste des actions spécifiées.Cela peut ressembler à ce qui suit :
{"Statement":[{"Resource":"*","Action":[ ... Some actions may already be listed here ... "s3:Get*","s3:List*" ... Some more actions may already be listed here ... ],"Effect":"Allow"}]}Ou, cela peut ressembler à ce qui suit :
Si
"s3:Get*"et"s3:List*"ne sont pas dans la liste des actions spécifiées, choisissez Modifier pour les ajouter, puis choisissez Enregistrer. (Si ni"s3:Get*", ni"s3:List*"n'est la dernière action de la liste, veillez à ajouter une virgule après l'action afin que le document de stratégie soit validé.)Note
Nous vous recommandons de limiter cette politique aux seuls compartiments Amazon S3 auxquels vos instances Amazon EC2 doivent accéder. Assurez-vous de donner accès aux compartiments Amazon S3 contenant l' CodeDeploy agent. Dans le cas contraire, une erreur peut se produire lors de l'installation ou de la mise à jour de l' CodeDeploy agent sur les instances. Pour accorder au profil d'instance IAM l'accès à certains compartiments du kit de CodeDeploy ressources uniquement dans Amazon S3, appliquez la politique suivante, mais supprimez les lignes relatives aux compartiments auxquels vous souhaitez empêcher l'accès :
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:Get*", "s3:List*" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket/*", "arn:aws:s3:::aws-codedeploy-us-east-2/*", "arn:aws:s3:::aws-codedeploy-us-east-1/*", "arn:aws:s3:::aws-codedeploy-us-west-1/*", "arn:aws:s3:::aws-codedeploy-us-west-2/*", "arn:aws:s3:::aws-codedeploy-ca-central-1/*", "arn:aws:s3:::aws-codedeploy-eu-west-1/*", "arn:aws:s3:::aws-codedeploy-eu-west-2/*", "arn:aws:s3:::aws-codedeploy-eu-west-3/*", "arn:aws:s3:::aws-codedeploy-eu-central-1/*", "arn:aws:s3:::aws-codedeploy-eu-central-2/*", "arn:aws:s3:::aws-codedeploy-eu-north-1/*", "arn:aws:s3:::aws-codedeploy-eu-south-1/*", "arn:aws:s3:::aws-codedeploy-eu-south-2/*", "arn:aws:s3:::aws-codedeploy-il-central-1/*", "arn:aws:s3:::aws-codedeploy-ap-east-1/*", "arn:aws:s3:::aws-codedeploy-ap-northeast-1/*", "arn:aws:s3:::aws-codedeploy-ap-northeast-2/*", "arn:aws:s3:::aws-codedeploy-ap-northeast-3/*", "arn:aws:s3:::aws-codedeploy-ap-southeast-1/*", "arn:aws:s3:::aws-codedeploy-ap-southeast-2/*", "arn:aws:s3:::aws-codedeploy-ap-southeast-3/*", "arn:aws:s3:::aws-codedeploy-ap-southeast-4/*", "arn:aws:s3:::aws-codedeploy-ap-south-1/*", "arn:aws:s3:::aws-codedeploy-ap-south-2/*", "arn:aws:s3:::aws-codedeploy-me-central-1/*", "arn:aws:s3:::aws-codedeploy-me-south-1/*", "arn:aws:s3:::aws-codedeploy-sa-east-1/*" ] } ] }
Étape 3 : baliser l'instance Amazon EC2
Pour obtenir des instructions sur la façon de baliser l'instance Amazon EC2 afin qu'elle CodeDeploy puisse être détectée lors d'un déploiement, consultez la section Utilisation des balises dans la console, puis revenez à cette page.
Note
Vous pouvez étiqueter l'instance Amazon EC2 avec la clé et la valeur de votre choix. Assurez-vous juste de spécifier cette clé et cette valeur lors du déploiement.
Étape 4 : Installation de l' AWS CodeDeploy agent sur l'instance Amazon EC2
Pour obtenir des instructions sur la façon d'installer l' CodeDeploy agent sur l'instance Amazon EC2 et de vérifier son exécution, consultezGestion des opérations des CodeDeploy agents, puis passez à. Créez une application avec CodeDeploy