Поделиться через


Подключение неуправляемого диска к виртуальной машине для автономного восстановления

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

Некоторые сценарии устранения неполадок для виртуальных машин Windows (виртуальных машин), например при не запуске виртуальной машины, требуют восстановления диска ОС в автономном режиме. В этой статье описывается, как выполнить такое автономное восстановление при неуправляемом диске ОС.

Определение управляемого или неуправляемого диска ОС

Портал Azure

Откройте колонку "Обзор " для виртуальной машины. Если диск ОС неуправляем, информационный баннер указывает, что виртуальная машина не использует управляемые диски.

Снимок экрана: сообщение баннера в портал Azure, указывающее, что виртуальный модуль M не использует управляемые диски.

Кроме того, колонка "Обзор " диска ОС добавляет "(неуправляемый)" к имени диска, если диск неуправляем, как показано ниже:

Снимок экрана: слово, неуправляемое, добавленное к имени V M в портал Azure.

Если диск управляется, колонка "Обзор" для диска ОС отображает поле "Управляемый по ", как показано ниже:

Снимок экрана: колонка обзора для диска в портал Azure, указывающая, что диск управляется виртуальным машином.

PowerShell

Вы можете убедиться, что диск ОС неуправляем, введя следующую команду. (Обязательно замените MyResourceGroup именем группы ресурсов и MyVM именем виртуальной машины.)

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

Если диск неуправляем, в выходных данных рядом с ManagedDisk не отображается значение, как показано в следующем примере:

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

Если диск является управляемым диском, вы увидите значение в выходных данных рядом с ManagedDisk, как показано в следующем примере:

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

Интерфейс командной строки Azure (Azure CLI)

Команду az vm show можно использовать с добавленным запросом storageProfile.osDisk.managedDisk, чтобы определить, имеет ли диск управляемые диски, как показано в следующем примере:

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

Если диски неуправляемы, команда не создаст выходные данные. Если диски управляются, он создаст выходные данные, как показано в следующем примере:

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

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

  1. В портал Azure остановите исходную виртуальную машину, диск операционной системы которой неуправляем.

  2. На локальном компьютере скачайте, установите и запустите Microsoft служба хранилища Azure Explorer. При появлении запроса укажите учетные данные Azure.

  3. В области навигации Обозреватель службы хранилища разверните соответствующую подписку.

  4. Выберите учетную запись хранения, в которой находится виртуальный жесткий диск, а затем выберите соответствующий контейнер для диска. По умолчанию неуправляемые диски ОС хранятся в контейнере виртуальных жестких дисков (арендованных).

    Снимок экрана: обозреватель служба хранилища Azure с контейнером учетных записей хранения и контейнером арендованного контейнера v h d, выделенного в дереве навигации.

  5. В правой области выберите виртуальный жесткий диск, подключенный к исходной виртуальной машине, которую требуется восстановить, и выберите " Копировать " в верхней части. Обратите внимание, что скопированный диск можно вставить только в другой контейнер BLOB-объектов.

    Снимок экрана: обозреватель служба хранилища Azure с выбранным диском с выделенной кнопкой

  6. Создайте контейнер BLOB-объектов, щелкнув правой кнопкой мыши контейнер BLOB-объектов в области навигации, а затем выбрав "Создать контейнер BLOB-объектов". Назначьте новый контейнер BLOB-объектов выбранным именем, например "диски-копии".

    Sreenshot служба хранилища Azure Explorer, показывающий контекстное меню для контейнеров BLOB-объектов в меню навигации с выделенным параметром

  7. Выберите "Вставить" , чтобы вставить скопированный диск в новый контейнер BLOB-объектов.

    Снимок экрана: служба хранилища Azure Explorer с выделенной кнопкой

Создание виртуальной машины восстановления с неуправляемым диском ОС

  1. В портал Azure начните процесс создания новой виртуальной машины, основанной на Windows Server 2019. Эта новая виртуальная машина будет выступать в качестве виртуальной машины восстановления, а собственный диск ОС должен быть неуправляем.

  2. На странице "Основы" мастера "Создание виртуальной машины" выберите "Нет избыточности инфраструктуры", необходимой в списке параметров доступности.

    Снимок экрана: страница

  3. На странице "Диски" разверните раздел "Дополнительно " ниже "Диски данных", а затем снимите флажок "Использовать управляемые диски". Выберите учетную запись хранения для неуправляемого диска ОС. Не выбирайте подключение существующего диска. Снимок экрана: страница Если параметр "Использовать управляемые диски" не может быть выбран, попробуйте создать виртуальную машину с помощью следующих команд:

    ## 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. Выполните мастер создания виртуальной машины, указав сведения о конфигурации, соответствующие вашей организации.

Присоединение копии неуправляемого диска к виртуальной машине восстановления

  1. В портал Azure откройте колонку "Диски" для созданной виртуальной машины восстановления.

  2. Выберите и добавьте диск данных.

    Снимок экрана: колонка

  3. На странице "Присоединение неуправляемого диска" выберите существующий большой двоичный объект в качестве типа источника.

    Снимок экрана: окно подключения неуправляемого диска с выбранным параметром большого двоичного объекта.

  4. Под исходным BLOB-объектом нажмите кнопку "Обзор", а затем выберите созданную ранее копию диска ОС.

    Снимок экрана: окно присоединения неуправляемого диска с выделенной кнопкой обзора.

    Снимок экрана: диск копирует контейнер с выбранным диском и выделена кнопка

  5. На странице "Присоединение неуправляемого диска " примите имя BLOB-объекта хранилища по умолчанию и нажмите кнопку "ОК".

  6. В колонке "Диски " новой виртуальной машины восстановления нажмите кнопку "Сохранить".

    Снимок экрана: колонка

Разблокируйте диск, если он зашифрован

Если диск зашифрован с помощью Шифрование дисков Azure (ADE), необходимо разблокировать его, прежде чем восстановить его. Для этого выполните действия, описанные в разделе "Разрешение 3. Ручной метод для разблокировки зашифрованного диска на виртуальной машине восстановления".

Вы можете определить, зашифрован ли диск с помощью процедуры : убедитесь, что ADE включен на диске.

Замена диска ОС на исходной виртуальной машине

После завершения восстановления диска выполните следующие действия.

  1. Отключите исходный диск ОС виртуальной машины с помощью Azure CLI или PowerShell.

    Azure CLI

    Используйте команду az vm unmanaged-disk detach, как показано в следующем примере:

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

    PowerShell

    Введите следующие команды в Azure Cloud Shell одновременно:

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

    После отключения диска можно заменить диск ОС на исходной виртуальной машине.

  2. Когда запрос возвращается, откройте текстовый редактор, например Блокнот, и запишите следующие значения:

    • Идентификатор подписки ($subscriptionID): 32-значный глобальный уникальный идентификатор (GUID), связанный с подпиской Azure.
    • Имя группы ресурсов ($rgname): группа ресурсов исходной виртуальной машины.
    • Имя виртуальной машины ($vmname): имя исходной (неудачной) виртуальной машины.
    • URI виртуального жесткого диска ОС ($vhduri): URI копии неуправляемого диска ОС, который вы только что отсоединили от виртуальной машины восстановления. (Это значение можно скопировать, щелкнув диск правой кнопкой мыши в Обозреватель службы хранилища и выбрав URL-адрес копирования.)
  3. Введите следующие команды в командной строке PowerShell в Azure Cloud Shell одновременно. В каждой команде замените значения "Идентификатор подписки", "Имя группы ресурсов", "Имя виртуальной машины" и "URI виртуального жесткого диска ОС" соответствующими значениями, записанными из среды.

    $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       
    

    После завершения операции вы увидите следующие выходные данные:

    RequestId IsSuccessStatusCode StatusCode ReasonPhrase
    --------- ------------------- ---------- ------------
                             True         OK OK
    
  4. В портал Azure откройте колонку "Диски" на виртуальной машине. Выберите диск ОС, а затем убедитесь, что универсальный код ресурса (URI) VHD соответствует значению, предоставленному на последнем шаге.

Next Steps

Общие сведения о ADE см. в статье "Включение Шифрование дисков Azure для виртуальных машин Windows". Дополнительные сведения о командах, которые можно использовать для управления неуправляемых дисков, см. в статье az vm unmanaged-disk.

Свяжитесь с нами для получения помощи

Если у вас есть вопросы или вам нужна помощь, создайте запрос в службу поддержки или обратитесь за поддержкой сообщества Azure. Вы также можете отправить отзыв о продукте в сообщество отзывов Azure.