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 Windows à l’aide d’EC2Launch
EC2Launch est un ensemble de PowerShell scripts Windows qui ont remplacé le service EC2Config sur les AMI Windows Server 2016 et 2019. Beaucoup de ces AMI sont encore disponibles. EC2Launch v2 est le dernier agent de lancement pour toutes les versions Windows prises en charge, qui remplace à la fois EC2Config et EC2Launch. Pour plus d’informations, consultez Configurer une instance Windows à l’aide d’EC2Launch v2.
Note
Pour utiliser EC2Launch avec IMDSv2, la version doit être 1.3.2002730 ou ultérieure.
Table des matières
Tâches EC2Launch
EC2Launch effectue les tâches suivantes par défaut pendant le démarrage initial de l’instance :
-
Configure un nouveau fond d’écran qui présente les informations relatives à l’instance.
-
Définit le nom de l'ordinateur sur l'adresse IPv4 privée de l'instance.
-
Envoie les informations d’instance à la console Amazon EC2.
-
Envoie l’empreinte numérique du certificat RDP à la console EC2.
-
Définit un mot de passe aléatoire pour le compte d’administrateur.
-
Ajoute des suffixes DNS.
-
Etend de manière dynamique la partition du système d’exploitation pour inclure l’espace non partitionné.
-
Exécute les données utilisateur (si spécifié). Pour plus d’informations sur la spécification de données utilisateur, consultez Utiliser les données utilisateur d’instance.
-
Définit des itinéraires statiques persistants pour atteindre le service de métadonnées et AWS KMS les serveurs.
Important
Si une AMI personnalisée est créée à partir de cette instance, ces routes sont capturées dans le cadre de la configuration du système d’exploitation et toutes les nouvelles instances lancées à partir de cette AMI conserveront les mêmes routes, quel que soit leur placement sur le sous-réseau. Pour mettre à jour les routes, consultez Mettre à jour les routes des métadonnées/serveurs KMS pour Server 2016 et versions ultérieures lors du lancement d’une AMI personnalisée.
Les tâches suivantes contribuent à assurer la rétrocompatibilité avec le service EC2Config. Vous pouvez également configurer EC2Launch pour réaliser ces tâches au moment du démarrage :
-
Initialiser des volumes EBS secondaires.
-
Envoyer des journaux d’événements Windows aux journaux de console EC2
-
Envoyer le message Windows is ready to use (Windows est prêt à être utilisé) à la console EC2
Pour plus d’informations concernant Windows Server 2019, consultez la page relative à la comparaison des fonctions dans les versions de Windows Server
Télémétrie
La télémétrie est une information supplémentaire qui permet de mieux AWS comprendre vos besoins, de diagnostiquer les problèmes et de fournir des fonctionnalités pour améliorer votre expérience avec AWS les services.
La version EC2Launch 1.3.2003498
et les versions ultérieures collectent les données de télémétrie, comme les métriques d’utilisation et les erreurs. Ces données sont collectées à partir de l’instance Amazon EC2 sur laquelle s’exécute EC2Launch. Cela inclut toutes les AMI Windows détenues par AWS.
Les types de données télémétriques suivants sont collectés par EC2Launch :
-
Usage information (Informations d’utilisation) : commandes de l’agent, méthode d’installation et fréquence d’exécution planifiée.
-
Errors and diagnostic information (Erreurs et informations de diagnostic) : installation de l’agent et exécution des codes d’erreur.
Exemples de données collectées :
2021/07/15 21:44:12Z: EC2LaunchTelemetry: IsAgentScheduledPerBoot=true
2021/07/15 21:44:12Z: EC2LaunchTelemetry: IsUserDataScheduledPerBoot=true
2021/07/15 21:44:12Z: EC2LaunchTelemetry: AgentCommandCode=1
2021/07/15 21:44:12Z: EC2LaunchTelemetry: AgentCommandErrorCode=5
2021/07/15 21:44:12Z: EC2LaunchTelemetry: AgentInstallCode=2
2021/07/15 21:44:12Z: EC2LaunchTelemetry: AgentInstallErrorCode=0
La télémétrie est activée par défaut. Vous pouvez désactiver la collecte de données de télémétrie à tout moment. Si la télémétrie est activée, EC2Launch v2 envoie des données de télémétrie sans notifications supplémentaires au client.
Le choix d’activer ou de désactiver la télémétrie est collecté.
Vous pouvez choisir de vous inscrire ou de vous désinscrire de la collecte de télémétrie. Votre choix est collecté afin de nous assurer que nous le respectons.
Visibilité de la télémétrie
Lorsque la télémétrie est activée, elle apparaît dans la sortie de la console Amazon EC2 comme suit :
2021/07/15 21:44:12Z: Telemetry: <Data>
Désactiver la télémétrie sur une instance
Pour désactiver la télémétrie en paramétrant une variable d’environnement système, exécutez la commande suivante en tant qu’administrateur :
setx /M EC2LAUNCH_TELEMETRY 0
Pour désactiver la télémétrie pendant l’installation, exécutez install.ps1
comme suit :
. .\install.ps1 -EnableTelemetry:$false
Vérification de la version d’EC2Launch
Utilisez la PowerShell commande Windows suivante pour vérifier la version installée d'EC2Launch.
PS C:\>
Test-ModuleManifest -Path "C:\ProgramData\Amazon\EC2-Windows\Launch\Module\Ec2Launch.psd1" | Select Version
Structure du répertoire EC2Launch
EC2Launch est installé par défaut sur les AMI Windows Server 2016 et versions ultérieures dans le répertoire racine C:\ProgramData\Amazon\EC2-Windows\Launch
.
Note
Par défaut, Windows masque les fichiers et les dossiers qui se trouvent sous C:\ProgramData
. Pour afficher les fichiers et les répertoires EC2Launch, vous devez tapez le chemin d’accès dans l’Explorateur Windows ou modifier les propriétés de dossier afin d’afficher les fichiers et les dossiers masqués.
Le répertoire Launch
contient les sous-répertoires suivants.
-
Scripts
— Contient les PowerShell scripts qui composent EC2Launch. -
Module
— Contient le module pour créer des scripts liés à Amazon EC2. -
Config
— Contient les fichiers de configuration de script que vous pouvez personnaliser. -
Sysprep
— Contient les ressources Sysprep. -
Settings
— Contient une application pour l’interface utilisateur graphique de Sysprep. -
Library
—Contient des bibliothèques partagées pour les agents de lancement EC2. -
Logs
— Contient les fichiers journaux générés par des scripts.
Version EC2Launch et versions ultérieures 1.3.2004592
Les utilisateurs du Administrators
groupe sont autorisés à accéder à Full control
tous les annuaires EC2Launch. Les utilisateurs qui ne font pas partie du groupe Administrateurs sont autorisés à accéder à Read & execute
tous les annuaires EC2Launch, sauf. C:\ProgramData\Amazon\EC2-Windows\Launch\Module\Config
L'Config
annuaire est réservé aux utilisateurs membres du Administrators
groupe.
Version 1.3.2004491
EC2Launch et antérieures
Tous les répertoires EC2Launch héritent de leurs autorisations, sauf. C:\ProgramData
C:\ProgramData\Amazon\EC2-Windows\Launch\Module\Scripts
Ce dossier hérite de toutes les autorisations C:\ProgramData
initiales depuis sa création, mais empêche les utilisateurs normaux d'accéder CreateFiles
au répertoire.
Configurer EC2Launch
Lorsque votre instance a été initialisée pour la première fois, vous pouvez configurer EC2Launch pour s’exécuter à nouveau et effectuer des tâches de start-up distinctes.
Tâches
Configuration des tâches d’initialisation
Spécifiez les paramètres dans le fichier LaunchConfig.json
pour activer ou désactiver les tâches d’initialisation suivantes :
-
Définissez le nom d'ordinateur sur l'adresse IPv4 privée de l'instance.
-
Réglez le moniteur pour qu’il reste toujours en fonction.
-
Configurer un nouveau fond d’écran
-
Ajouter une liste de suffixes DNS
Note
Cela ajoute une recherche de suffixe DNS pour le domaine suivant et configure d'autres suffixes standard. Pour plus d'informations sur la façon dont les agents de lancement définissent les suffixes DNS, consultez. Configurer le suffixe DNS
region
.ec2-utilities.amazonaws.com -
Elargir la taille de volume de démarrage
-
Définir le mot de passe de l’administrateur
Pour configurer les paramètres d’initialisation
-
Dans l’instance à configurer, ouvrez le fichier suivant
C:\ProgramData\Amazon\EC2-Windows\Launch\Config\LaunchConfig.json
dans un éditeur de texte. -
Mettez à jour les paramètres suivants au besoin et enregistrez vos modifications. Indiquez un mot de passe dans
adminPassword
uniquement siadminPasswordtype
estSpecify
.{ "setComputerName": false, "setMonitorAlwaysOn": true, "setWallpaper": true, "addDnsSuffixList": true, "extendBootVolumeSize": true, "handleUserData": true, "adminPasswordType": "Random | Specify | DoNothing", "adminPassword": "password that adheres to your security policy (optional)" }
Les types de mots de passe sont définis comme suit :
Random
-
EC2Launch gé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
-
EC2Launch utilise le mot de passe que vous spécifiez dans
adminPassword
. Si ce 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 fichierLaunchConfig.json
sous forme de texte clair et est supprimé une fois que le mot de passe est défini par Sysprep. EC2Launch chiffre le mot de passe à l’aide de la clé de l’utilisateur. DoNothing
-
EC2Launch utilise le mot de passe que vous spécifiez dans le fichier
unattend.xml
. Si vous ne spécifiez pas de mot de passe dansunattend.xml
, le compte d’administrateur est désactivé.
-
Dans Windows PowerShell, exécutez la commande suivante pour planifier l'exécution du script en tant que tâche planifiée Windows. Le script s’exécute une seule fois lors du prochain démarrage, puis désactive toute nouvelle exécution de ces tâches.
PS C:\>
C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\InitializeInstance.ps1 -Schedule
Planification d’EC2Launch pour exécution lors de chaque démarrage
Vous pouvez planifier l’exécution d’EC2Launch lors de chaque démarrage plutôt que seulement lors du démarrage initial.
Pour activer l’exécution d’EC2Launch lors de chaque démarrage :
Ouvrez Windows PowerShell et exécutez la commande suivante :
PS C:\>
C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\InitializeInstance.ps1 -SchedulePerBootOu exécutez le fichier exécutable avec la commande suivante :
PS C:\>
C:\ProgramData\Amazon\EC2-Windows\Launch\Settings\Ec2LaunchSettings.exeEnsuite, sélectionnez
Run EC2Launch on every boot
. Vous pouvez spécifierShutdown without Sysprep
ouShutdown with Sysprep
pour votre instance EC2.
Note
Lorsque vous activez l’exécution d’EC2Launch à chaque démarrage, voici ce qui se produira lors de la prochaine exécution d’EC2Launch :
-
Si
AdminPasswordType
est toujours défini surRandom
, EC2Launch générera un nouveau mot de passe au prochain démarrage. Après ce démarrage,AdminPasswordType
est automatiquement défini surDoNothing
pour empêcher EC2Launch de générer de nouveaux mots de passe lors des démarrages suivants. Pour empêcher EC2Launch de générer un nouveau mot de passe lors du premier démarrage, définissez manuellementAdminPasswordType
surDoNothing
avant de redémarrer. -
HandleUserData
sera redéfini surfalse
sauf sipersist
est défini surtrue
pour les données utilisateur. Pour plus d’informations sur les scripts de données utilisateur, consultez Scripts de données utilisateur dans le Guide de l’utilisateur Amazon EC2.
Initialisation des disques et mappage des lettres de lecteur
Spécifiez les paramètres dans le fichier DriveLetterMappingConfig.json
pour mapper les lettres de lecteur avec les volumes appropriés de votre instance EC2. Le script initialise les lecteurs qui ne sont pas encore initialisés et partitionnés. Pour plus d’informations sur l’obtention de détails sur les volumes sous Windows, veuillez consulter Get-Volume
Pour mapper les lettres de lecteur avec les volumes
-
Ouvrez le fichier
C:\ProgramData\Amazon\EC2-Windows\Launch\Config\DriveLetterMappingConfig.json
dans un éditeur de texte. -
Spécifiez les paramètres de volume suivants et enregistrez vos modifications :
{ "driveLetterMapping": [ { "volumeName": "
sample volume
", "driveLetter": "H
" } ] } -
Ouvrez Windows PowerShell et utilisez la commande suivante pour exécuter le script EC2Launch qui initialise les disques :
PS C:\>
C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\InitializeDisks.ps1Pour initialiser les disques chaque fois que l’instance démarre, ajoutez l’indicateur
-Schedule
comme suit :PS C:\>
C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\InitializeDisks.ps1 -Schedule
Envoi des journaux d’événements Windows à la console EC2
Spécifiez les paramètres dans le fichier de EventLogConfig.json
afin d’envoyer les journaux d’événements Windows aux journaux de la console EC2.
Pour configurer les paramètres permettant d’envoyer les journaux d’événements Windows
-
Sur l’instance, ouvrez le fichier
C:\ProgramData\Amazon\EC2-Windows\Launch\Config\EventLogConfig.json
dans un éditeur de texte. -
Configurez les paramètres de journaux suivants au besoin et enregistrez vos modifications.
{ "events": [ { "logName": "
System
", "source": "An event source (optional)
", "level": "Error | Warning | Information
", "numEntries":3
} ] } -
Sous Windows PowerShell, exécutez la commande suivante afin que le système planifie l'exécution du script en tant que tâche planifiée Windows à chaque démarrage de l'instance.
PS C:\>
C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\SendEventLogs.ps1 -ScheduleTrois minutes trois ou plus peuvent être nécessaires pour voir les journaux dans la console EC2.
Envoi du message « Windows Is Ready » après un démarrage réussi
Le service EC2Config envoyait le message « Windows est prêt » dans la console EC2 après chaque démarrage. EC2Launch envoie ce message uniquement après le démarrage initial. Pour assurer la rétrocompatibilité avec le service EC2Config, vous pouvez programmer EC2Launch de sorte à envoyer ce message après chaque démarrage. Sur l'instance, ouvrez Windows PowerShell et exécutez la commande suivante. Le système programme le script pour s’exécuter en tant que tâche planifiée Windows.
PS C:\>
C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\SendWindowsIsReady.ps1 -Schedule