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.
Cette section décrit comment configurer les paramètres de distribution pour fournir une AMI Image Builder aux autres comptes que vous spécifiez.
Le compte de destination peut ensuite lancer ou modifier l'AMI, selon les besoins.
Note
AWS CLI les exemples de commandes présentés dans cette section supposent que vous avez déjà créé des fichiers JSON de recette d'image et de configuration d'infrastructure. Pour créer le fichier JSON pour une recette d'image, consultezCréez une recette imagée à l'aide du AWS CLI. Pour créer le fichier JSON pour une configuration d'infrastructure, consultezCréer une configuration d'infrastructure.
Conditions préalables à la distribution d'AMI entre comptes
Pour que les comptes cibles puissent lancer correctement des instances à partir de votre image Image Builder, vous devez configurer les autorisations appropriées pour tous les comptes de destination dans toutes les régions.
Si vous chiffrez votre AMI à l'aide de AWS Key Management Service (AWS KMS), vous devez configurer un AWS KMS key pour votre compte qui sera utilisé pour chiffrer la nouvelle image.
Lorsque Image Builder effectue une distribution entre comptes chiffrée AMIs, l'image du compte source est déchiffrée et envoyée vers la région cible, où elle est rechiffrée à l'aide de la clé désignée pour cette région. Image Builder agissant pour le compte cible et utilise un rôle IAM que vous créez dans la région de destination, ce compte doit avoir accès aux clés dans les régions source et de destination.
Clés de chiffrement
Les conditions préalables suivantes sont requises si votre image est cryptée à l'aide AWS KMS de. Les conditions préalables à l'IAM sont abordées dans la section suivante.
Exigences relatives au compte source
-
Créez une clé KMS dans votre compte dans toutes les régions où vous créez et distribuez votre AMI. Vous pouvez également utiliser une clé existante.
-
Mettez à jour la politique clé pour toutes ces clés afin de permettre aux comptes de destination d'utiliser votre clé.
Exigences relatives au compte de destination
-
Ajoutez une politique en ligne
EC2ImageBuilderDistributionCrossAccountRole
qui permet au rôle d'effectuer les actions requises pour distribuer une AMI chiffrée. Pour les étapes de configuration IAM, consultez la section sur les Politiques IAM conditions préalables.
Pour plus d'informations sur l'utilisation de l'accès entre comptes AWS KMS, voir Autoriser les utilisateurs d'autres comptes à utiliser une clé KMS dans le Guide du AWS Key Management Service développeur.
Spécifiez votre clé de chiffrement dans la recette de l'image, comme suit :
-
Si vous utilisez la console Image Builder, choisissez votre clé de chiffrement dans la liste déroulante Encryption (alias KMS) de la section Stockage (volumes) de votre recette.
-
Si vous utilisez l'action CreateImageRecipe API ou la create-image-recipe commande contenue dans le AWS CLI, configurez votre clé dans la
ebs
sectionblockDeviceMappings
ci-dessous de votre entrée JSON.L'extrait de code JSON suivant indique les paramètres de chiffrement d'une recette d'image. En plus de fournir votre clé de chiffrement, vous devez également définir l'
encrypted
indicateur surtrue
.{ ... "blockDeviceMappings": [ { "deviceName": "Example root volume", "ebs": { "deleteOnTermination": true, "encrypted": true, "iops": 100, "kmsKeyId": "image-owner-key-id", ... }, ... }], ... }
Politiques IAM
Pour configurer les autorisations de distribution entre comptes dans AWS Identity and Access Management (IAM), procédez comme suit :
-
Pour utiliser Image Builder AMIs qui sont distribués sur plusieurs comptes, le propriétaire du compte de destination doit créer un nouveau rôle IAM dans son compte appelé
EC2ImageBuilderDistributionCrossAccountRole
. -
Ils doivent associer le Ec2ImageBuilderCrossAccountDistributionAccess politique au rôle pour permettre la distribution entre comptes. Pour plus d'informations sur les politiques gérées, voir Politiques gérées et politiques intégrées dans le guide de l'AWS Identity and Access Management utilisateur.
-
Vérifiez que l'ID du compte source est ajouté à la politique de confiance attachée au rôle IAM du compte de destination. L'exemple suivant montre une politique de confiance dans le compte de destination qui spécifie l'ID du compte source.
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::444455556666:root" }, "Action": "sts:AssumeRole" }] }
Pour plus d'informations sur les politiques de confiance, consultez la section Politiques basées sur les ressources dans le guide de l'AWS Identity and Access Management utilisateur.
-
Si l'AMI que vous distribuez est cryptée, le propriétaire du compte de destination doit ajouter la politique
EC2ImageBuilderDistributionCrossAccountRole
en ligne suivante à son compte afin de pouvoir utiliser vos clés KMS. LaPrincipal
section contient leur numéro de compte. Image Builder peut ainsi agir en leur nom lorsqu'il AWS KMS crypte et déchiffre l'AMI avec les clés appropriées pour chaque région.{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowRoleToPerformKMSOperationsOnBehalfOfTheDestinationAccount", "Effect": "Allow", "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey", "kms:CreateGrant", "kms:ListGrants", "kms:RevokeGrant" ], "Resource": "*" } ] }
Pour plus d'informations sur les politiques intégrées, consultez la section Politiques intégrées dans le guide de l'AWS Identity and Access Management utilisateur.
-
Si vous utilisez
launchTemplateConfigurations
pour spécifier un modèle de EC2 lancement Amazon, vous devez également ajouter la politique suivanteEC2ImageBuilderDistributionCrossAccountRole
à votre compte de destination.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:CreateLaunchTemplateVersion", "ec2:ModifyLaunchTemplate" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/CreatedBy": "EC2 Image Builder" } } }, { "Effect": "Allow", "Action": [ "ec2:DescribeLaunchTemplates" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": "arn:aws:ec2:*:*:launch-template/*", "Condition": { "StringEquals": { "aws:RequestTag/CreatedBy": "EC2 Image Builder" } } } ] }
Limites pour la distribution entre comptes
La distribution d'images Image Builder sur plusieurs comptes comporte certaines limites :
-
Le compte de destination est limité à 50 copies simultanées de l'AMI pour chaque région de destination.
-
Si vous souhaitez copier une AMI de virtualisation paravirtuelle (PV) vers une autre région, la région de destination doit prendre en charge la virtualisation PV. AMIs Pour plus d'informations, consultez Types de virtualisations AMI Linux.
-
Vous ne pouvez pas créer de copie non chiffrée d'un instantané chiffré. Si vous ne spécifiez pas de clé gérée par le client AWS Key Management Service (AWS KMS) pour le
KmsKeyId
paramètre, Image Builder utilise la clé par défaut pour Amazon Elastic Block Store (Amazon EBS). Pour de plus amples informations, veuillez consulter Chiffrement Amazon EBS dans le Guide de l'utilisateur Amazon Elastic Compute Cloud.
Pour plus d'informations, consultez le CreateDistributionConfigurationGuide de référence de l'API EC2 Image Builder.
Configurer la distribution entre comptes pour une AMI Image Builder depuis la console
Cette section explique comment créer et configurer les paramètres de distribution pour la distribution entre comptes de votre Image Builder à l' AMIs aide du AWS Management Console. La configuration de la distribution entre comptes nécessite des autorisations IAM spécifiques. Vous devez remplir le formulaire Conditions préalables à la distribution d'AMI entre comptes correspondant à cette section avant de continuer.
Pour créer des paramètres de distribution dans la console Image Builder, procédez comme suit :
-
Ouvrez la console EC2 Image Builder à l'adresse https://console.aws.amazon.com/imagebuilder/
. -
Choisissez Paramètres de distribution dans le volet de navigation. Cela affiche la liste des paramètres de distribution créés sous votre compte.
-
En haut de la page des paramètres de distribution, choisissez Créer des paramètres de distribution. Cela vous amène à la page Créer des paramètres de distribution.
-
Dans la section Type d'image, choisissez Amazon Machine Image (AMI) comme type de sortie. Il s’agit du paramètre par défaut.
-
Dans la section Général, entrez le nom de la ressource de paramètres de distribution que vous souhaitez créer (obligatoire).
-
Dans la section Paramètres régionaux, entrez un identifiant de compte à 12 chiffres auquel vous souhaitez distribuer votre AMI dans les comptes Target de la région sélectionnée, puis appuyez sur Entrée. Cela vérifie le bon formatage, puis affiche l'ID de compte que vous avez saisi sous la case. Répétez le processus pour ajouter d'autres comptes.
Pour supprimer un compte que vous avez saisi, choisissez le X affiché à droite de l'identifiant du compte.
Entrez le nom de l'AMI de sortie pour chaque région.
-
Continuez à spécifier les paramètres supplémentaires dont vous avez besoin, puis choisissez Créer des paramètres pour créer votre nouvelle ressource de paramètres de distribution.
Configurez la distribution entre comptes pour une AMI Image Builder à partir du AWS CLI
Cette section décrit comment configurer un fichier de paramètres de distribution et utiliser la create-image commande contenue dans le AWS CLI pour créer et distribuer une AMI Image Builder sur plusieurs comptes.
La configuration de la distribution entre comptes nécessite des autorisations IAM spécifiques. Vous devez compléter cette section avant d'exécuter la create-image commande. Conditions préalables à la distribution d'AMI entre comptes
-
Configuration d'un fichier de paramètres de distribution
Avant d'utiliser la create-image commande AWS CLI pour créer une AMI Image Builder distribuée à un autre compte, vous devez créer une structure
DistributionConfiguration
JSON qui spécifie le compte cible IDs dans lesAmiDistributionConfiguration
paramètres. Vous devez en spécifier au moins unAmiDistributionConfiguration
dans la région source.Le fichier d'exemple suivant, nommé
create-distribution-configuration.json
, montre la configuration pour la distribution d'images entre comptes dans la région source.{ "name": "cross-account-distribution-example", "description": "Cross Account Distribution Configuration Example", "distributions": [ { "amiDistributionConfiguration": { "targetAccountIds": ["
123456789012
", "987654321098
"], "name": "Name {{ imagebuilder:buildDate }}
", "description": "ImageCopy Ami Copy Configuration" }, "region": "us-west-2" } ] } -
Création des paramètres de distribution
Pour créer une ressource de paramètres de distribution Image Builder à l'aide de la create-distribution-configurationcommande AWS CLI, entrez les paramètres suivants dans la commande :
-
Entrez le nom de la distribution dans le
--name
paramètre. -
Joignez le fichier JSON de configuration de distribution que vous avez créé dans le
--cli-input-json
paramètre.
aws imagebuilder create-distribution-configuration --name
my distribution name
--cli-input-json file://create-distribution-configuration.json
Note
-
Vous devez inclure l'option
file://
au début du chemin du fichier JSON. -
Le chemin d'accès du fichier JSON doit suivre la convention appropriée pour le système d'exploitation de base sur lequel vous exécutez la commande. Par exemple, Windows utilise la barre oblique inverse (\) pour faire référence au chemin du répertoire, tandis que Linux et macOS utilisent la barre oblique (/).
-
Vous pouvez également fournir du JSON directement dans la commande, à l'aide du --distributions
paramètre.