Reparación de una máquina virtual Windows mediante los comandos de reparación de máquinas virtuales de Azure
Se aplica a: ✔️ Máquinas virtuales de Windows
Si la máquina virtual Windows de Azure encuentra un error de arranque o disco, es posible que tenga que reparar el disco sin conexión. Un ejemplo habitual sería una actualización de aplicación con error que impide que la máquina virtual se pueda arrancar correctamente. En este artículo se detalla cómo usar comandos de reparación de máquinas virtuales de Azure para conectar automáticamente un disco del sistema operativo roto a otra máquina virtual Windows para la reparación sin conexión. A través de este procedimiento, el disco del sistema operativo con errores se desbloqueará automáticamente en la segunda máquina virtual, denominada máquina virtual de reparación, si el disco está cifrado con Azure Disk Encryption. Cuando el disco con errores está conectado a la máquina virtual de reparación, puede corregir los errores y, a continuación, volver a generar la máquina virtual original con el disco reparado.
Importante
- Los scripts de este artículo solo se aplican a las máquinas virtuales que usan Azure Resource Manager.
- La conectividad de salida de la máquina virtual (puerto 443) es necesaria para que se ejecute el script.
- Solo se puede ejecutar un script a la vez.
- Un script en ejecución no se puede cancelar.
- El tiempo máximo que se puede ejecutar un script es de noventa minutos después de agotarse el tiempo de espera.
- No modifique las etiquetas que se crean en la máquina virtual de reparación. Las etiquetas son necesarias para que el comando restore funcione correctamente.
- En el caso de las máquinas virtuales que usan Azure Disk Encryption, solo se admiten los discos administrados cifrados con el cifrado de un solo paso (con o sin KEK).
Información general del proceso de reparación
Ahora puede usar los comandos de reparación de máquinas virtuales de Azure para cambiar el disco del sistema operativo de una máquina virtual y ya no necesita eliminar y volver a crear dicha máquina virtual.
La sección De ejemplo de proceso de reparación le guiará por el siguiente proceso:
- Inicie Azure Cloud Shell.
- Ejecute
az extension add
oaz extension update
. - Ejecute
az vm repair create
. - Ejecute
az vm repair run
o realice los pasos de mitigación. - Ejecute
az vm repair restore
.
Nota
Para ver todos los parámetros y comandos de reparación de máquinas virtuales disponibles, consulte az vm repair.
Importante
Para ejecutar los comandos, necesita un rol que pueda crear los siguientes tipos de recursos en la suscripción:
- Grupos de recursos
- Virtual Machines
- Etiquetas del recurso
- Redes virtuales
- Grupos de seguridad de red
- Interfaces de red
- Discos
- Direcciones IP públicas (opcional)
Ejemplo del proceso de reparación
Inicio de Azure Cloud Shell
Azure Cloud Shell es un shell interactivo gratuito que puede usar para ejecutar los pasos de este artículo. Incluye las herramientas comunes de Azure preinstaladas y configuradas para usarlas en la cuenta. Si ejecuta un script que tardará más de 20 minutos (por ejemplo: script win-sfc-sf-corruption ), puede que prefiera ejecutar los comandos localmente. Para ejecutar los comandos localmente, se requiere la versión 2.0.67 de la CLI de Azure o una versión posterior. Ejecute
az --version
para encontrar la versión. Si necesita instalar o actualizar la CLI de Azure, consulte Instalación de la CLI de Azure.Para abrir Cloud Shell, seleccione Pruébelo en la esquina superior derecha de un bloque de código. También puede abrir Cloud Shell en una pestaña independiente visitando https://shell.azure.com.
Seleccione Copiar para copiar los bloques de código, luego pegue el código en Cloud Shell y, por último, seleccione Entrar para ejecutarlo.
Si prefiere instalar y usar la CLI localmente, en este inicio rápido se requiere la versión 2.0.67 o posterior de la CLI de Azure. Ejecute
az --version
para encontrar la versión. Si necesita instalar o actualizar la CLI de Azure, consulte Instalación de la CLI de Azure.Si tiene que iniciar sesión en Cloud Shell con una cuenta diferente a la que ha iniciado sesión actualmente en Azure Portal, puede usar
az login
desde la referencia de az login. Para cambiar entre suscripciones asociadas a su cuenta, puede usaraz account set --subscription
de la referencia de az account set.Si es la primera vez que usa los comandos
az vm repair
, agregue la extensión de la CLI vm-repair.az extension add -n vm-repair
Si ha usado anteriormente los comandos
az vm repair
, aplique las actualizaciones a la extensión vm-repair.az extension update -n vm-repair
Ejecute
az vm repair create
. Este comando creará una copia del disco del sistema operativo para la máquina virtual no funcional, creará una máquina virtual de reparación en un nuevo grupo de recursos y conectará la copia del disco del sistema operativo. La máquina virtual de reparación tendrá el mismo tamaño y región que la máquina virtual no funcional especificada. El grupo de recursos y el nombre de la máquina virtual que se usan en todos los pasos serán los de la máquina virtual no funcional. Si la máquina virtual usa Azure Disk Encryption, use--unlock-encrypted-vm
para desbloquear el disco cifrado para que sea accesible cuando esté conectado a la máquina virtual de reparación. Para obtener más información, vea confirmar que ADE está habilitado en el disco. Si necesita solucionar problemas de la máquina virtual en un entorno de Hyper-V anidado, use--enable-nested
y la máquina virtual de reparación se creará con el rol hyper-V habilitado junto con una máquina virtual anidada mediante la copia del disco del sistema operativo.
Importante
Los comandos de ejecución y restauración requerirán que se escriban todas las entradas con el mismo caso que se usa en el comando create, anote o consulte las etiquetas de la máquina virtual de reparación para ver lo que se usó.
Ejemplo de reparación de máquinas virtuales
az vm repair create -g MyResourceGroup -n myVM --repair-username username --repair-password 'password!234' --verbose
Ejemplo de reparación de máquinas virtuales con Hyper-V anidado
az vm repair create -g MyResourceGroup -n myVM --repair-username username --repair-password 'password!234' --enable-nested --verbose
Ejecute
az vm repair run
. Este comando ejecutará el script de reparación especificado en el disco conectado a través de la máquina virtual de reparación. Si la guía de solución de problemas que usa se especifica un run-id, úsela aquí. De lo contrario, puede usaraz vm repair list-scripts
para ver los scripts de reparación disponibles. El grupo de recursos y el nombre de la máquina virtual que se usan aquí son para la máquina virtual no funcional que se emplea en el paso 3. Puede encontrar información adicional sobre los scripts de reparación en la biblioteca de scripts de reparación.az vm repair run -g MyResourceGroup -n MyVM --run-on-repair --run-id win-hello-world --verbose
Opcionalmente, puede completar los pasos de mitigación manuales necesarios con la máquina virtual de reparación y, a continuación, continuar con el paso 5.
Ejecute
az vm repair restore
. Este comando cambiará el disco del sistema operativo que se reparó por el disco del sistema operativo original de la máquina virtual. El grupo de recursos y el nombre de la máquina virtual que se usan aquí son para la máquina virtual no funcional que se emplea en el paso 3.az vm repair restore -g MyResourceGroup -n MyVM --verbose
Comprobación y habilitación del diagnóstico de arranque
En el ejemplo siguiente se habilita la extensión de diagnóstico en la máquina virtual denominada myVMDeployed
en el grupo de recursos myResourceGroup
:
CLI de Azure
az vm boot-diagnostics enable --name myVMDeployed --resource-group myResourceGroup --storage https://mystor.blob.core.windows.net/
Pasos siguientes
- Si tiene problemas para conectarse a la máquina virtual, consulte Solución de problemas de conexiones RDP a una máquina virtual de Azure.
- Para problemas con el acceso a aplicaciones que se ejecutan en su máquina virtual, consulte Solución de problemas de conectividad de aplicaciones en una máquina virtual en Azure.
- Para más información sobre el uso de Resource Manager, consulte Información general de Azure Resource Manager.
Ponte en contacto con nosotros para obtener ayuda
Si tiene preguntas o necesita ayuda, cree una solicitud de soporte o busque consejo en la comunidad de Azure. También puede enviar comentarios sobre el producto con los comentarios de la comunidad de Azure.