Solucionar problemas de máquinas virtuales de Windows


En este documento se describen los métodos y las herramientas disponibles para resolver los siguientes problemas de arranque de instancias de máquina virtual de Windows de Compute Engine:

  • No puedes conectarte a la VM mediante RDP y la solución de problemas no consigue resolver tu conexión.

  • La pantalla de inicio de sesión no aparece en una captura de pantalla de la VM y parece que la VM no está avanzando ni realizando una actualización.

  • Se ha producido un error de pantalla azul o una máquina virtual se ha congelado o se comporta de forma errática durante el funcionamiento normal.

Si tienes problemas para conectarte a máquinas virtuales Windows, consulta Solución de problemas de RDP.

Si tienes problemas relacionados con la migración a una VM de tercera generación, consulta los problemas conocidos de Windows.

Antes de empezar

  • Consulta el artículo Solución avanzada de problemas de arranque de Windows de Microsoft para obtener información sobre cómo solucionar problemas del proceso de arranque de Windows.
  • Si aún no lo has hecho, configura la autenticación. La autenticación verifica tu identidad para acceder a Google Cloud servicios y APIs. Para ejecutar código o ejemplos desde un entorno de desarrollo local, puedes autenticarte en Compute Engine seleccionando una de las siguientes opciones:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Instala Google Cloud CLI. Después de la instalación, inicializa la CLI de Google Cloud ejecutando el siguiente comando:

      gcloud init

      Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.

    2. Set a default region and zone.

Usar el menú Opciones de arranque avanzadas

Si Windows no se inicia correctamente, usa el menú Opciones de arranque avanzadas para acceder al modo seguro o completar una reparación online del sistema operativo. Para obtener más información, consulta Opciones avanzadas de inicio.

Para acceder al menú Opciones de arranque avanzadas en tu VM de Windows, sigue este procedimiento:

  1. Habilita un dispositivo de pantalla para la VM si aún no lo has hecho.
  2. Conéctate a la consola en serie interactiva de la VM.

  3. Restablece la VM mediante uno de los siguientes métodos:

    Consola

    1. En la consola de Google Cloud , ve a la página Instancias de VM.

      Ir a instancias de VM

    2. Haz clic en el nombre de la VM que quieras restablecer. Se abrirá la página de detalles de la instancia de VM.

    3. Haz clic en el botón Reset (Reiniciar) para reiniciar la VM.

    gcloud

    Usa el gcloud compute instances reset comando para restablecer la VM:

    gcloud compute instances reset VM_NAME --zone=ZONE --project=PROJECT_ID
    

    Haz los cambios siguientes:

    • PROJECT_ID: el ID del proyecto que contiene la VM
    • ZONE: el nombre de la zona en la que se encuentra la máquina virtual
    • VM_NAME: el nombre de la VM

    Símbolo del sistema

    Mientras estés conectado a la consola serie interactiva, abre una sesión de petición de comando y ejecuta el siguiente comando. Para obtener más información sobre cómo abrir una sesión de Símbolo del sistema, consulta Abrir Símbolo del sistema en SAC de Windows.

    shutdown /r /t 0
    

    Se abrirá el menú Gestor de arranque de Windows:

    Menú Gestor de arranque de Windows

  4. Antes de que finalice la cuenta atrás, sigue estos pasos:

    1. Asegúrate de que la consola en serie interactiva sea la ventana activa.

    2. Pulsa la tecla Esc en el teclado.

    3. Pulsa la tecla 8 de tu teclado.

    Se abrirá el menú Opciones de arranque avanzadas:

    Menú Opciones de arranque avanzadas

  5. Usa las teclas de flecha del teclado para seleccionar una opción y, a continuación, ábrela pulsando la tecla Intro.

Habilitar el menú del Gestor de arranque de Windows

Puedes configurar el menú del gestor de arranque de Windows para que se muestre cuando se reinicie una instancia de VM de Windows. Para habilitar el menú del gestor de arranque de Windows, haz lo siguiente:

Conéctate a la VM y abre una ventana de la petición de comandos con acceso de administrador. Si no puedes conectarte a la VM, añade los pasos posteriores como valores a un windows-startup-script-cmd o windows-startup-script-ps1 script de inicio en lugar de ejecutarlos directamente.

Símbolo del sistema

  1. Para habilitar el menú del administrador de arranque de Windows al inicio y añadir un tiempo de espera de 15 segundos, ejecuta los siguientes comandos:

    bcdedit /set {bootmgr} displaybootmenu yes
    
    bcdedit /set {bootmgr} timeout 15
    
  2. Para reiniciar la VM y mostrar el menú del gestor de arranque de Windows en la consola serie, usa el siguiente comando:

    shutdown -r -t 0
    

PowerShell

  1. Para habilitar el menú del administrador de arranque de Windows al inicio y añadir un tiempo de espera de 15 segundos, ejecuta los siguientes comandos:

    bcdedit /set '{bootmgr}' displaybootmenu yes
    
    
    bcdedit /set '{bootmgr}' timeout 15
    
  2. Para reiniciar la VM y mostrar el menú del gestor de arranque de Windows en la consola serie, usa el siguiente comando:

    shutdown -r -t 0
    

Completar una reparación sin conexión

Si tu máquina virtual no se inicia correctamente y no has podido resolver el problema con el menú de arranque avanzado, prueba a realizar una reparación sin conexión con una instancia de máquina virtual de Windows que funcione para la recuperación con una captura del disco de arranque de la máquina virtual que tiene problemas. Si usas una captura, tendrás una copia de seguridad que podrás modificar sin cambiar el estado de la máquina virtual original.

  1. Crea una instantánea del disco de arranque de la VM que tiene problemas.

  2. Crea un disco con esa instantánea.

  3. Crea una VM con un disco adicional que no sea de arranque con el disco que acabas de crear. La VM de recuperación debe cumplir estos criterios:

    • La VM de recuperación debe estar en la misma zona que el disco que se ha creado.
    • La VM de recuperación también debe usar una imagen de Windows Server.
    • La imagen de origen del disco de arranque de la VM de recuperación debe ser diferente a la imagen de origen del disco de arranque de la VM con problemas.
  4. Ahora puedes usar herramientas y utilidades de Windows para intentar reparar sin conexión el disco adicional conectado. Consulta la siguiente documentación para obtener más información sobre cómo completar una reparación sin conexión de tu VM:

  5. Si la reparación sin conexión se ha completado correctamente, actualiza el disco de arranque de la VM que tiene problemas para que sea el disco de arranque recién reparado.

  6. Opcional: Elimina los recursos adicionales cuando ya no los necesites:

Solucionar problemas de errores de pantalla azul

El sistema operativo Windows puede mostrar un código de error o un error de pantalla azul, también conocido como "pantalla azul de la muerte". Si una máquina virtual muestra un error de pantalla azul, la máquina virtual deja de ejecutarse y debe reiniciarse para reanudar las operaciones normales.

Si crees que se ha producido un error de pantalla azul, confírmalo identificando la presencia de errores mediante uno o varios de los siguientes métodos:

Puerto serie 1

  1. En la consola de Google Cloud , ve a la página Instancias de VM.

    Ir a instancias de VM

  2. Haga clic en el nombre de la VM de la que quiera ver los registros. Se abrirá la página de detalles de la instancia de VM.

  3. En Registros, haz clic en Puerto serie 1.

  4. Un volcado de seguimiento de pila similar al siguiente confirma que se ha producido un error de pantalla azul:

    ntoskrnl.exe [0xFFFFF802C9606000, 0xFFFFF802C9E23000]
    netbios.sys [0xFFFFF80E98430000, 0xFFFFF80E98442000]
    volmgr.sys [0xFFFFF80E97E40000, 0xFFFFF80E97E58000]
    NTFS.sys [0xFFFFF80E98060000, 0xFFFFF80E98293000]
    crashdmp.sys [0xFFFFF80E986C0000, 0xFFFFF80E986D9000]
    pvpanic.sys [0xFFFFF80E99030000, 0xFFFFF80E9903C000]
    myfault.sys [0xFFFFF80E9A570000, 0xFFFFF80E9A578000]
    Dumping stack trace:
    0xFFFFF80E990317C7 (pvpanic.sys+0x17C7)
    0xFFFFF80E990316D3 (pvpanic.sys+0x16D3)
    0xFFFFF802C97D9681 (ntoskrnl.exe+0x1D3681)
    0xFFFFF802C97D8A1F (ntoskrnl.exe+0x1D2A1F)
    0xFFFFF802C97633F4 (ntoskrnl.exe+0x15D3F4)
    0xFFFFF802C9773329 (ntoskrnl.exe+0x16D329)
    0xFFFFF802C976F152 (ntoskrnl.exe+0x169152)
    0xFFFFF80E9A572794 (myfault.sys+0x2794)
    Current Process: notmyfault64.e
    

Puerto serie 2

  1. En la consola de Google Cloud , ve a la página Instancias de VM.

    Ir a instancias de VM

  2. Haga clic en el nombre de la VM de la que quiera ver los registros. Se abrirá la página de detalles de la instancia de VM.

  3. En Registros, despliega Más y, a continuación, haz clic en Puerto serie 2 (consola).

  4. Revisa el puerto serie de la instancia y busca una salida similar a la siguiente:

    !SAC>
    Your PC ran into a problem and needs to restart.
    If you call a support person, give them this info:
    UNEXPECTED_KERNEL_MODE_TRAP
    
    myfault.sys
    
    0x0000000000000008
    0xFFFFC6812AB94F70
    0xFFFFC6812E38EFF0
    0xFFFFF80E9A572794
    
    We're just collecting some error info, and then we'll restart for you.
    100% complete
    

Símbolo del sistema

  1. Conéctate a la instancia y abre una petición de comando con acceso de administrador.

  2. Para mostrar el evento de pantalla azul más reciente, ejecuta el siguiente comando:

    wevtutil qe System "/q:*[System [(EventID=1001)]]" /rd:True /c:1 /f:Text
    
  3. Revisa el resultado, que debería ser similar al siguiente:

    Event[0]:
      Log Name: System
      Source: Microsoft-Windows-WER-SystemErrorReporting
      Date: 2021-04-14T08:53:52.933
      Event ID: 1001
      Task: N/A
      Level: Error
      Opcode: N/A
      Keyword: Classic
      User: N/A
      User Name: N/A
      Computer: WINDOWS
      Description:
    The computer has rebooted from a bugcheck.  The bugcheck was: 0x1000007f (0x
    0000000000000008, 0xffffc6812ab94f70, 0xffffc6812e38eff0, 0xfffff80e9a572794
    ). A dump was saved in: C:\Windows\Minidump\041421-12656-01.dmp. Report Id:
    a5710c98-a577-4b3e-a3c9-2fc0aa4e5d83.
    

Para obtener información sobre cómo personalizar las consultas wetutil, consulta wevtutil.

Captura del disco

Si la máquina virtual ya no funciona o si los otros métodos no han dado resultado. Puedes inspeccionar el disco de arranque de la VM con pantalla azul sospechosa con una VM secundaria. Si usas una captura, tendrás una copia de seguridad que podrás modificar sin cambiar el estado de la máquina virtual original.

  1. Crea una instantánea del disco de arranque de la VM que sospechas que tiene una pantalla azul.

  2. Crea un disco con esa instantánea.

  3. Crea una VM con un disco adicional que no sea de arranque con el disco recién creado de la VM sospechosa. Tu VM de recuperación debe cumplir estos criterios:

    • La VM de recuperación debe estar en la misma zona que el disco que se ha creado.
    • La VM de recuperación también debe usar una imagen de Windows Server.
    • La imagen de origen del disco de arranque de la VM de recuperación debe ser diferente de la imagen de origen del disco de arranque de la VM con problemas.
  4. Busca en el disco adicional los siguientes archivos:

    %SystemRoot%\Memory.dmp
    %SystemRoot%\Minidump\DATE-TIME-NUM.dmp
    

    La fecha y la hora del archivo pueden ayudarte a determinar si la instancia sospechosa ha experimentado un error de pantalla azul. Estos archivos también se pueden usar para realizar análisis y diagnósticos.

  5. Opcional: Elimina los recursos adicionales cuando ya no los necesites:

Una vez que hayas obtenido la información del error de pantalla azul y, opcionalmente, hayas accedido al archivo de volcado de memoria, sigue los pasos de diagnóstico y las recomendaciones que proporciona Microsoft:

Problemas con licencias

Los sistemas operativos Windows renuevan sus licencias cada siete días conectándose al servidor Key Management Service (KMS). Si recibes mensajes sobre la caducidad de la licencia o cualquier otro problema relacionado con las licencias de tus máquinas virtuales Windows, haz lo siguiente:

  1. Confirma que la red VPC de tu VM Windows esté configurada para permitir la comunicación con KMS.

  2. Confirma que el Firewall de Windows permite las conexiones salientes al servidor KMS:

    • Dirección IP: 35.190.247.13
    • Puerto: 1688
    • Protocolo: TCP

    Para obtener más información sobre cómo configurar reglas avanzadas de Firewall de Windows, consulta el artículo Crear una regla de puerto de salida.

  3. Para comprobar que la conexión con el servidor KMS se ha realizado correctamente, ejecuta el siguiente comando en Cloud Shell:

    gcloud network-management connectivity-tests create test-access-to-gcp-kms \
        --source-ip-address=WINDOWS_VM_IP_ADDRESS \
        --destination-ip-address=35.190.247.13 \
        --destination-port=1688 \
        --protocol=TCP
    

    Como se muestra en la siguiente imagen, deberías ver Siguiente salto: pasarela de Internet en el campo Ruta estática de la tarjeta de resultados Prueba de conectividad. Si ves un resultado diferente, la activación de Windows no se completará. Resultado de la prueba de conectividad de KMS.. En el resultado debería aparecer un estado Reachability y un resultado Successful.

  4. Ejecuta los siguientes comandos para confirmar el estado actual de tu licencia, definir la dirección IP del servidor del KMS y forzar una activación:

    cscript \windows\system32\slmgr.vbs /dlv
    
    cscript \windows\system32\slmgr.vbs /skms 35.190.247.13:1688
    
    cscript \windows\system32\slmgr.vbs /ato
    

Solucionar problemas de la consola en serie interactiva

  1. Asegúrate de que cumples los requisitos previos para acceder a la consola en serie.

  2. Habilita Servicios de gestión de emergencias. Si EMS está desactivado, la consola serie no aceptará ninguna entrada de teclado, sino que solo mostrará una pantalla en blanco con un cursor parpadeante.

    Símbolo del sistema

    1. Conéctate a la VM mediante RDP y abre Command Prompt como administrador. Si no puedes usar RDP, añade los pasos siguientes como valores a la clave de inicio windows-startup-script-cmd.

    2. Define los ajustes de redirección de EMS global para usar COM2, una velocidad de transmisión de 115200 y habilita EMS.

      bcdedit /emssettings EMSPORT:2 EMSBAUDRATE:115200
      bcdedit /ems on
      
    3. Reinicia la VM para aplicar la configuración actualizada. Si usas una secuencia de comandos de metadatos, no añadas el comando de cierre.

      shutdown -r -t 0
      

    PowerShell

    1. Conéctate mediante RDP y abre Powershell como administrador. Si no puedes usar RDP, añade los pasos siguientes como valores a la clave de inicio windows-startup-script-ps1.

    2. Define los ajustes de redirección de EMS global para usar COM2, una velocidad de transmisión de 115200 y habilita EMS.

      bcdedit /emssettings EMSPORT:2 EMSBAUDRATE:115200
      bcdedit /ems on
      
    3. Reinicia la VM para aplicar la configuración actualizada. Si usas una secuencia de comandos de metadatos, no añadas el comando de cierre.

      shutdown -r -t 0
      

Siguientes pasos