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éation d'un modèle de EC2 lancement Amazon
Vous pouvez créer un modèle de EC2 lancement Amazon en spécifiant vos propres valeurs pour les paramètres de configuration de l'instance, ou en obtenant les valeurs d'un modèle de lancement ou d'une EC2 instance Amazon existant.
Il n'est pas nécessaire de spécifier une valeur pour chaque paramètre du modèle de lancement ; il suffit de spécifier un paramètre de configuration d'instance pour créer un modèle de lancement. Pour indiquer les paramètres que vous choisissez de ne pas spécifier, sélectionnez Ne pas inclure dans le modèle de lancement lorsque vous utilisez la console. Lorsque vous utilisez un outil de ligne de commande, n'incluez pas les paramètres pour indiquer que vous choisissez de ne pas les spécifier dans le modèle de lancement.
Si vous souhaitez en spécifier un AMI dans le modèle de lancement, vous pouvez soit sélectionner unAMI, soit spécifier un paramètre Systems Manager qui pointera vers un lancement AMI sur instance.
Lorsqu'une instance est lancée avec un modèle de lancement, les valeurs spécifiées dans le modèle de lancement sont utilisées pour configurer les paramètres d'instance correspondants. Si aucune valeur n'est spécifiée dans le modèle de lancement, la valeur par défaut du paramètre d'instance correspondant est utilisée.
Création d'un modèle de lancement en spécifiant des paramètres
Pour créer un modèle de lancement, vous devez spécifier son nom et au moins un paramètre de configuration d’instance.
Pour une description de chaque paramètre, voirRéférence pour les paramètres de configuration des EC2 instances Amazon.
- Console
-
Pour créer un modèle de lancement à l'aide de la console
Ouvrez la EC2 console Amazon à l'adresse https://console.aws.amazon.com/ec2/.
-
Dans le panneau de navigation, choisissez Modèles de lancement, puis Créer un modèle de lancement.
-
Sous Nom et description du modèle de lancement, procédez comme suit :
-
Pour Nom du modèle de lancement, entrez un nom descriptif pour le modèle.
-
Pour Description de la version du modèle, fournissez une brève description de cette version du modèle de lancement.
-
Pour étiqueter le modèle de lancement lors de sa création, développez les balises du modèle, choisissez Ajouter une nouvelle balise, puis entrez une clé de balise et une paire de valeurs. Choisissez à nouveau Ajouter une nouvelle balise pour chaque balise supplémentaire à ajouter.
Pour étiqueter les ressources créées lors du lancement d’une instance, vous devez spécifier les identifications sous Resource tags (Identifications de ressource). Pour plus d'informations, reportez-vous à l'étape 9 de cette procédure.
-
Sous Images de l'application et du système d'exploitation (Amazon Machine Image), vous pouvez soit garder Ne pas inclure dans le modèle de lancement sélectionné, soit choisir le système d'exploitation (OS) de l'instance, puis en choisir unAMI. Vous pouvez également spécifier un paramètre Systems Manager au lieu de spécifier unAMI. Pour de plus amples informations, veuillez consulter Utiliser un paramètre Systems Manager au lieu d'un AMI ID.
An AMI est un modèle qui contient le système d'exploitation et le logiciel requis pour lancer une instance.
-
Sous Type d'instance, vous pouvez soit conserver la case Ne pas inclure dans le modèle de lancement sélectionnée, soit sélectionner un type d'instance, soit spécifier les attributs de l'instance et laisser Amazon EC2 identifier les types d'instance avec ces attributs.
Le type d'instance détermine la configuration matérielle (mémoireCPU, stockage et capacité réseau) et la taille de l'ordinateur hôte utilisé pour une instance.
Si vous ne savez pas quel type d'instance choisir, vous pouvez effectuer les opérations suivantes :
-
Choisissez Comparer les types d'instances pour comparer différents types d'instances en fonction des attributs suivants : nombre devCPUs, architecture, quantité de mémoire (GiB), quantité de stockage (Go), type de stockage et performances du réseau.
-
Choisissez Obtenir des conseils pour obtenir des conseils et des suggestions concernant les types d'instances à partir de l'outil de recherche de types d'EC2instance. Pour de plus amples informations, veuillez consulter Obtenez des recommandations depuis l'outil de recherche de types d'EC2instance.
Si vous avez moins de 12 mois, vous pouvez utiliser Amazon EC2 dans le cadre du niveau gratuit en choisissant le type d'instance t2.micro ou le type d'instance t3.micro dans les régions où t2.micro Compte AWS n'est pas disponible. Sachez que lorsque vous lancez une instance t3.micro, elle passe par défaut en mode illimité, ce qui peut entraîner des frais supplémentaires en fonction de l'utilisation. CPU Si un type d’instance est éligible dans le cadre du niveau gratuit, il est étiqueté Free tier eligible (Éligible à l’offre gratuite).
-
Sous Paire de clés (connexion), pour le nom de la paire de clés, maintenez la case Ne pas inclure dans le modèle de lancement sélectionnée, choisissez une paire de clés existante ou créez-en une nouvelle.
-
Sous Paramètres réseau, vous pouvez soit conserver l'option Ne pas inclure dans le modèle de lancement sélectionnée, soit spécifier des valeurs pour les différents paramètres réseau.
-
Sous Configurer le stockage, si vous avez spécifié un AMI dans le modèle de lancement, celui-ci AMI inclut un ou plusieurs volumes de stockage, y compris le volume racine (volume 1 (AMIracine)). Vous pouvez éventuellement spécifier des volumes supplémentaires à associer à l'instance. Pour ajouter un nouveau volume, choisissez Ajouter un volume.
-
Sous Balises de ressources, pour étiqueter les ressources créées lors du lancement d'une instance, choisissez Ajouter une balise, puis entrez une clé de balise et une paire de valeurs. Pour Resource types (Types de ressource), spécifiez les ressources à étiqueter lors de la création. Vous pouvez spécifier la même identification pour toutes les ressources ou spécifier des identifications différentes pour différentes ressources. Choisissez Add tag (Ajouter une identification) pour chaque étiquette supplémentaire.
Vous pouvez spécifier des identifications pour les ressources suivantes qui sont créées lorsqu’un modèle de lancement est utilisé :
-
instances
-
Volumes
-
Elastic Graphics
-
Demandes d’instance Spot
-
Interfaces réseau
Pour étiqueter le modèle de lancement lui-même, vous devez spécifier les identifications sous Template tags (Identifications de modèle). Pour plus d'informations, reportez-vous à l'étape 3 de cette procédure.
-
Pour les informations avancées, développez la section pour afficher les champs et spécifiez éventuellement des paramètres supplémentaires pour votre instance.
-
Utilisez le panneau Résumé pour vérifier la configuration de votre modèle de lancement. Vous pouvez accéder à n'importe quelle section en choisissant son lien, puis en apportant les modifications nécessaires.
-
Lorsque vous êtes prêt à créer votre modèle de lancement, choisissezCreate launch template (Créer un modèle de lancement).
- AWS CLI
-
L'exemple suivant utilise la create-launch-templatecommande pour créer un modèle de lancement avec le nom et la configuration d'instance spécifiés.
aws ec2 create-launch-template \
--launch-template-name TemplateForWebServer
\
--version-description WebVersion1
\
--tag-specifications 'ResourceType=launch-template,Tags=[{Key=purpose
,Value=production
}]' \
--launch-template-data file://template-data
.json
L'exemple suivant JSON indique les données du modèle de lancement pour la configuration de l'instance. Enregistrez le JSON dans un fichier et incluez-le dans le --launch-template-data
paramètre, comme indiqué dans l'exemple de commande.
{
"NetworkInterfaces": [{
"AssociatePublicIpAddress": true,
"DeviceIndex": 0,
"Ipv6AddressCount": 1
,
"SubnetId": "subnet-7b16de0c
"
}],
"ImageId": "ami-8c1be5f6
",
"InstanceType": "r4.4xlarge
",
"TagSpecifications": [{
"ResourceType": "instance",
"Tags": [{
"Key":"Name
",
"Value":"webserver
"
}]
}],
"CpuOptions": {
"CoreCount":4
,
"ThreadsPerCore":2
}
}
Voici un exemple de sortie.
{
"LaunchTemplate": {
"LatestVersionNumber": 1,
"LaunchTemplateId": "lt-01238c059e3466abc",
"LaunchTemplateName": "TemplateForWebServer",
"DefaultVersionNumber": 1,
"CreatedBy": "arn:aws:iam::123456789012:root",
"CreateTime": "2017-11-27T09:13:24.000Z"
}
}
- PowerShell
-
L'exemple suivant utilise l'New-EC2LaunchTemplateapplet de commande pour créer un modèle de lancement avec le nom et la configuration d'instance spécifiés.
$launchTemplateData = [Amazon.EC2.Model.RequestLaunchTemplateData]@{
ImageId = 'ami-8c1be5f6'
InstanceType = 'r4.4xlarge'
NetworkInterfaces = @(
[Amazon.EC2.Model.LaunchTemplateInstanceNetworkInterfaceSpecificationRequest]@{
AssociatePublicIpAddress = $true
DeviceIndex = 0
Ipv6AddressCount = 1
SubnetId = 'subnet-7b16de0c'
}
)
TagSpecifications = @(
[Amazon.EC2.Model.LaunchTemplateTagSpecificationRequest]@{
ResourceType = 'instance'
Tags = [Amazon.EC2.Model.Tag]@{
Key = 'Name'
Value = 'webserver'
}
}
)
CpuOptions = [Amazon.EC2.Model.LaunchTemplateCpuOptionsRequest]@{
CoreCount = 4
ThreadsPerCore = 2
}
}
$tagSpecificationData = [Amazon.EC2.Model.TagSpecification]@{
ResourceType = 'launch-template'
Tags = [Amazon.EC2.Model.Tag]@{
Key = 'purpose'
Value = 'production'
}
}
New-EC2LaunchTemplate -LaunchTemplateName 'TemplateForWebServer' -VersionDescription 'WebVersion1' -LaunchTemplateData $launchTemplateData -TagSpecification $tagSpecificationData
Voici un exemple de sortie.
CreatedBy : arn:aws:iam::123456789012:root
CreateTime : 9/19/2023 16:57:55
DefaultVersionNumber : 1
LatestVersionNumber : 1
LaunchTemplateId : lt-01238c059eEXAMPLE
LaunchTemplateName : TemplateForWebServer
Tags : {purpose}
Créer un modèle de lancement à partir d’un modèle de lancement existant
Vous pouvez cloner un modèle de lancement existant, puis ajuster les paramètres pour créer un modèle de lancement. Toutefois, vous ne pouvez le faire que lorsque vous utilisez la EC2 console Amazon. Le AWS CLI ne prend pas en charge le clonage d'un modèle. Pour une description de chaque paramètre, voirRéférence pour les paramètres de configuration des EC2 instances Amazon.
- Console
-
Pour créer un modèle de lancement à partir d’un modèle de lancement existant
Ouvrez la EC2 console Amazon à l'adresse https://console.aws.amazon.com/ec2/.
-
Dans le panneau de navigation, choisissez Modèles de lancement, puis Créer un modèle de lancement.
-
Pour Nom du modèle de lancement, entrez un nom descriptif pour le modèle.
-
Pour Description de la version du modèle, fournissez une brève description de cette version du modèle de lancement.
-
Pour étiqueter le modèle de lancement lors de sa création, développez les balises du modèle, choisissez Ajouter une nouvelle balise, puis entrez une clé de balise et une paire de valeurs.
-
Développez Modèle source, et, pour Nom du modèle de lancement, choisissez un modèle de lancement sur lequel baser le nouveau modèle.
-
Pour Version du modèle source, choisissez la version du modèle de lancement sur laquelle baser le nouveau modèle de lancement.
-
Ajustez les paramètres de lancement si nécessaire, puis choisissez Créer un modèle de lancement.
Créer un modèle de lancement à partir d’une instance
Vous pouvez cloner les paramètres d'une EC2 instance Amazon existante, puis les ajuster pour créer un modèle de lancement. Pour une description de chaque paramètre, voirRéférence pour les paramètres de configuration des EC2 instances Amazon.
- Console
-
Pour créer un modèle de lancement à partir d’une instance
Ouvrez la EC2 console Amazon à l'adresse https://console.aws.amazon.com/ec2/.
-
Dans le panneau de navigation, choisissez Instances.
-
Sélectionnez l'instance, puis choisissez Actions, Image et modèles, puis Créer un modèle à partir de l'instance.
-
Indiquez un nom, une description eet des balises, puis ajustez les paramètres de lancement si nécessaire.
Lorsque vous créez un modèle de lancement à partir d'une instance, l'interface réseau IDs et les adresses IP de l'instance ne sont pas incluses dans le modèle.
-
Choisissez Créer un modèle de lancement.
- AWS CLI
-
Vous pouvez utiliser le AWS CLI pour créer un modèle de lancement à partir d'une instance existante en obtenant d'abord les données du modèle de lancement à partir d'une instance, puis en créant un modèle de lancement à l'aide des données du modèle de lancement.
Pour obtenir des données de modèle de lancement à partir d’une instance
-
Utilisez la get-launch-template-datacommande et spécifiez l'ID de l'instance. Vous pouvez utiliser la sortie comme base pour créer un modèle de lancement ou une version de modèle de lancement. Par défaut, la sortie contient un objet LaunchTemplateData
de niveau supérieur qui ne peut pas être spécifié dans les données de modèle de lancement. Excluez cet objet à l’aide de l’option --query
.
aws ec2 get-launch-template-data \
--instance-id i-0123d646e8048babc
\
--query "LaunchTemplateData"
Voici un exemple de sortie.
{
"Monitoring": {},
"ImageId": "ami-8c1be5f6",
"BlockDeviceMappings": [
{
"DeviceName": "/dev/xvda",
"Ebs": {
"DeleteOnTermination": true
}
}
],
"EbsOptimized": false,
"Placement": {
"Tenancy": "default",
"GroupName": "",
"AvailabilityZone": "us-east-1a"
},
"InstanceType": "t2.micro",
"NetworkInterfaces": [
{
"Description": "",
"NetworkInterfaceId": "eni-35306abc",
"PrivateIpAddresses": [
{
"Primary": true,
"PrivateIpAddress": "10.0.0.72"
}
],
"SubnetId": "subnet-7b16de0c",
"Groups": [
"sg-7c227019"
],
"Ipv6Addresses": [
{
"Ipv6Address": "2001:db8:1234:1a00::123"
}
],
"PrivateIpAddress": "10.0.0.72"
}
]
}
Par exemple, vous pouvez écrire directement la sortie dans un fichier :
aws ec2 get-launch-template-data \
--instance-id i-0123d646e8048babc
\
--query "LaunchTemplateData" >> instance-data.json
Pour créer un modèle de lancement à l’aide des données du modèle de lancement
Utiliser un paramètre Systems Manager au lieu d'un AMI ID
Au lieu de spécifier un AMI identifiant dans vos modèles de lancement, vous pouvez spécifier un AWS Systems Manager paramètre. Si l'AMIidentifiant change, vous pouvez le AMI mettre à jour en un seul endroit en mettant à jour le paramètre Systems Manager dans le magasin de paramètres Systems Manager. Les paramètres peuvent également être partagés avec d'autres Comptes AWS. Vous pouvez stocker et gérer les AMI paramètres de manière centralisée dans un seul compte et les partager avec tous les autres comptes qui ont besoin de les référencer. En utilisant un paramètre Systems Manager, tous vos modèles de lancement peuvent être mis à jour en une seule action.
Un paramètre Systems Manager est une paire clé-valeur définie par l'utilisateur que vous créez dans le AWS Systems Manager Parameter Store. Le stockage de paramètres est un endroit central où vous pouvez stocker les valeurs de configuration de votre application.
Dans le schéma suivant, le golden-ami
paramètre est d'abord mappé à l'original AMI ami-aabbccddeeffgghhi
dans le Parameter Store. Dans le modèle de lancement, la valeur de l'AMIID estgolden-ami
. Lorsqu'une instance est lancée à l'aide de ce modèle de lancement, l'AMIID devientami-aabbccddeeffgghhi
. Plus tard, AMI il est mis à jour, ce qui entraîne un nouvel AMI identifiant. Dans le stockage de paramètres, le paramètre golden-ami
est mappé au nouveau ami-00112233445566778
. Le modèle de lancement reste inchangé. Lorsqu'une instance est lancée à l'aide de ce modèle de lancement, l'AMIID est remplacé par le nouveauami-00112233445566778
.
Les modèles de lancement nécessitent que les paramètres de Systems Manager définis par l'utilisateur respectent le format suivant lorsqu'ils sont utilisés à la place d'un AMI identifiant :
Pour plus d'informations sur la création d'un paramètre valide pour un AMI ID, consultez la section Création des paramètres de Systems Manager dans le guide de AWS Systems Manager l'utilisateur.
Pour utiliser un paramètre Systems Manager à la place d'un AMI identifiant dans un modèle de lancement, vous devez utiliser l'un des formats suivants lorsque vous spécifiez le paramètre dans le modèle de lancement :
Pour référencer un paramètre public :
Pour référencer un paramètre stocké dans le même compte :
-
resolve:ssm:parameter-name
-
resolve:ssm:parameter-name
:version-number
– Le numéro de version lui-même est une étiquette par défaut
-
resolve:ssm:parameter-name
:label
Pour référencer un paramètre partagé par un autre Compte AWS :
-
resolve:ssm:parameter-ARN
-
resolve:ssm:parameter-ARN
:version-number
-
resolve:ssm:parameter-ARN
:label
Versions des paramètres
Les paramètres Systems Manager sont des ressources versionnées. Lorsque vous mettez à jour un paramètre, vous créez de nouvelles versions successives du paramètre. Systems Manager prend en charge les étiquettes de paramètres que vous pouvez associer à des versions spécifiques d’un paramètre.
Par exemple, le paramètre golden-ami
peut avoir trois versions : 1
, 2
et 3
. Vous pouvez créer une étiquette de paramètre beta
qui correspond à la version 2
et une étiquette de paramètre prod
qui correspond à la version 3
.
Dans un modèle de lancement, vous pouvez spécifier la version 3 du paramètre golden-ami
en utilisant l’un des formats suivants :
La spécification de la version ou de l’étiquette est facultative. Si aucune version ou étiquette n’est spécifiée, c’est la dernière version du paramètre qui est utilisée.
Spécifier un paramètre Systems Manager dans un modèle de lancement
Vous pouvez spécifier un paramètre Systems Manager dans un modèle de lancement au lieu d'un AMI ID lorsque vous créez un modèle de lancement ou une nouvelle version d'un modèle de lancement.
- Console
-
Pour spécifier un paramètre Systems Manager dans un modèle de lancement
Ouvrez la EC2 console Amazon à l'adresse https://console.aws.amazon.com/ec2/.
-
Dans le panneau de navigation, choisissez Modèles de lancement, puis Créer un modèle de lancement.
-
Pour Nom du modèle de lancement, entrez un nom descriptif pour le modèle.
-
Sous Images de l'application et du système d'exploitation (Amazon Machine Image), sélectionnez Parcourir davantage AMIs.
-
Sélectionnez le bouton fléché à droite de la barre de recherche, puis choisissez Spécifier une valeur personnalisée/un paramètre Systems Manager.
-
Dans la boîte de dialogue Spécifier une valeur personnalisée ou un paramètre Systems Manager, procédez comme suit :
-
Pour la chaîne de paramètres AMI ID ou Systems Manager, entrez le nom du paramètre Systems Manager en utilisant l'un des formats suivants :
Pour référencer un paramètre public :
Pour référencer un paramètre stocké dans le même compte :
-
resolve:ssm:parameter-name
-
resolve:ssm:parameter-name
:version-number
-
resolve:ssm:parameter-name
:label
Pour référencer un paramètre partagé par un autre Compte AWS :
-
resolve:ssm:parameter-ARN
-
resolve:ssm:parameter-ARN
:version-number
-
resolve:ssm:parameter-ARN
:label
-
Choisissez Save (Enregistrer).
-
Spécifiez tout autre paramètre de modèle de lancement selon vos besoins, puis choisissez Créer un modèle de lancement.
Pour de plus amples informations, veuillez consulter Création d'un modèle de lancement en spécifiant des paramètres.
- AWS CLI
-
Pour spécifier un paramètre Systems Manager dans un modèle de lancement
-
Utilisez la create-launch-templatecommande pour créer le modèle de lancement. Pour spécifier le paramètre AMI à utiliser, entrez le nom du paramètre Systems Manager en utilisant l'un des formats suivants :
Pour référencer un paramètre public :
Pour référencer un paramètre stocké dans le même compte :
-
resolve:ssm:parameter-name
-
resolve:ssm:parameter-name
:version-number
-
resolve:ssm:parameter-name
:label
Pour référencer un paramètre partagé par un autre Compte AWS :
-
resolve:ssm:parameter-ARN
-
resolve:ssm:parameter-ARN
:version-number
-
resolve:ssm:parameter-ARN
:label
L’exemple suivant crée un modèle de lancement qui spécifie ce qui suit :
-
Nom du modèle de lancement (TemplateForWebServer
)
-
Une balise pour le modèle de lancement (purpose
=production
)
-
Les données pour la configuration de l'instance, spécifiées dans un JSON fichier :
-
Le AMI à utiliser (resolve:ssm:golden-ami
)
-
Le type d’instance à lancer (m5.4xlarge
)
-
Une balise pour l’instance (Name
=webserver
)
aws ec2 create-launch-template \
--launch-template-name TemplateForWebServer
\
--tag-specifications 'ResourceType=launch-template,Tags=[{Key=purpose
,Value=production
}]' \
--launch-template-data file://template-data
.json
Voici un exemple de JSON fichier contenant les données du modèle de lancement pour la configuration de l'instance. La valeur pour ImageId
est le nom du paramètre Systems Manager, saisi au format requis resolve:ssm:golden-ami
.
{"LaunchTemplateData": {
"ImageId": "resolve:ssm:golden-ami
",
"InstanceType": "m5.4xlarge
",
"TagSpecifications": [{
"ResourceType": "instance",
"Tags": [{
"Key":"Name
",
"Value":"webserver
"
}]
}]
}
}
Vérifiez qu'un modèle de lancement reçoit le bon AMI identifiant
Pour convertir le paramètre Systems Manager à l'AMIID réel
Utilisez la describe-launch-template-versionscommande et incluez le --resolve-alias
paramètre.
aws ec2 describe-launch-template-versions \
--launch-template-name my-launch-template
\
--versions $Default
\
--resolve-alias
La réponse inclut l'AMIidentifiant deImageId
. Dans cet exemple, lorsqu'une instance est lancée à l'aide de ce modèle de lancement, l'AMIID est converti enami-0ac394d6a3example
.
{
"LaunchTemplateVersions": [
{
"LaunchTemplateId": "lt-089c023a30example",
"LaunchTemplateName": "my-launch-template",
"VersionNumber": 1,
"CreateTime": "2022-12-28T19:52:27.000Z",
"CreatedBy": "arn:aws:iam::123456789012:user/Bob",
"DefaultVersion": true,
"LaunchTemplateData": {
"ImageId": "ami-0ac394d6a3example",
"InstanceType": "t3.micro",
}
}
]
}
Pour plus d'informations sur l'utilisation des paramètres de Systems Manager, consultez les documents de référence suivants dans la documentation de Systems Manager.
Limites
-
Seules EC2 les flottes de type Fleets instant
prennent en charge l'utilisation d'un modèle de lancement dont le paramètre Systems Manager est spécifié à la place d'un AMI ID.
-
EC2Les flottes de type maintain
etrequest
, et les flottes ponctuelles ne prennent pas en charge l'utilisation d'un modèle de lancement dont le paramètre Systems Manager est spécifié à la place d'un AMI identifiant. Pour les EC2 flottes de type A maintain
etrequest
, et pour les flottes ponctuelles, si vous spécifiez un AMI dans le modèle de lancement, vous devez spécifier l'AMIID.
-
Si vous utilisez la sélection d'instance basée sur les attributs dans votre EC2 flotte, vous ne pouvez pas spécifier de paramètre Systems Manager à la place d'un AMI ID. Lorsque vous utilisez la sélection d'instance basée sur les attributs, vous devez spécifier l'AMIID.
-
Amazon EC2 Auto Scaling propose d'autres restrictions. Pour plus d'informations, consultez la section Utiliser AWS Systems Manager les paramètres plutôt que AMI IDs dans les modèles de lancement dans le manuel Amazon EC2 Auto Scaling User Guide.