Problemas comunes con las instancias de Windows - Amazon Elastic Compute Cloud

Problemas comunes con las instancias de Windows

A continuación se ofrecen algunas sugerencias para solucionar problemas comunes con instancias EC2 que se ejecutan en Windows Server.

Los volúmenes de EBS no se inicializan en Windows Server 2016 y versiones posteriores

Las instancias creadas a partir de imágenes de Amazon Machine (AMI) para Windows Server 2016 y versiones posteriores utilizan el servicio EC2Launch para una serie de tareas de inicio, entre ellas la inicialización de volúmenes de EBS. De forma predeterminada, EC2Launch no inicia volúmenes secundarios. Puede configurar EC2Launch para que inicialice estos discos automáticamente.

Para mapear las letras de unidad con los volúmenes

  1. Conéctese a la instancia que desea configurar y abra el archivo C:\ProgramData\Amazon\EC2-Windows\Launch\Config\DriveLetterMappingConfig.json en un editor de texto.

  2. Especifique la configuración del volumen usando el formato siguiente:

    { "driveLetterMapping": [ { "volumeName": "sample volume", "driveLetter": "H" } ] }
  3. Guarde los cambios y cierre el archivo.

  4. Abra Windows PowerShell y utilice el siguiente comando para ejecutar el script de EC2Launch que inicializa los discos:

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

    Para inicializar los discos cada vez que se arranca la instancia, añada la marca -Schedule de la siguiente manera:

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

    Si el script de EC2Launch no lanza los volúmenes, asegúrese de que estén en línea. Si los volúmenes no están en línea, ejecute el siguiente comando para conectar todos los discos.

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

Arranque una instancia EC2 de Windows en modo DSRM (Directory Services Restore Mode)

Si una instancia que ejecuta Microsoft Active Directory experimenta un error del sistema u otro problema crítico, puede solucionarlo arrancando la instancia en una versión especial del modo seguro denominada Directory Services Restore Mode (DSRM). En modo DSRM, puede reparar o recuperar Active Directory.

Soporte de los controladores para DSRM

El modo de habilitar DSRM y arrancar en la instancia depende de los controladores que ejecute la instancia. En la consola de EC2, puede ver los detalles de las versiones de los controladores de una instancia del registro del sistema. En la tabla siguiente se muestran los controladores admitidos para DSRM.

Versiones de controlador ¿Admite DSRM? Pasos siguientes
Citrix PV 5.9 No Restaure la instancia desde un backup. No puede habilitar DSRM.
AWS PV 7.2.0 No Si bien DSRM no se admite con este controlador, puede separar el volumen raíz de la instancia, tomar una instantánea del volumen o crear una AMI, y adjuntarlo a otra instancia de la misma zona de disponibilidad como un volumen secundario. Después, puede habilitar DSRM (como se describe en esta sección).
AWS PV 7.2.2 y posterior Separe el volumen raíz, adjúntelo a otra instancia y habilite DSRM (como se describe en esta sección).
Redes mejoradas Separe el volumen raíz, adjúntelo a otra instancia y habilite DSRM (como se describe en esta sección).

Para obtener más información acerca de cómo habilitar las redes mejoradas, consulte Habilitar las redes mejoradas en instancias de Windows en una VPC. Para obtener más información acerca de las actualizaciones de los controladores PV de AWS, consulte Actualizar controladores PV en instancias de Windows.

Configuración de una instancia para arrancar en modo DSRM

Las instancias de Windows de EC2 no tienen conexión de red hasta que el sistema operativo está en ejecución. Por esta razón, no puede presionar la tecla F8 del teclado para seleccionar una opción de arranque. Debe seguir uno de estos procedimientos para arrancar una instancia de Windows Server de EC2 en modo DSRM.

Si sospecha que Active Directory se ha dañado y que la instancia sigue ejecutándose, puede configurar la instancia para que arranque en modo DSRM usando el cuadro de diálogo de configuración del sistema o el símbolo del sistema.

Para arrancar una instancia online en DSRM usando el cuadro de diálogo de configuración del sistema

  1. En el cuadro de diálogo Ejecutar, escriba msconfig y pulse Intro.

  2. Elija la pestaña Arranque.

  3. En Opciones de arranque elija Arranque seguro.

  4. Elija Reparar Active Directory y, a continuación, elija Aceptar. El sistema le solicita que reinicie el servidor.

Para reiniciar una instancia online en modo DSRM con la línea de comandos

En una ventana del símbolo del sistema, ejecute el siguiente comando:

bcdedit /set safeboot dsrepair

Si la instancia no está en línea y es inaccesible, debe separar el volumen raíz y adjuntarlo a otra instancia para habilitar el modo DSRM.

Para arrancar una instancia que no está en línea en modo DSRM

  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.

  2. En el panel de navegación, seleccione Instances (Instancias).

  3. Localice y seleccione la instancia afectada. Elija Instance state (Estado de la instancia) y Stop instance (Detener instancia).

  4. Elija Launch instances (Lanzar instancias) y cree una instancia temporal en la misma zona de disponibilidad que la instancia afectada. Elija un tipo de instancia que use una versión de Windows diferente. Por ejemplo, si la instancia es Windows Server 2008, elija una instancia de Windows Server 2008 R2.

    importante

    Si no crea la instancia en la misma zona de disponibilidad que la instancia afectada, no podrá adjuntar el volumen raíz de la instancia afectada a la nueva instancia.

  5. En el panel de navegación, elija Volumes (Volúmenes).

  6. Localice el volumen raíz de la instancia afectada. Separe el volumen y adjúntelo a la instancia temporal que creó anteriormente. Adjúntelo con el nombre de dispositivo predeterminado (xvdf).

  7. Utilice el Escritorio remoto para conectarse a la instancia temporal y, a continuación, utilice la utilidad de Administración de discos para hacer que el volumen esté disponible para su uso.

  8. Abra el símbolo del sistema y ejecute el siguiente comando. Sustituya D por la letra de la unidad del volumen secundario que acaba de adjuntar:

    bcdedit /store D:\Boot\BCD /set {default} safeboot dsrepair
  9. En la utilidad de Administración de discos, elija la unidad que adjuntó anteriormente, abra el menú contextual (clic con el botón derecho) y elija Sin conexión.

  10. En la consola de EC2, separe el volumen afectado de la instancia temporal y vuelva a adjuntarlo a la instancia original con el nombre de dispositivo /dev/sda1. Debe especificar este nombre de dispositivo para designar el volumen como volumen raíz.

  11. Inicie la instancia.

  12. Una vez que la instancia pase las comprobaciones de estado en la consola de EC2, conéctese a la instancia mediante el Escritorio remoto y compruebe si arranca en modo DSRM.

  13. (Opcional) Elimine o detenga la instancia temporal que creó en este procedimiento.

La instancia pierde la conexión de red o las tareas programadas no se ejecutan como se espera

Si reinicia la instancia y pierde la conexión de red, es posible que la instancia tenga la hora incorrecta.

De manera predeterminada, las instancias de Windows usan la hora universal coordinada (UTC). Si establece la hora de la instancia en una zona horaria diferente y después la reinicia, la hora se desplaza y la instancia pierde temporalmente la dirección IP. La instancia recupera la conexión de red finalmente, pero puede llevar varias horas. La cantidad de tiempo que tarda la instancia en recuperar la conexión de red depende de la diferencia entre la hora UTC y la otra zona horaria.

Este mismo problema horario puede dar como resultado que las tareas programadas no se ejecuten cuando se espera. En este caso, las tareas programadas no se ejecutan como se espera porque la instancia tiene la hora incorrecta.

Para usar siempre una zona horaria distinta de UTC, debe establecer la clave del registro RealTimeIsUniversal. Sin esta clave, una instancia usa UTC después de reiniciarla.

Para solucionar los problemas de hora que provocan la pérdida de la conexión de red

  1. Asegúrese de que está ejecutando los controladores PV recomendados. Para obtener más información, consulte Actualizar controladores PV en instancias de Windows.

  2. Compruebe que la siguiente clave del registro existe y que está establecida en 1: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\RealTimeIsUniversal

No se puede obtener el resultado de la consola

Con las instancias de Windows, la consola de la instancia muestra el resultado de las tareas realizadas durante el proceso de arranque de Windows. Si Windows arranca correctamente, el último mensaje que se registra es Windows is Ready to use. Observe que también puede mostrar mensajes de registro de eventos en la consola, pero esta característica no está habilitada de manera predeterminada. Para obtener más información, consulte Propiedades de EC2.

Para obtener la salida de la consola de la instancia utilizando la consola Amazon EC2, selecciona la instancia, luego selecciona Acciones, luego selecciona Supervisar y solucionar problemas y a continuación selecciona Obtener registro del sistema. Para obtener el resultado de la consola usando la línea de comandos, use uno de los comandos siguientes: get-console-output (AWS CLI) o Get-EC2ConsoleOutput (AWS Tools for Windows PowerShell).

En instancias que se ejecutan en Windows Server 2012 R2 y versiones anteriores, si el resultado de la consola está vacío, podría indicar un problema con el servicio EC2Config, como un archivo de configuración mal configurado o que Windows no arrancó correctamente. Para corregir este problema, descargue e instale la última versión de EC2Config. Para obtener más información, consulte Instalar la versión más reciente de EC2Config.

Windows Server 2012 R2 no está disponible en la red

Para obtener información acerca de la solución de problemas de una instancia de Windows Server 2012 R2 que no está disponible en la red, consulte Windows Server 2012 R2 pierde la conexión de red y almacenamiento después de volver a arrancar la instancia.

Colisión de firma de disco

Puede comprobar y resolver colisiones de firmas de disco mediante EC2Rescue for Windows Server. O bien, puede resolver manualmente los problemas de firma de disco si realiza los siguientes pasos:

aviso

En el siguiente procedimiento se describe cómo editar el Registro de Windows mediante el Editor del Registro. Si no está familiarizado con el Registro de Windows o cómo realizar cambios de forma segura mediante el Editor del Registro, consulte Configuración del Registro.

  1. Abra un símbolo del sistema, escriba regedit.exe y, a continuación, presione Enter (Intro).

  2. En el navegador Registry Editor (Editor del Registro), elija HKEY_LOCAL_MACHINE desde el menú contextual (haga clic con el botón derecho) y, luego, elija Find (Buscar).

  3. Escriba Windows Boot Manager y, luego, elija Find Next (Buscar siguiente).

  4. Elija la clave denominada 11000001. Esta clave es un elemento secundario de la clave que encontró en el paso anterior.

  5. En el panel derecho, elija Element y, a continuación, elija Modify (Modificar) desde el menú contextual (haga clic con el botón derecho).

  6. Localice la firma del disco de cuatro bytes en el desplazamiento 0x38 en los datos. Esta es la firma de la base de datos de configuración de arranque (BCD). Invierta los bytes para crear la firma del disco y escríbalo. Por ejemplo, la firma de disco que se representa con los siguientes datos es 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. En una ventana del símbolo del sistema, ejecute el siguiente comando para iniciar Microsoft DiskPart.

    diskpart
  8. Ejecute el siguiente comando “DiskPart” para seleccionar el volumen. (Puede verificar que el número de disco es 1 mediante la utilidad Administración de discos).

    DISKPART> select disk 1 Disk 1 is now the selected disk.
  9. Ejecute el siguiente comando “DiskPart” para obtener la firma del disco.

    DISKPART> uniqueid disk Disk ID: 0C764FA8
  10. Si la firma de disco que se muestra en el paso anterior no coincide con la del disco de BCD que escribió anteriormente, utilice el siguiente comando “DiskPart” para cambiar la firma de disco de manera que coincida:

    DISKPART> uniqueid disk id=E9EB3AA5