Compartir a través de


Reparación de una máquina virtual Linux mediante los comandos de reparación de máquinas virtuales de Azure.

Se aplica a: ✔️ Máquinas virtuales Linux

Si la máquina virtual Linux de Azure se encuentra un error de disco o de arranque, deberá realizar la mitigación en el propio disco. 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 utilizar los comandos de reparación de máquinas virtuales de Azure para conectar el disco a otra máquina virtual Linux para corregir los errores y, posteriormente, reconstruir la máquina virtual original.

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.

Siga estos pasos para solucionar el problema de la máquina virtual:

  1. Inicio de Azure Cloud Shell
  2. Ejecutar az extension add/update
  3. Ejecutar az vm repair create
  4. Ejecutar az vm repair run o completar los pasos de mitigación.
  5. Ejecutar az vm repair restore

Para ver todos los parámetros y comandos de reparación de máquinas virtuales disponibles, consulte az vm repair.

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

  1. 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 de reparación que tardará más de 20 minutos, es posible 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 acudiendo a 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 usar az account set --subscription de la referencia de az account set.

  2. 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
    
  3. 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.

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 password1234 --verbose
  1. 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 usar az 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 lin-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.

  2. 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

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.