Способы расширения виртуальных жестких дисков, подключенных к виртуальной машине Windows

Область применения: ✔️ Виртуальные машины Windows ✔️ Гибкие масштабируемые наборы

При создании новой виртуальной машины в группе ресурсов путем развертывания образа из Azure Marketplace диск операционной системы (ОС) по умолчанию обычно имеет размер 127 ГиБ (в некоторых образах диск ОС по умолчанию меньше). Вы можете добавить диски данных на виртуальную машину (объем зависит от выбранного номера SKU виртуальной машины), и мы рекомендуем устанавливать приложения и ресурсоемкие рабочие нагрузки на дисках данных. Возможно, потребуется развернуть диск ОС, если вы поддерживаете устаревшее приложение, которое устанавливает компоненты на диске ОС или переносите физический компьютер или виртуальную машину из локальной среды с диском ОС большего объема. В этой статье рассматривается расширение дисков ОС или дисков данных.

Диск ОС имеет максимальную емкость 4095 ГиБ. Однако многие операционные системы секционируются с главной загрузочной записью (МБ R) по умолчанию. Формат MBR ограничивает доступный размер до 2 ТиБ. Если вам требуется более 2 ТиБ, создайте и подключите диски данных и используйте их для хранения. Если вам необходимо сохранить данные на диске операционной системы и требуется дополнительное пространство, преобразуйте их в таблицу разделов GUID (GPT). Сведения о различиях между MBR и GPT в развертываниях Windows см. в разделе Вопросы и ответы по Windows и GPT.

Важно!

Если вы не используете функцию Расширение без простоя, для расширения диска данных нужно освободить виртуальную машину.

Сжатие существующего диска не поддерживается и может привести к потере данных.

После расширения диска необходимо расширить том операционной системы, чтобы использовать преимущества диска большего размера.

Невозможно развернуть размер полосатых томов.

Расширение без простоя

Вы можете развернуть диски данных без освобождения виртуальной машины. Параметр кэша узла диска не изменяет, можно ли развернуть диск данных без освобождения виртуальной машины.

Сейчас эта функция имеет следующие ограничения:

  • Поддерживается только для дисков данных.
  • Если размер диска не превышает 4 ТиБ, следует отменить выделение виртуальной машины и отключить диск, прежде чем расширять его сверх 4 ТиБ. Если диск уже больше 4 ТиБ, его можно расширить без отмены выделения виртуальной машины и отключения диска.
  • Не поддерживается для дисков ценовой категории "Ультра" или ssd уровня "Премиум" версии 2.
  • Не поддерживается для общих дисков.
  • Установите и используйте любой из следующих вариантов:
  • Недоступно на некоторых классических виртуальных машинах. Используйте этот скрипт , чтобы получить список классических номеров SKU виртуальных машин, которые поддерживают расширение без простоя.

Изменение размера управляемого диска на портале Azure

Важно!

Если диск соответствует требованиям, предъявляемым к функции Расширение без простоя, можно пропустить шаг 1.

  1. На портале Azure перейдите к виртуальной машине, на которой необходимо развернуть диск. Выберите Остановить, чтобы отключить виртуальную машину.

  2. В меню слева в разделе Параметры выберите Диски.

    Screenshot that shows the Disks option selected in the Settings section of the menu.

  3. В разделе Имя диска выберите диск, который нужно расширить.

    Screenshot that shows the Disks pane with a disk name selected.

  4. В меню слева в разделе Параметры выберите Размер и производительность.

    Screenshot that shows the Size and performance option selected in the Settings section of the menu.

  5. В поле Размер и производительность выберите нужный размер диска.

    Предупреждение

    Новый размер должен быть больше, чем размер существующего диска. Максимально допустимый размер диска ОС — 4095 ГБ. Вы можете развернуть BLOB-объект с VHD большего размера, но операционная система сможет работать только с первыми 4095 ГБ его данных.

    Screenshot that shows the Size and performance pane with the disk size selected.

  6. В нижней части страницы выберите Изменить размер.

    Screenshot that shows the Size and performance pane with the Resize button selected.

Изменение размера управляемого диска с помощью PowerShell

Откройте интегрированную среду PowerShell или окно PowerShell в режиме администратора и выполните следующие действия:

Войдите в учетную запись Microsoft Azure в режиме управления ресурсами и выберите подписку:

Connect-AzAccount
Select-AzSubscription –SubscriptionName 'my-subscription-name'

Задайте имя группы ресурсов и имя виртуальной машины:

$rgName = 'my-resource-group-name'
$vmName = 'my-vm-name'
$diskName = 'my-disk-name'

Получите ссылку на виртуальную машину:

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

Важно!

Если диск соответствует требованиям, предъявляемым к функции Расширение без простоя, можно пропустить шаги 4 и 6.

Остановите виртуальную машину перед изменением размера диска:

Stop-AzVM -ResourceGroupName $rgName -Name $vmName

Получите ссылку на управляемый диск ОС. Задайте нужный размер управляемого диска ОС и обновите диск:

$disk= Get-AzDisk -ResourceGroupName $rgName -DiskName $diskName
$disk.DiskSizeGB = 1023
Update-AzDisk -ResourceGroupName $rgName -Disk $disk -DiskName $disk.Name

Предупреждение

Новый размер должен быть больше, чем размер существующего диска. Максимально допустимый размер диска ОС — 4095 ГБ. Вы можете развернуть BLOB-объект с VHD большего размера, но операционная система сможет работать только с первыми 4095 ГБ его данных.

Обновление виртуальной машины может занять несколько секунд. После завершения команды перезапустите виртуальную машину:

Start-AzVM -ResourceGroupName $rgName -Name $vmName

Удаленно подключитесь к виртуальной машине, откройте раздел Управление компьютером (или Управление дисками) и увеличьте диск, используя только что выделенное для этого место.

Расширение тома в операционной системе

После расширения диска для виртуальной машины необходимо перейти к операционной системе и расширить том с учетом нового пространства. Существует несколько способов расширения раздела. В этом разделе описано подключение виртуальной машины с использованием протокола удаленного рабочего стола для расширения раздела с помощью Diskpart или диспетчера дисков.

Использование DiskPart

После расширения диска для виртуальной машины необходимо перейти к операционной системе и расширить том с учетом нового пространства. Существует несколько способов расширения раздела. В этом разделе описано подключение виртуальной машины с использованием протокола удаленного рабочего стола для расширения раздела с помощью DiskPart.

  1. Откройте подключение к виртуальной машине по протоколу удаленного рабочего стола.

  2. Откройте командную строку и введите diskpart.

  3. В командной строке DISKPART введите list volume. Найдите том, который требуется расширить.

  4. В командной строке DISKPART введите select volume <volumenumber>. При этом будет выбран том с указанным номером тома, который вы хотите расширить в смежную пустую область на том же диске.

  5. В командной строке DISKPART введите extend [size=<size>]. Эта команда расширяет выбранный том на указанный размер в МБ.

Использование диспетчера дисков

  1. Запуск сеанса удаленного рабочего стола с виртуальной машиной.

  2. Откройте раздел Управление дисками.

    Screenshot showing Disk Management.

  3. Щелкните правой кнопкой мыши существующий раздел диска C:> Расширение тома.

    Screenshot showing how to extend the volume.

  4. Выполните действия, которые позволят увидеть диск с обновленной емкостью.

    Screenshot showing the larger C: volume in Disk Manager.

Расширение без поддержки SKU классической виртуальной машины простоя

Если вы используете классический номер SKU виртуальной машины, он может не поддерживать расширение дисков без простоя.

Используйте следующий скрипт PowerShell для определения доступных номеров SKU виртуальных машин:

Connect-AzAccount
$subscriptionId="yourSubID"
$location="desiredRegion"
Set-AzContext -Subscription $subscriptionId
$vmSizes=Get-AzComputeResourceSku -Location $location | where{$_.ResourceType -eq 'virtualMachines'}

foreach($vmSize in $vmSizes){
    foreach($capability in $vmSize.Capabilities)
    {
       if(($capability.Name -eq "EphemeralOSDiskSupported" -and $capability.Value -eq "True") -or ($capability.Name -eq "PremiumIO" -and $capability.Value -eq "True") -or ($capability.Name -eq "HyperVGenerations" -and $capability.Value -match "V2"))
        {
            $vmSize.Name
       }
   }
}

Следующие шаги

Диски также можно подключить на портале Azure.