Cómo expandir discos duros virtuales conectados a una máquina virtual de Windows

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

Cuando se crea una nueva máquina virtual (VM) en un grupo de recursos mediante la implementación de una imagen de Azure Marketplace, la unidad del sistema operativo predeterminada suele tener 127 GB (algunas imágenes son más pequeñas de manera predeterminada). Aunque es posible agregar discos de datos a la máquina virtual (el número depende de la SKU que elija) y se recomienda instalar aplicaciones y cargas de trabajo intensivas de CPU en estos discos anexos, a menudo los clientes necesitan expandir la unidad del sistema operativo para admitir escenarios concretos:

  • Para admitir aplicaciones heredadas que instalan componentes en la unidad del sistema operativo.
  • Para migrar una VM o un equipo físico del entorno local con una unidad del sistema operativo más grande.

Importante

Para cambiar el tamaño de un disco de datos o de sistema operativo de una máquina virtual de Azure, es necesario desasignar la máquina virtual.

No se admite la reducción de un disco existente, y puede provocar una pérdida de datos.

Después de expandir los discos, necesita expandir el volumen dentro del sistema operativo para aprovechar el disco más grande.

Cambio de tamaño sin tiempo de inactividad (versión preliminar)

Ahora puede cambiar el tamaño de los discos administrados sin desasignar la máquina virtual.

La versión preliminar del cambio tiene las limitaciones siguientes:

  • Actualmente, solo está disponible en la región Centro-oeste de EE. UU.
  • Solo se admite para discos de datos.
  • Los discos con una capacidad inferior a 4 TiB no se pueden ampliar a 4 TiB o más sin tiempo de inactividad.
    • Si aumenta el tamaño de un disco a 4 TiB o más, se puede ampliar sin tiempo de inactividad.
  • Instale y use una de las opciones siguientes:

Para registrar la característica, utilice el comando siguiente:

Register-AzProviderFeature -FeatureName "LiveResize" -ProviderNamespace "Microsoft.Compute"

Puede que el proceso de registro tarde unos minutos en completarse. Para confirmar que se ha registrado, use el comando siguiente:

Register-AzProviderFeature -FeatureName "LiveResize" -ProviderNamespace "Microsoft.Compute"

Cambio de tamaño de un disco administrado en Azure Portal

Importante

Si ha habilitado LiveResize y el disco cumple los requisitos de Cambio de tamaño sin tiempo de inactividad (versión preliminar), puede omitir los pasos 1 y 3. Para cambiar el tamaño de un disco sin tiempo de inactividad Azure Portal, debe usar el vínculo siguiente: https://aka.ms/iaasexp/DiskLiveResize

  1. En Azure Portal, navegue a la máquina virtual para la que quiere expandir el disco. Seleccione Detener para detener o desasignar la máquina virtual.

  2. En el menú de la izquierda, en Configuración, seleccione Discos.

    Captura de pantalla que muestra la opción Discos seleccionada en la sección Configuración del menú.

  3. En Nombre del disco, seleccione el disco cuyo tamaño quiere cambiar.

    Captura de pantalla que muestra el panel Discos con un nombre de disco seleccionado.

  4. En el menú de la izquierda, en Configuración, seleccione Size + performance (Tamaño y rendimiento).

    Captura de pantalla que muestra la opción Size and performance (Tamaño y rendimiento) seleccionada en la sección Configuración del menú.

  5. En Size + performance (Tamaño y rendimiento), seleccione el tamaño de disco que quiera.

    Advertencia

    El nuevo tamaño debe ser mayor que el tamaño de disco existente. El máximo permitido es 4095 GB para los discos del sistema operativo. (El blob de VHD se puede expandir más, pero el sistema operativo solo usa los primeros 4095 GB de espacio).

    Captura de pantalla que muestra el panel Size and performance (Tamaño y rendimiento) con el tamaño de disco seleccionado.

  6. Seleccione Cambiar tamaño en la parte inferior de la página.

    Captura de pantalla que muestra el panel Size and performance (Tamaño y rendimiento) con el botón Cambiar tamaño seleccionado.

Cambio de tamaño de un disco administrado mediante PowerShell

Abra la ventana de PowerShell o PowerShell ISE en el modo administrativo y siga estos pasos:

  1. Inicie sesión en su cuenta de Microsoft Azure en el modo de administración de recursos y seleccione su suscripción:

    Connect-AzAccount
    Select-AzSubscription –SubscriptionName 'my-subscription-name'
    
  2. Establezca el nombre del grupo de recursos y el nombre de la máquina virtual:

    $rgName = 'my-resource-group-name'
    $vmName = 'my-vm-name'
    
  3. Obtenga una referencia a la máquina virtual:

    $vm = Get-AzVM -ResourceGroupName $rgName -Name $vmName
    

    Importante

    Si ha habilitado LiveResize y el disco cumple los requisitos de Cambio de tamaño sin tiempo de inactividad (versión preliminar), puede omitir los pasos 4 y 6.

  4. Detenga la máquina virtual antes de cambiar el tamaño del disco:

    Stop-AzVM -ResourceGroupName $rgName -Name $vmName
    
  5. Obtenga una referencia al disco del sistema operativo administrado. Configure el tamaño del disco del sistema operativo en el valor deseado y actualice el disco:

    $disk= Get-AzDisk -ResourceGroupName $rgName -DiskName $vm.StorageProfile.OsDisk.Name
    $disk.DiskSizeGB = 1023
    Update-AzDisk -ResourceGroupName $rgName -Disk $disk -DiskName $disk.Name
    

    Advertencia

    El nuevo tamaño debe ser mayor que el tamaño de disco existente. El máximo permitido es 4095 GB para los discos del sistema operativo. (El blob de VHD se puede expandir más, pero el sistema operativo solo usa los primeros 4095 GB de espacio).

  6. La actualización de la máquina virtual puede tardar unos segundos. Cuando el comando acabe de ejecutarse, reinicie la máquina virtual:

    Start-AzVM -ResourceGroupName $rgName -Name $vmName
    

Eso es todo. Ahora RDP en la máquina virtual, abra Administración de equipos (o Administración de discos) y expanda la unidad utilizando el espacio recién asignado.

Cambio de tamaño de un disco no administrado mediante PowerShell

Abra la ventana de PowerShell o PowerShell ISE en el modo administrativo y siga estos pasos:

  1. Inicie sesión en su cuenta de Microsoft Azure en el modo de administración de recursos y seleccione su suscripción:

    Connect-AzAccount
    Select-AzSubscription –SubscriptionName 'my-subscription-name'
    
  2. Establezca el nombre del grupo de recursos y de la máquina virtual:

    $rgName = 'my-resource-group-name'
    $vmName = 'my-vm-name'
    
  3. Obtenga una referencia a la máquina virtual:

    $vm = Get-AzVM -ResourceGroupName $rgName -Name $vmName
    
  4. Detenga la máquina virtual antes de cambiar el tamaño del disco:

    Stop-AzVM -ResourceGroupName $rgName -Name $vmName
    
  5. Configure el tamaño del disco del sistema operativo no administrado en el valor deseado y actualice la máquina virtual:

    $vm.StorageProfile.OSDisk.DiskSizeGB = 1023
    Update-AzVM -ResourceGroupName $rgName -VM $vm
    

    Advertencia

    El nuevo tamaño debe ser mayor que el tamaño de disco existente. El máximo permitido es 2048 GB para los discos del sistema operativo. (El blob de VHD se puede expandir más, pero el sistema operativo solo podrá trabajar con los primeros 2048 GB).

  6. La actualización de la máquina virtual puede tardar unos segundos. Cuando el comando acabe de ejecutarse, reinicie la máquina virtual:

    Start-AzVM -ResourceGroupName $rgName -Name $vmName
    

Scripts para el disco del sistema operativo

A continuación se muestra el script completo para su referencia tanto para discos administrados como no administrados:

Discos administrados

Connect-AzAccount
Select-AzSubscription -SubscriptionName 'my-subscription-name'
$rgName = 'my-resource-group-name'
$vmName = 'my-vm-name'
$vm = Get-AzVM -ResourceGroupName $rgName -Name $vmName
Stop-AzVM -ResourceGroupName $rgName -Name $vmName
$disk= Get-AzDisk -ResourceGroupName $rgName -DiskName $vm.StorageProfile.OsDisk.Name
$disk.DiskSizeGB = 1023
Update-AzDisk -ResourceGroupName $rgName -Disk $disk -DiskName $disk.Name
Start-AzVM -ResourceGroupName $rgName -Name $vmName

Discos no administrados

Connect-AzAccount
Select-AzSubscription -SubscriptionName 'my-subscription-name'
$rgName = 'my-resource-group-name'
$vmName = 'my-vm-name'
$vm = Get-AzVM -ResourceGroupName $rgName -Name $vmName
Stop-AzVM -ResourceGroupName $rgName -Name $vmName
$vm.StorageProfile.OSDisk.DiskSizeGB = 1023
Update-AzVM -ResourceGroupName $rgName -VM $vm
Start-AzVM -ResourceGroupName $rgName -Name $vmName

Cambio de tamaño de los discos de datos

Este artículo se centra principalmente en expandir el disco del sistema operativo de la máquina virtual, pero el script también puede utilizarse para expandir los discos de datos asociados a la máquina virtual. Por ejemplo, para expandir el primer disco de datos conectado a la máquina virtual, reemplace el objeto OSDisk de StorageProfile por la matriz DataDisks y utilice un índice numérico para obtener una referencia al primer disco de datos conectado, como se muestra a continuación:

Disco administrado

$disk= Get-AzDisk -ResourceGroupName $rgName -DiskName $vm.StorageProfile.DataDisks[0].Name
$disk.DiskSizeGB = 1023

Disco no administrado

$vm.StorageProfile.DataDisks[0].DiskSizeGB = 1023

Del mismo modo, puede hacer referencia a otros discos de datos conectados a la máquina virtual, ya sea mediante un índice, como se muestra arriba, o con la propiedad Name del disco:

Disco administrado

(Get-AzDisk -ResourceGroupName $rgName -DiskName ($vm.StorageProfile.DataDisks | Where ({$_.Name -eq 'my-second-data-disk'})).Name).DiskSizeGB = 1023

Disco no administrado

($vm.StorageProfile.DataDisks | Where ({$_.Name -eq 'my-second-data-disk'})).DiskSizeGB = 1023

Expansión del volumen en el sistema operativo

Una vez expandido el disco para la máquina virtual, deberá entrar en el sistema operativo y expandir el volumen para abarcar el nuevo espacio. Existen varios métodos para expandir una partición. En esta sección se trata la conexión de la máquina virtual mediante una conexión RDP para expandir la partición mediante DiskPart.

  1. Abra una conexión RDP a la máquina virtual.

  2. Abra un símbolo del sistema y escriba diskpart.

  3. En el símbolo del sistema DISKPART, escriba list volume. Tome nota del volumen que desea extender.

  4. En el símbolo del sistema DISKPART, escriba select volume <volumenumber>. Este comando selecciona el volumen númeroDeVolumen que desea extender en el espacio vacío contiguo del mismo disco.

  5. En el símbolo del sistema DISKPART, escriba extend [size=<size>]. Este comando extiende el volumen seleccionado por tamaño en megabytes (MB).

Pasos siguientes

También puede asociar discos mediante Azure Portal.