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 les paramètres EC2Launch v2 pour les instances Windows
Cette section contient des informations sur la configuration des paramètres pour la EC2Launch version 2.
Les sujets suivants sont notamment abordés :
Modifier les paramètres à l'aide de la boîte de EC2Launch dialogue des paramètres de la version 2
La procédure suivante décrit comment utiliser la boîte de dialogue EC2Launch des paramètres de la version 2 pour activer ou désactiver les paramètres.
Note
Si vous configurez de manière incorrecte les tâches personnalisées dans le fichier agent-config.yml et que vous essayez d'ouvrir la boîte de dialogue des EC2Launch paramètres Amazon, vous recevrez un message d'erreur. Pour un exemple de schéma, consultez Exemple : agent-config.yml.
-
Lancez et connectez-vous à votre instance Windows.
-
Dans le menu Démarrer, choisissez Tous les programmes, puis accédez aux EC2Launchparamètres.
-
Dans l'onglet Général de la boîte de dialogue des EC2Launchparamètres, vous pouvez activer ou désactiver les paramètres suivants.
-
Set Computer Name (Définir le nom de l’ordinateur)
Si ce paramètre est activé (il est désactivé par défaut), le nom d’hôte actuel est comparé au nom d’hôte souhaité à chaque démarrage. Si les noms d’hôte ne correspondent pas, le nom d’hôte est réinitialisé et le système redémarre éventuellement pour récupérer le nouveau nom d’hôte. Si aucun nom d'hôte personnalisé n'est spécifié, il est généré à l'aide de l'IPv4adresse privée au format hexadécimal, par exemple,.
ip-AC1F4E6
Pour empêcher que votre nom d’hôte existant ne soit modifié, n’activez pas ce paramètre. -
Étendre le volume de démarrage
Ce paramètre étend de manière dynamique
Disk 0
/Volume 0
pour inclure l’espace non partitionné. Cela peut être utile lorsque l’instance est démarrée à partir d’un volume du périphérique racine doté d’une taille personnalisée. -
Définir le compte administrateur
Lorsque cette option est activée, vous pouvez définir les attributs de nom d’utilisateur et de mot de passe pour le compte d’administrateur créé sur votre ordinateur local. Si cette fonctionnalité n’est pas activée, un compte d’administrateur n’est pas créé sur le système après Sysprep. Indiquez un mot de passe dans
adminPassword
uniquement siadminPasswordtype
estSpecify
.Les types de mots de passe sont définis comme suit :
-
Random
EC2Launchgénère un mot de passe et le chiffre à l'aide de la clé de l'utilisateur. Le système désactive ce paramètre après le lancement de l’instance afin que ce mot de passe persiste si l’instance est redémarrée, arrêtée ou démarrée.
-
Specify
EC2Launchutilise le mot de passe que vous spécifiez dans
adminPassword
. Si le mot de passe ne répond pas aux exigences du système, EC2Launch génère un mot de passe aléatoire à la place. Le mot de passe est stocké dans le fichieragent-config.yml
sous forme de texte clair et est supprimé une fois que le mot de passe est défini par Sysprep. EC2Launchchiffre le mot de passe à l'aide de la clé de l'utilisateur. -
Do not set
EC2Launchutilise le mot de passe que vous spécifiez dans le fichier unattend.xml. Si vous ne spécifiez pas de mot de passe dans unattend.xml, le compte d’administrateur est désactivé.
-
-
Démarrer le SSM service
Lorsque cette option est sélectionnée, le service Systems Manager est activé pour démarrer à la suite de Sysprep. EC2LaunchLa v2 exécute toutes les tâches décrites précédemment, et l'SSMagent traite les demandes relatives aux fonctionnalités de Systems Manager, telles que Run Command et State Manager.
Vous pouvez utiliser Run Command pour mettre à niveau vos instances existantes afin d'utiliser la dernière version du service et de l'SSMagent EC2Launch v2. Pour plus d'informations, consultez la section Update SSM Agent en utilisant Run Command dans le Guide de l'utilisateur de AWS Systems Manager.
-
Optimisez ENA
Lorsque cette option est sélectionnée, ENA les paramètres sont configurés pour garantir que les paramètres de mise à l'échelle côté ENA réception et de profondeur de la file d'attente de réception sont optimisés AWS. Pour de plus amples informations, veuillez consulter Configurer l'CPUaffinité de dimensionnement côté réception.
-
Activer SSH
Ce paramètre active Open SSH pour les versions ultérieures de Windows afin de permettre l'administration du système à distance.
-
Activer les trames Jumbo
Sélectionnez cette option pour activer les trames Jumbo. Les trames Jumbo peuvent avoir des effets inattendus sur vos communications réseau. Assurez-vous donc de comprendre comment les trames Jumbo auront un impact sur votre système avant de les activer. Pour plus d’informations sur les trames jumbo, consultez Cadres Jumbo (9001MTU).
-
Préparer l’imagerie
Indiquez si vous souhaitez que votre EC2 instance s'arrête avec ou sans Sysprep. Lorsque vous souhaitez exécuter Sysprep avec la version EC2Launch v2, choisissez Shutdown with Sysprep.
-
-
Dans l'onglet DNSSuffixe, vous pouvez indiquer si vous souhaitez ajouter une liste de DNS suffixes pour la DNS résolution des serveurs en cours d'exécutionEC2, sans fournir le nom de domaine complet. DNSles suffixes peuvent contenir les variables
$REGION
et.$AZ
Seuls les suffixes qui n’existent pas déjà seront ajoutés à la liste. -
Dans l’onglet Fond d’écran, vous pouvez configurer le fond d’écran de votre instance avec une image d’arrière-plan et spécifier les détails de l’instance à afficher dans le fond d’écran. Amazon EC2 génère les informations à chaque fois que vous vous connectez.
Vous pouvez configurer votre fond d’écran à l’aide des commandes suivantes.
-
Afficher les détails de l’instance sur le fond d’écran – Cette case à cocher active ou désactive l’affichage des détails de l’instance sur le fond d’écran.
-
Chemin de l’image (.jpg) – Spécifiez le chemin d’accès à l’image à utiliser comme fond d’écran.
-
Sélectionner les attributs à afficher sur le fond d’écran – Cochez les cases correspondant aux détails de l’instance que vous voulez voir apparaître sur le fond d’écran. Décochez les cases des détails d’instance précédemment sélectionnés que vous voulez supprimer du fond d’écran.
-
Afficher les balises d’instance sur le fond d’écran – Sélectionnez l’un des paramètres suivants pour afficher les balises d’instance sur le fond d’écran :
-
Aucun : n’affichez aucune balise d’instance sur le fond d’écran.
-
Afficher tout : affiche toutes les balises d’instance sur le fond d’écran.
-
Afficher avec filtre : affiche les balises d’instance spécifiées sur le fond d’écran. Lorsque vous sélectionnez ce paramètre, vous pouvez ajouter les balises d’instance que vous souhaitez voir s’afficher sur votre fond d’écran dans la zone Filtre de balise d’instance.
Note
Vous devez activer les balises dans les métadonnées pour afficher les balises sur le fond d’écran. Pour plus d’informations sur les balises et métadonnées d’instance, consultez Afficher les balises de vos EC2 instances à l'aide des métadonnées des instances.
-
-
-
Sous l’onglet Volumes, indiquez si vous souhaitez initialiser les volumes attachés à l’instance. L’activation définit les lettres de lecteur pour tous les volumes supplémentaires et les étend pour utiliser l’espace disponible. Si vous sélectionnez Tous, tous les volumes de stockage sont initialisés. Si vous sélectionnez Appareils, seuls les appareils spécifiés dans la liste sont initialisés. Vous devez entrer l’appareil pour chaque appareil à initialiser. Utilisez les appareils répertoriés sur la EC2 console, par exemple,
xvdb
ou/dev/nvme0n1
. La liste déroulante affiche les volumes de stockage attachés à l’instance. Pour entrer un appareil qui n’est pas attaché à l’instance, saisissez-le dans le champ de texte.Nom, Lettre et Partition sont des champs facultatifs. Si aucune valeur n'est spécifiée pour Partition, les volumes de stockage supérieurs à 2 To sont initialisés avec le type de
gpt
partition, et ceux inférieurs à 2 To sont initialisés avec le type dembr
partition. Si des périphériques sont configurés et qu'un NTFS appareil autre qu'un périphérique contient une table de partition ou que les 4 premiers Ko du disque contiennent des données, le disque est ignoré et l'action est consignée.
Voici un exemple de YAML fichier de configuration créé à partir des paramètres saisis dans la EC2Launch boîte de dialogue.
version: 1.0 config: - stage: boot tasks: - task: extendRootPartition - stage: preReady tasks: - task: activateWindows inputs: activation: type: amazon - task: setDnsSuffix inputs: suffixes: - $REGION.ec2-utilities.amazonaws.com - task: setAdminAccount inputs: password: type: random - task: setWallpaper inputs: path: C:\ProgramData\Amazon\EC2Launch\wallpaper\Ec2Wallpaper.jpg attributes: - hostName - instanceId - privateIpAddress - publicIpAddress - instanceSize - availabilityZone - architecture - memory - network - stage: postReady tasks: - task: startSsm
Configurez la EC2Launch v2 à l'aide du CLI
Vous pouvez utiliser l'interface de ligne de commande (CLI) pour configurer vos EC2Launch paramètres et gérer le service. La section suivante contient des descriptions et des informations d'utilisation pour les CLI commandes que vous pouvez utiliser pour gérer la EC2Launch version 2.
collect-logs
Collecte les fichiers journauxEC2Launch, les compresse et les place dans un répertoire spécifié.
Exemple
ec2launch collect-logs -o C:\Mylogs.zip
Utilisation
ec2launch collect-logs [flags]
Indicateurs
-h
, --help
aide pour collect-logs
-o
, --output string
chemin d’accès aux fichiers journaux de sortie compressés
get-agent-config
Imprime agent-config.yml
dans le format spécifié (JSONouYAML). Si aucun format n’est spécifié, agent-config.yml
est imprimé dans le format précédemment spécifié.
Exemple
ec2launch get-agent-config -f json
Exemple 2
Les PowerShell commandes suivantes indiquent comment modifier et enregistrer le agent-config
fichier au JSON format.
$config = & "$env:ProgramFiles/Amazon/EC2Launch/EC2Launch.exe" --format json | ConvertFrom-Json $jumboFrame =@" { "task": "enableJumboFrames" } "@ $config.config | %{if($_.stage -eq 'postReady'){$_.tasks += (ConvertFrom-Json -InputObject $jumboFrame)}} $config | ConvertTo-Json -Depth 6 | Out-File -encoding UTF8 $env:ProgramData/Amazon/EC2Launch/config/agent-config.yml
Utilisation
ec2launch get-agent-config [flags]
Indicateurs
-h
, --help
aide pour get-agent-config
-f
, --format string
format de sortie du fichier agent-config
: json
, yaml
list-volumes
Répertorie tous les volumes de stockage attachés à l'instance, y compris les volumes éphémères et les EBS volumes.
Exemple
ec2launch list-volumes
Utilisation
ec2launch list-volumes
Indicateurs
-h
, --help
aide pour list-volumes
reset
L’objectif principal de cette tâche est de réinitialiser l’agent pour sa prochaine exécution. Pour ce faire, la reset commande supprime toutes les données d'état de l'agent pour la EC2Launch v2 du EC2Launch
répertoire local (voirEC2Launchstructure du répertoire v2). Reset supprime éventuellement le service et les journaux Sysprep.
Le comportement des scripts dépend du mode dans lequel l’agent exécute les scripts : en ligne ou détaché.
- En ligne (par défaut)
-
L'agent EC2Launch v2 exécute les scripts un par un (
detach: false
). Il s’agit du paramètre par défaut.Note
Lorsque votre script en ligne émet une commande reset ou sysprep, il s’exécute immédiatement et réinitialise l’agent. La tâche en cours se termine, puis l’agent s’arrête sans exécuter d’autres tâches.
Par exemple, si la tâche qui émet la commande aurait été suivie d’une tâche
startSsm
(incluse par défaut après l’exécution des données utilisateur), la tâche ne s’exécute pas et le service Systems Manager ne démarre jamais. - Detached
-
L'agent EC2Launch v2 exécute des scripts simultanément avec d'autres tâches (
detach: true
).Note
Lorsque votre script détaché émet une commande reset ou sysprep, ces commandes attendent que l’agent ait terminé leur exécution avant de s’exécuter. Les tâches suivantes executeScript seront toujours exécutées.
Exemple
ec2launch reset -c
Utilisation
ec2launch reset [flags]
Indicateurs
-c
, --clean
nettoie les journaux d’instance avant la reset
-h
, --help
aide pour reset
run
Exécute la EC2Launch v2.
Exemple
ec2launch run
Utilisation
ec2launch run [flags]
Indicateurs
-h
, --help
aide pour run
status
Obtient le statut de l'agent EC2Launch v2. Il est possible de bloquer le processus jusqu’à ce que l’agent soit terminé. Le code de sortie du processus détermine l’état de l’agent :
-
0
: l’agent a été exécuté avec succès. -
1
: l’agent a été exécuté et a échoué. -
2
: l’agent est toujours en cours d’exécution. -
3
: l’agent est dans un état inconnu. L’état de l’agent n’est pas en cours d’exécution ou arrêté. -
4
: une erreur s’est produite lors de la tentative de récupération de l’état de l’agent. -
5
: l’agent n’est pas en cours d’exécution et l’état de la dernière exécution connue est inconnu. Cela peut signifier :-
qu’à la fois
state.json
etprevious-state.json
sont supprimés. -
que
previous-state.json
est corrompu.
Il s’agit de l’état de l’agent après l’exécution de la commande reset.
-
Exemple :
ec2launch status -b
Utilisation
ec2launch status [flags]
Indicateurs
-b
,--block
bloque le processus jusqu’à la fin de l’exécution de l’agent
-h
,--help
aide pour status
sysprep
L’objectif principal de cette tâche est de réinitialiser l’agent pour sa prochaine exécution. Pour ce faire, la sysprep commande réinitialise l'état de l'agent, met à jour le unattend.xml
fichier, désactive et exécute RDP Sysprep.
Le comportement des scripts dépend du mode dans lequel l’agent exécute les scripts : en ligne ou détaché.
- En ligne (par défaut)
-
L'agent EC2Launch v2 exécute les scripts un par un (
detach: false
). Il s’agit du paramètre par défaut.Note
Lorsque votre script en ligne émet une commande reset ou sysprep, il s’exécute immédiatement et réinitialise l’agent. La tâche en cours se termine, puis l’agent s’arrête sans exécuter d’autres tâches.
Par exemple, si la tâche qui émet la commande aurait été suivie d’une tâche
startSsm
(incluse par défaut après l’exécution des données utilisateur), la tâche ne s’exécute pas et le service Systems Manager ne démarre jamais. - Detached
-
L'agent EC2Launch v2 exécute des scripts simultanément avec d'autres tâches (
detach: true
).Note
Lorsque votre script détaché émet une commande reset ou sysprep, ces commandes attendent que l’agent ait terminé leur exécution avant de s’exécuter. Les tâches suivantes executeScript seront toujours exécutées.
Exemple :
ec2launch sysprep
Utilisation
ec2launch sysprep [flags]
Indicateurs
-c
,--clean
nettoie les journaux d’instance avant la sysprep
-h
,--help
aide pour Sysprep
-s
,--shutdown
arrête l’instance après l’exécution de sysprep
valider
Valide le fichier agent-config
C:\ProgramData\Amazon\EC2Launch\config\agent-config.yml
.
Exemple
ec2launch validate
Utilisation
ec2launch validate [flags]
Indicateurs
-h
, --help
aide pour validate
version
Obtient la version exécutable.
Exemple
ec2launch version
Utilisation
ec2launch version [flags]
Indicateurs
-h
, --help
aide pour version
fond d’écran
Définit le nouveau fond d’écran sur le chemin d’écran fourni (fichier .jpg) et affiche les détails de l’instance sélectionnée.
Syntaxe
ec2launch wallpaper ^ --path="C:\ProgramData\Amazon\EC2Launch\wallpaper\Ec2Wallpaper.jpg" ^ --all-tags ^ --attributes=hostName,instanceId,privateIpAddress,publicIpAddress,instanceSize,availabilityZone,architecture,memory,network
Inputs
Paramètres
- --balises autorisées [
tag-name-1
,tag-name-n
] -
(Facultatif) JSON Tableau codé en Base64 de noms de balises d'instance à afficher sur le fond d'écran. Vous pouvez utiliser cette balise ou l’option
--all-tags
, mais pas les deux. - --attributs
attribute-string-1
,attribute-string-n
-
(Facultatif) Une liste de chaînes d’attributs
wallpaper
séparées par des virgules pour appliquer des paramètres au fond d’écran. - [--chemin | -p]
path-string
-
(Obligatoire) Spécifie le chemin du fichier image d’arrière-plan
wallpaper
.
Indicateurs
- --all-tags
-
(Facultatif) Affiche toutes les balises d’instance sur le fond d’écran. Vous pouvez utiliser cette balise ou l’option
--allowed-tags
, mais pas les deux. - [--help | -h]
-
Affiche l’aide concernant la commande wallpaper.
EC2Launchconfiguration des tâches v2
Cette section inclut les schémas de configuration, les tâches, les détails et les exemples pour agent-config.yml
et les données utilisateur.
Tâches et exemples
Schéma : agent-config.yml
La structure du fichier agent-config.yml
est illustrée ci-dessous. Notez qu’une tâche ne peut pas être répétée dans la même étape. Pour connaître les propriétés des tâches, consultez les descriptions de tâches suivantes.
Structure du document : agent-config.yml
JSON
{ "version": "1.0", "config": [ { "stage": "string", "tasks": [ { "task": "string", "inputs": { ... } }, ... ] }, ... ] }
YAML
version: 1.0 config: - stage: string tasks: - task: string inputs: ... ... ...
Exemple : agent-config.yml
L’exemple suivant montre les paramètres du fichier de configuration agent-config.yml
.
version: 1.0 config: - stage: boot tasks: - task: extendRootPartition - stage: preReady tasks: - task: activateWindows inputs: activation: type: amazon - task: setDnsSuffix inputs: suffixes: - $REGION.ec2-utilities.amazonaws.com - task: setAdminAccount inputs: password: type: random - task: setWallpaper inputs: path: C:\ProgramData\Amazon\EC2Launch\wallpaper\Ec2Wallpaper.jpg attributes: - hostName - instanceId - privateIpAddress - publicIpAddress - instanceSize - availabilityZone - architecture - memory - network - stage: postReady tasks: - task: startSsm
Configurer les scripts de données utilisateur EC2Launch v2 qui s'exécutent lors du lancement ou du redémarrage
Les YAML exemples suivants JSON montrent la structure du document pour les données utilisateur. Amazon EC2 analyse chaque tâche nommée dans le tasks
tableau que vous spécifiez dans le document. Chaque tâche possède son propre ensemble de propriétés et d’exigences. Pour obtenir des détails, veuillez consulter le Définitions de tâches pour les tâches de EC2Launch démarrage de la version 2.
Note
Une tâche ne doit apparaître qu'une seule fois dans le tableau des tâches relatives aux données utilisateur.
Structure du document : données utilisateur
JSON
{ "version": "1.1", "tasks": [ { "task": "string", "inputs": { ... }, }, ... ] }
YAML
version: 1.1 tasks: - task: string inputs: ... ...
Exemple : données utilisateur
Pour plus d’informations sur les rôles d’utilisateur, consultez Comment Amazon EC2 gère les données utilisateur pour les instances Windows.
L'exemple de YAML document suivant montre un PowerShell script que la EC2Launch version 2 exécute en tant que données utilisateur pour créer un fichier.
version: 1.1 tasks: - task: executeScript inputs: - frequency: always type: powershell runAs: localSystem content: |- New-Item -Path 'C:\PowerShellTest.txt' -ItemType File
Vous pouvez utiliser un XML format pour les données utilisateur compatible avec les versions précédentes de l'agent de lancement. EC2LaunchLa v2 exécute le script en tant que executeScript
tâche dans la UserData
phase. Pour se conformer à la EC2Launch v1 et au EC2Config comportement, le script de données utilisateur s'exécute par défaut en tant que processus attaché/en ligne.
Vous pouvez ajouter des balises facultatives pour personnaliser l’exécution de votre script. Par exemple, pour exécuter le script de données utilisateur lors du redémarrage de l’instance et lors du lancement de l’instance, vous pouvez utiliser la balise suivante :
<persist>true</persist>
Exemple :
<powershell> $file = $env:SystemRoot + "\Temp" + (Get-Date).ToString("MM-dd-yy-hh-mm") New-Item $file -ItemType file </powershell> <persist>true</persist>
Vous pouvez spécifier un ou plusieurs PowerShell arguments à l'aide de la <powershellArguments>
balise. Si aucun argument n'est transmis, la EC2Launch v2 ajoute l'argument suivant par défaut : -ExecutionPolicy Unrestricted
Exemple :
<powershell> $file = $env:SystemRoot + "\Temp" + (Get-Date).ToString("MM-dd-yy-hh-mm") New-Item $file -ItemType file </powershell> <powershellArguments>-ExecutionPolicy Unrestricted -NoProfile -NonInteractive</powershellArguments>
Pour exécuter un script de données XML utilisateur en tant que processus détaché, ajoutez la balise suivante à vos données utilisateur.
<detach>true</detach>
Exemple :
<powershell> $file = $env:SystemRoot + "\Temp" + (Get-Date).ToString("MM-dd-yy-hh-mm") New-Item $file -ItemType file </powershell> <detach>true</detach>
Note
La balise detach n’est pas prise en charge sur les agents de lancement précédents.
Journal des modifications : données utilisateur
Le tableau suivant répertorie les modifications apportées aux données utilisateur et les référence à la version de l'agent EC2Launch v2 applicable.
Version des données utilisateur | Détails | Présenté dans |
---|---|---|
1.1 |
|
EC2LaunchVersion v2 2.0.1245 |
1.0 |
|
EC2Launchv2 version 2.0.0 |
* Lorsqu’il est utilisé avec le fichier agent-config.yml
par défaut.
EC2LaunchCodes de sortie et redémarrages de la v2
Vous pouvez utiliser la EC2Launch version 2 pour définir la manière dont les codes de sortie sont gérés par vos scripts. Par défaut, le code de sortie de la dernière commande exécutée dans un script est signalé comme le code de sortie pour l’ensemble du script. Par exemple, si un script inclut trois commandes et que la première commande échoue mais que les suivantes réussissent, le statut d’exécution est signalé comme success
étant donné que la commande finale a réussi.
Si vous souhaitez qu'un script redémarre une instance, vous devez le spécifier exit
3010
dans votre script, même si le redémarrage est la dernière étape de votre script. exit 3010
demande à EC2Launch v2 de redémarrer l'instance et d'appeler à nouveau le script jusqu'à ce qu'il renvoie un code de sortie qui ne l'est pas3010
, ou jusqu'à ce que le nombre maximal de redémarrages soit atteint. EC2LaunchLa version v2 autorise un maximum de 5 redémarrages par tâche. Si vous tentez de redémarrer une instance à partir d’un script à l’aide d’un mécanisme différent, tel que Restart-Computer
, le statut d’exécution du script sera incohérent. Par exemple, il peut être bloqué dans une boucle de redémarrage ou ne pas effectuer le redémarrage.
Si vous utilisez un format de données XML utilisateur compatible avec les anciens agents, les données utilisateur risquent de s'exécuter plus souvent que prévu. Pour plus d’informations, consultez Le service exécute les données utilisateur plus d’une fois dans la section de résolution des problèmes.
EC2Launchv2 et Sysprep
Le service EC2Launch v2 exécute Sysprep, un outil Microsoft qui vous permet de créer un Windows personnalisé AMI qui peut être réutilisé. Lorsque la EC2Launch v2 appelle Sysprep, elle utilise les fichiers %ProgramData%\Amazon\EC2Launch
pour déterminer les opérations à effectuer. Vous pouvez modifier ces fichiers indirectement à l'aide de la boîte de dialogue des EC2Launchparamètres ou directement à l'aide d'un YAML éditeur ou d'un éditeur de texte. Cependant, certains paramètres avancés ne sont pas disponibles dans la boîte de dialogue des EC2Launchparamètres. Vous devez donc modifier ces entrées directement.
Si vous créez une instance AMI à partir d'une instance après avoir mis à jour ses paramètres, les nouveaux paramètres sont appliqués à toute instance lancée à partir de la nouvelle instanceAMI. Pour plus d'informations sur la création d'unAMI, consultezCréez un compte soutenu EBS par Amazon AMI.