Conexión de un disco no administrado a una máquina virtual para la reparación sin conexión

Se aplica a: ✔️ Máquinas virtuales de Windows

Algunos escenarios de solución de problemas para máquinas virtuales Windows, como cuando una máquina virtual no se inicia, requieren que repare su disco del sistema operativo sin conexión. En este artículo se describe cómo realizar este tipo de reparación sin conexión cuando el disco del sistema operativo con errores no está administrado.

Determinar si el disco del sistema operativo está administrado o no administrado

Azure Portal

Abra la hoja Información general de la máquina virtual. Si el disco del sistema operativo no está administrado, un banner informativo indica que la máquina virtual no usa discos administrados.

Captura de pantalla de un mensaje de banner en Azure Portal que indica que una máquina virtual no usa discos administrados.

Además, la hoja Información general del disco del sistema operativo anexa "(no administrado)" al nombre del disco si el disco no está administrado, como se muestra a continuación:

Captura de pantalla que muestra la palabra no administrada anexada al nombre de una máquina virtual en Azure Portal.

Si el disco está administrado, la hoja Información general del disco del sistema operativo muestra un campo Administrado por , como se muestra a continuación:

Captura de pantalla de la hoja de información general de un disco en Azure Portal, lo que indica que un disco se administra mediante una máquina virtual.

PowerShell

Para comprobar que el disco del sistema operativo no está administrado, escriba el comando siguiente. (Asegúrese de reemplazar "MyResourceGroup" por el nombre del grupo de recursos y "MyVM" por el nombre de la máquina virtual).

(get-azvm -ResourceGroupName MyResourceGroup -Name MyVM).StorageProfile.OsDisk

Si el disco no está administrado, no aparece ningún valor en la salida junto a ManagedDisk, como en el ejemplo siguiente:

OsType                  : Windows
EncryptionSettings      :
Name                    : MyVM-Disk1
Vhd                     : Microsoft.Azure.Management.Compute.Models.VirtualHardDisk
Image                   :
Caching                 : ReadWrite
WriteAcceleratorEnabled :
DiffDiskSettings        :
CreateOption            : FromImage
DiskSizeGB              : 127
ManagedDisk             :

Si el disco es un disco administrado, verá un valor en la salida junto a ManagedDisk, como en el ejemplo siguiente:

OsType                  : Windows
EncryptionSettings      :
Name                    : MyVM2-Disk1
Vhd                     :
Image                   :
Caching                 : ReadWrite
WriteAcceleratorEnabled :
DiffDiskSettings        :
CreateOption            : FromImage
DiskSizeGB              :
ManagedDisk             : Microsoft.Azure.Management.Compute.Models.ManagedDiskParameters

Interfaz de la línea de comandos de Azure (CLI de Azure)

Puede usar el comando az vm show con la consulta anexada "storageProfile.osDisk.managedDisk" para determinar si el disco tiene discos administrados, como en el ejemplo siguiente:

az vm show -n MyVM -g MyResourceGroup --query "storageProfile.osDisk.managedDisk"

Si los discos no están administrados, el comando no generará ninguna salida. Si se administran los discos, generará una salida como en el ejemplo siguiente:

{
  "diskEncryptionSet": null,
  "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/MyResourceGroup/providers/Microsoft.Compute/disks/MyVm_OsDisk_1",
  "resourceGroup": "MyResourceGroup",
  "storageAccountType": null
}

Creación de una copia del disco del sistema operativo no administrado conectado a la máquina virtual de origen (con errores)

  1. En Azure Portal, detenga la máquina virtual de origen cuyo disco del sistema operativo no está administrado.

  2. En el equipo local, descargue, instale e inicie Microsoft Explorador de Azure Storage. Proporcione las credenciales de Azure cuando se le solicite.

  3. En el panel de navegación Explorador de Storage, expanda la suscripción adecuada.

  4. Seleccione la cuenta de almacenamiento en la que se encuentra el disco duro virtual y, a continuación, seleccione el contenedor adecuado para el disco. De forma predeterminada, los discos del sistema operativo no administrados se almacenan en el contenedor vhds (concedido).

    Captura de pantalla de Explorador de Azure Storage con el contenedor de cuentas de almacenamiento y el contenedor concedido v h d s resaltados en el árbol de navegación.

  5. En el panel derecho, seleccione el disco duro virtual que está conectado a la máquina virtual de origen que desea reparar y, a continuación, seleccione Copiar en la parte superior. Observe que el disco copiado solo se puede pegar en un contenedor de blobs diferente.

    Captura de pantalla de Explorador de Azure Storage que muestra un disco seleccionado con el botón Copiar resaltado.

  6. Cree un contenedor de blobs; para ello, haga clic con el botón derecho en Contenedor de blobs en el panel de navegación y, a continuación, seleccione Crear contenedor de blobs. Asigne al nuevo contenedor de blobs un nombre de su elección, como "copias de disco".

    Captura de pantalla de Explorador de Azure Storage que muestra el menú contextual de Contenedores de blobs en el menú de navegación, con Crear contenedor de blobs resaltado.

  7. Seleccione Pegar para pegar el disco copiado en el nuevo contenedor de blobs.

    Captura de pantalla de Explorador de Azure Storage con el botón Pegar resaltado.

Creación de una máquina virtual de reparación con un disco del sistema operativo no administrado

  1. En Azure Portal, comience el proceso de creación de una máquina virtual basada en Windows Server 2019. Esta nueva máquina virtual actuará como la máquina virtual de reparación y su propio disco del sistema operativo debe no administrarse.

  2. En la página Aspectos básicos del asistente "Crear una máquina virtual", seleccione No se requiere redundancia de infraestructura en la lista Opciones de disponibilidad.

    Captura de pantalla de la página Aspectos básicos del Asistente para crear una máquina virtual, en la que se muestra la opción seleccionada para no ser necesaria la infraestructura.

  3. En la página Discos, expanda Avanzados debajo de Discos de datos y, a continuación, desactive la casilla Usar discos administrados. Seleccione una cuenta de almacenamiento para el disco del sistema operativo no administrado. No seleccione para conectar un disco existente. Captura de pantalla de la página Discos del Asistente para crear una máquina virtual, con la opción Usar disco administrado desactivada. Si no se puede seleccionar la opción Usar discos administrados , intente crear la máquina virtual mediante los comandos siguientes:

    ## Get the subnet ID of the VM
    
    $SubnetID = az network vnet subnet show --resource-group <RG name> --name <Subnet name> --vnet-name <VNet name> --query id -o tsv
    
    ## Create a VM with the unmanaged disk
    
    az vm create \
        --resource-group <RG name>\
        --name <VM name>\
        --image <Image name>\
        --location <location of the VM>\
        --admin-username <Admin name>\
        --subnet $SubnetID\
        --size <VM size>\
        --use-unmanaged-disk  
    
  4. Complete el Asistente para crear una máquina virtual especificando los detalles de configuración adecuados para su organización.

Conexión de una copia del disco no administrado a la máquina virtual de reparación

  1. En Azure Portal, abra la hoja Discos de la nueva máquina virtual de reparación que acaba de crear.

  2. Seleccione + Agregar disco de datos.

    Captura de pantalla de la hoja Discos de la máquina virtual de reparación en Azure Portal, con el botón Agregar disco de datos resaltado.

  3. En la página Adjuntar disco no administrado, seleccione Blob existente como tipo de origen.

    Captura de pantalla de la ventana adjuntar disco no administrado con la opción de blob existente seleccionada.

  4. Debajo del blob de origen, seleccione Examinar y, a continuación, busque la copia del disco del sistema operativo que creó anteriormente.

    Captura de pantalla de la ventana adjuntar disco no administrado con el botón Examinar resaltado.

    Captura de pantalla del contenedor de copias de disco con un disco seleccionado y el botón Seleccionar resaltado.

  5. En la página Asociar disco no administrado, acepte el nombre del blob de almacenamiento predeterminado y, a continuación, seleccione Aceptar.

  6. En la hoja Discos de la nueva máquina virtual de reparación, seleccione Guardar.

    Captura de pantalla de la hoja Discos con el botón Guardar resaltado.

Desbloquee el disco si está cifrado

Si el disco está cifrado con Azure Disk Encryption (ADE), deberá desbloquearlo antes de poder repararlo. Para ello, siga los pasos descritos en Resolución #3: Método manual para desbloquear un disco cifrado en una máquina virtual de reparación.

Puede determinar si el disco está cifrado mediante el procedimiento siguiente: Confirme que ADE está habilitado en el disco.

Reemplazo del disco del sistema operativo en la máquina virtual de origen

Después de terminar de reparar el disco, siga estos pasos:

  1. Desasocie el disco del sistema operativo de la máquina virtual de origen mediante la CLI de Azure o PowerShell.

    CLI de Azure

    Use el comando az vm unmanaged-disk detach , como en el ejemplo siguiente:

    az vm unmanaged-disk detach -g MyResourceGroup --vm-name MyVm -n disk_name
    

    PowerShell

    Escriba los siguientes comandos en Azure Cloud Shell, de uno en uno:

    $VirtualMachine = Get-AzVM -ResourceGroupName "MyResourceGroup" -Name "MyVm" 
    Remove-AzVMDataDisk -VM $VirtualMachine -Name "disk_name"
    Update-AzVM -ResourceGroupName "MyResourceGroup" -VM $VirtualMachine
    

    Después de desasociar el disco, puede reemplazar el disco del sistema operativo en la máquina virtual de origen.

  2. Cuando se devuelva el símbolo del sistema, abra un editor de texto, como el Bloc de notas, y registre los valores siguientes:

    • Identificador de suscripción ($subscriptionID): identificador único global (GUID) de 32 dígitos asociado a la suscripción de Azure.
    • Nombre del grupo de recursos ($rgname): el grupo de recursos de la máquina virtual de origen.
    • Nombre de máquina virtual ($vmname): nombre de la máquina virtual de origen (con errores).
    • URI del disco del sistema operativo VHD ($vhduri):el URI de la copia del disco del sistema operativo no administrado que acaba de desasociar de la máquina virtual de reparación. (Para copiar este valor, haga clic con el botón derecho en el disco en Explorador de Storage y seleccione Copiar dirección URL).
  3. Escriba los comandos siguientes en el símbolo del sistema de PowerShell en Azure Cloud Shell, de uno en uno. En cada comando, reemplace los valores "Id. de suscripción", "Nombre del grupo de recursos", "Nombre de máquina virtual" y "URI del disco del sistema operativo" por los valores correspondientes que acaba de registrar desde su entorno.

    $subscriptionID = "Subscription ID"
    $rgname = "Resource group name"
    $vmname = "VM Name"
    $vhduri = "OS disk VHD URI"
    #Add-AzAccount
    Select-AzSubscription -SubscriptionID $subscriptionID
    Set-AzContext -SubscriptionID $subscriptionID
    $vm = Get-AzVM -ResourceGroupName $rgname -Name $vmname
    $vm.StorageProfile.OsDisk.Vhd.Uri = $vhduri
    Update-AzVM -ResourceGroupName $rgname -VM $vm       
    

    Una vez finalizada la operación, debería ver la siguiente salida:

    RequestId IsSuccessStatusCode StatusCode ReasonPhrase
    --------- ------------------- ---------- ------------
                             True         OK OK
    
  4. En Azure Portal, abra la hoja Discos en la máquina virtual. Seleccione el disco del sistema operativo y compruebe que el URI del disco duro virtual coincide con el valor proporcionado en el último paso.

Pasos siguientes

Para obtener información general sobre ADE, consulte Habilitación de Azure Disk Encryption para máquinas virtuales Windows. Para obtener más información sobre los comandos que puede usar para administrar discos no administrados, consulte az vm unmanaged-disk.

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.