Problèmes courants avec les instances Windows - Amazon Elastic Compute Cloud

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.

Problèmes courants avec les instances Windows

Voici des conseils de dépannage pour vous aider à résoudre les problèmes courants liés aux instances Windows Server EC2.

Les volumes EBS ne s'initialisent pas sur Windows Server 2016 et 2019

Les instances créées à partir des AMI (Amazon Machine Image) pour Windows Server 2016 et 2019 utilisent l'agent EC2Launch v1 pour un grand nombre de tâches de démarrage, notamment l'initialisation des volumes EBS. Par défaut, EC2Launch v1 n'initialise pas les volumes secondaires. Toutefois, vous pouvez configurer EC2Launch v1 pour initialiser les disques automatiquement, comme suit.

Mapper les lettres de lecteur avec les volumes
  1. Connectez-vous à l'instance que vous voulez configurer et ouvrez le fichier C:\ProgramData\Amazon\EC2-Windows\Launch\Config\DriveLetterMappingConfig.json dans un éditeur de texte.

  2. Spécifiez les paramètres du volume, comme suit :

    { "driveLetterMapping": [ { "volumeName": "sample volume", "driveLetter": "H" }] }
  3. Enregistrez les modifications, puis fermez le fichier.

  4. Ouvrez Windows PowerShell et utilisez la commande suivante pour exécuter le script EC2Launch v1 qui initialise les disques :

    PS C:\> C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\InitializeDisks.ps1

    Pour 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

    L'agent EC2Launch v1 peut exécuter des scripts d'initialisation d'instance tels que initializeDisks.ps1 en parallèle avec le script InitializeInstance.ps1. Si le script InitializeInstance.ps1 redémarre l'instance, il peut interrompre d'autres tâches planifiées qui s'exécutent au démarrage de l'instance. Pour éviter tout conflit potentiel, nous vous recommandons d'ajouter de la logique à votre script initializeDisks.ps1pour vous assurer que l'initialisation de l'instance est terminée en premier.

    Note

    Si le script EC2Launch n'initialise pas les volumes, assurez-vous que les volumes sont en ligne. Si les volumes sont hors ligne, exécutez la commande suivante pour mettre tous les disques en ligne.

    PS C:\> Get-Disk | Where-Object IsOffline -Eq $True | Set-Disk -IsOffline $False

Démarrer une instance Windows EC2 en mode de restauration des services d'annuaire (DSRM)

Si une instance s'exécutant sur Microsoft Active Directory fait l'objet d'une défaillance système ou rencontre d'autres problèmes majeurs, vous pouvez la dépanner en la démarrant dans une version spéciale du mode sans échec Safe Mode appelé Mode de restauration des services d'annuaire (DSRM). Le mode DSRM vous permet de réparer ou de récupérer Active Directory.

Prise en charge du pilote de DSRM

La méthode avec laquelle vous activez le mode DSRM et démarrez dans l'instance dépend des pilotes que l'instance exécute. Dans la console EC2, vous pouvez afficher les détails de la version du pilote d'une instance dans le journal système. Le tableau suivant montre quels sont les pilotes pris en charge pour DSRM.

Versions des pilotes Mode DSRM pris en charge ? Étapes suivantes
PV Citrix 5.9 Non Restaurez l'instance à partir d'une sauvegarde. Vous ne pouvez pas activer le mode DSRM.
AWS PV 7.2.0 Non Si DSRM n'est pas pris en charge pour ce pilote, vous pouvez toujours détacher le volume racine de l'instance, créer un instantané ou une AMI du volume et l'attacher à une autre instance dans la même zone de disponibilité en tant que volume secondaire. Vous pouvez ensuite activer DSRM (comme décrit dans cette section).
AWS PV 7.2.2 et versions ultérieures Oui Détachez le volume racine, attachez-le à une autre instance, puis activez le mode DSRM (comme décrit dans cette section).
Mise en réseau améliorée Oui Détachez le volume racine, attachez-le à une autre instance, puis activez le mode DSRM (comme décrit dans cette section).

Pour plus d'informations sur la façon d'activer la mise en réseau améliorée, consultezActivez une mise en réseau améliorée avec l'Elastic Network Adapter (ENA) sur vos instances EC2. Pour plus d'informations sur la mise à niveau des pilotes AWS PV, voir Mettre à niveau les pilotes PV sur les instances Windows.

Configurer une instance à démarrer dans le mode DSRM

Les instances Windows EC2 n'ont pas de connectivité réseau tant que le système d'exploitation ne s'exécute pas. C'est pourquoi vous ne pouvez pas appuyer sur la touche F8 de votre clavier pour sélectionner une option de démarrage. Vous devez utiliser l'une des procédures suivantes pour démarrer une instance Windows Server EC2 dans le mode DSRM.

Si vous craignez qu'Active Directory ait été corrompu et que l'instance soit toujours en cours d'exécution, vous pouvez configurer l'instance pour démarrer dans le mode DSRM à l'aide de la boîte de dialogue Configuration du système ou l'invite de commande.

Pour démarrer une instance en ligne dans le mode DSRM à l'aide de la boîte de dialogue Configuration du système
  1. Dans la boîte de dialogue Exécuter, tapez msconfig et appuyez sur Entrée.

  2. Choisissez l'onglet Démarrage.

  3. Sous Options de démarrage, choisissez Démarrage sécurisé.

  4. Choisissez Réparer Active Directory, puis OK. Le système vous invite à redémarrer le serveur.

Pour démarrer une instance en ligne dans le mode DSRM à l'aide de la ligne de commande

A partir d'une fenêtre d'invite de commande, exécutez la commande suivante :

bcdedit /set safeboot dsrepair

Si une instance est hors ligne et inaccessible, vous devez détacher le volume racine et l'attacher à une autre instance pour activer le mode DSRM.

Pour démarrer une instance hors ligne dans le mode DSRM
  1. Ouvrez la console Amazon EC2 sur https://console.aws.amazon.com/ec2/.

  2. Dans le panneau de navigation, choisissez Instances.

  3. Recherchez et sélectionnez l'instance affectée. Choisissez État de l'instance, Arrêter l'instance.

  4. Choisissez Lancer les instances et créez une instance temporaire dans la même zone de disponibilité que l'instance affectée. Choisissez un type d'instance qui utilise une autre version de Windows. Par exemple, si votre instance est Windows Server 2016, choisissez une instance Windows Server 2019.

    Important

    Si vous ne créez pas l’instance dans la même zone de disponibilité que l’instance affectée, vous ne pourrez pas attacher le volume racine de celle-ci à la nouvelle instance.

  5. Dans le panneau de navigation, choisissez Volumes.

  6. Recherchez le volume racine de l'instance affectée. Détachez le volume et attachez-le à l'instance temporaire que vous avez créée précédemment. Attachez-le avec le nom du périphérique par défaut (xvdf).

  7. Utilisez les services Bureau à distance pour vous connecter à l'instance temporaire, puis utilisez l'utilitaire Gestion des disques pour rendre le volume disponible.

  8. Ouvrez une invite de commande et exécutez la commande suivante. Remplacez D par la lettre de lecteur réelle du volume secondaire que vous venez d'attacher :

    bcdedit /store D:\Boot\BCD /set {default} safeboot dsrepair
  9. Dans l'utilitaire Gestion des disques, choisissez le lecteur que vous avez attaché précédemment, ouvrez le menu contextuel (clic droit) et choisissez Hors connexion.

  10. Dans la console Amazon EC2, détachez le volume affecté de l'instance temporaire et rattachez-le à votre instance originale avec le nom de périphérique /dev/sda1. Vous devez spécifier ce nom de périphérique pour désigner le volume en tant que volume racine.

  11. Démarrez l'instance.

  12. Une fois que l'instance réussit les vérifications de l'état dans la console EC2, connectez-vous à l'instance à l'aide des services Bureau à distance et vérifiez qu'elle démarre dans le mode DSRM.

  13. (Facultatif) Supprimez ou arrêtez l'instance temporaire que vous avez créée au cours de cette procédure.

L'instance perd la connectivité réseau ou les tâches programmées ne s'exécutent pas au moment prévu

Si vous redémarrez votre instance et qu'elle perd sa connectivité réseau, il est possible que l'instance ne soit pas à l'heure.

Par défaut, les instances Windows utilisent l'heure universelle coordonnée (UTC). Si vous définissez l'heure de votre instance sur un autre fuseau horaire et que vous la redémarrez, l'heure se décale et l'instance perd temporairement son adresse IP. L'instance finit par rétablir sa connectivité réseau, mais cela peut prendre plusieurs heures. Le délai nécessaire pour que l'instance rétablisse sa connectivité réseau dépend de la différence entre l'heure universelle coordonnée (UTC) et l'autre fuseau horaire.

Ce problème peut également entraîner l'absence d'exécution de tâches planifiées au moment prévu. Dans ce cas, les tâches planifiées ne s'exécutent pas au moment prévu, car l'heure de l'instance est incorrecte.

Pour utiliser un fuseau horaire autre que UTC de manière persistante, vous devez définir la clé de RealTimeIsUniversalregistre. Sans cette clé, une instance utilise l'heure universelle coordonnée (UTC) après avoir redémarré.

Pour résoudre les problèmes d'heure qui entraînent une perte de la connectivité réseau
  1. Vérifiez que vous exécutez les pilotes PV recommandés. Pour plus d’informations, consultez Mise à niveau des pilotes PV sur les instances Windows.

  2. Vérifiez que la clé de registre suivante existe et qu'elle est définie sur 1 : HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControl Set \ Control \ Information \ TimeZone RealTime IsUniversal

Impossible d'obtenir la sortie de la console

Pour les instances Windows, la sortie de la console de l'instance affiche la sortie des tâches exécutées à l'aide du processus d'amorçage Windows. Si Windows démarre correctement, le dernier message enregistré est Windows is Ready to use. Vous pouvez également afficher les messages du journal des événements dans la console, mais cette fonctionnalité peut ne pas être activée par défaut en fonction de votre version de Windows. Pour plus d’informations, consultez Configuration des paramètres de lancement pour les instances Windows Amazon EC2.

Pour obtenir la sortie de la console de votre instance à l'aide de la console Amazon EC2, sélectionnez l'instance, puis Actions, Surveiller et dépanner et Obtenir le journal système. Pour obtenir le résultat de la console à l'aide de la ligne de commande, utilisez l'une des commandes suivantes : get-console-output (AWS CLI) ou (). Get-EC2ConsoleOutputAWS Tools for Windows PowerShell

Pour les instances exécutant Windows Server 2012 R2 et versions antérieures, si la sortie de la console est vide, cela peut indiquer un problème avec le service EC2Config, comme un fichier de configuration mal configuré, ou que Windows a échoué à démarrer correctement. Pour corriger ce problème, téléchargez et installez la version la plus récente d'EC2Config. Pour plus d’informations, consultez Installer la dernière version d’EC2Config.

Windows Server 2012 R2 non disponible sur le réseau

Pour plus d'informations sur le dépannage d'une instance Windows Server 2012 R2 qui n'est pas disponible sur le réseau, voir Windows Server 2012 R2 perd la connectivité réseau et de stockage après le redémarrage d'une instance.

Collision de signature de disque

Vous pouvez rechercher et résoudre les collisions de signature de disque à l'aide de EC2Rescue for Windows Server. Vous pouvez également résoudre manuellement les problèmes de signature de disque en effectuant les opérations suivantes :

Avertissement

La procédure suivante décrit comment modifier le Registre Windows à l’aide de l’Éditeur de Registre. Si vous n’êtes pas familier avec le Registre Windows ou comment apporter des modifications en toute sécurité à l’aide de l’Éditeur de Registre, consultez Configurer le registre.

  1. Ouvrez une invite de commande, saisissez regedit.exe, puis appuyez sur Entrée.

  2. Dans Editeur de registre, choisissez HKEY_LOCAL_MACHINE dans le menu contextuel (clic droit), puis choisissez Rechercher.

  3. Cliquez sur Windows Boot Manager, puis.choisissez Rechercher suivant.

  4. Choisissez la clé nommée 11000001. Cette clé est apparentée à la clé que vous avez trouvée à l’étape précédente.

  5. Dans le volet droit, choisissez Element, puis.Modifier à partir du menu contextuel (clic droit).

  6. Localisez la signature du disque de quatre octets au décalage 0x38 dans les données. Il s'agit de la signature BCD (Boot Configuration Database). Inversez les octets pour créer la signature du disque et l’écrire. Par exemple, la signature de disque représentée par les données suivantes est E9EB3AA5 :

    ... 0030 00 00 00 00 01 00 00 00 0038 A5 3A EB E9 00 00 00 00 0040 00 00 00 00 00 00 00 00 ...
  7. Dans une fenêtre d'invite de commandes, exécutez la commande suivante pour démarrer Microsoft DiskPart.

    diskpart
  8. Exécutez la select disk DiskPart commande et spécifiez le numéro de disque du volume concerné par la collision de signature de disque.

    Astuce

    Pour vérifier le numéro de disque du volume présentant la collision de signature de disque, utilisez l'utilitaire Gestion des disques. Ouvrez une invite de commande, saisissez compmgmt.msc, puis appuyez sur Entrée. Dans le volet de navigation de gauche, double-cliquez sur Gestion des disques. Dans l'utilitaire Gestion des disques, vérifiez le numéro de disque du volume présentant la collision de signature de disque.

    DISKPART> select disk 1 Disk 1 is now the selected disk.
  9. Exécutez la DiskPart commande suivante pour obtenir la signature du disque.

    DISKPART> uniqueid disk Disk ID: 0C764FA8
  10. Si la signature de disque affichée à l'étape précédente ne correspond pas à la signature de disque que vous avez notée précédemment, utilisez la DiskPart commande suivante pour modifier la signature de disque afin qu'elle corresponde :

    DISKPART> uniqueid disk id=E9EB3AA5