Dołączanie dysku niezarządzanego do maszyny wirtualnej w celu naprawy w trybie offline

Niektóre scenariusze rozwiązywania problemów z maszynami wirtualnymi z systemem Windows, na przykład gdy maszyna wirtualna nie uruchamia się, wymagają naprawy dysku systemu operacyjnego w trybie offline. W tym artykule opisano sposób wykonywania tego rodzaju naprawy w trybie offline, gdy uszkodzony dysk systemu operacyjnego jest niezarządzany.

Określanie, czy dysk systemu operacyjnego jest zarządzany, czy niezarządzany

Azure Portal

Otwórz blok Przegląd dla maszyny wirtualnej. Jeśli dysk systemu operacyjnego jest niezarządzany, baner informacyjny wskazuje, że maszyna wirtualna nie używa dysków zarządzanych.

Zrzut ekranu przedstawiający komunikat transparentu w Azure Portal wskazujący, że maszyna wirtualna nie używa dysków zarządzanych.

Ponadto blok Przegląd dysku systemu operacyjnego dołącza ciąg "(niezarządzany)" do nazwy dysku, jeśli dysk jest niezarządzany, jak pokazano poniżej:

Zrzut ekranu przedstawia wyraz niezarządzany dołączony do nazwy maszyny wirtualnej w Azure Portal.

Jeśli dysk jest zarządzany, w bloku Przegląd dysku systemu operacyjnego zostanie wyświetlone pole Zarządzane przez , jak pokazano poniżej:

Zrzut ekranu przedstawiający blok przeglądu dysku w Azure Portal wskazujący, że dysk jest zarządzany przez maszynę wirtualną.

PowerShell

Możesz sprawdzić, czy dysk systemu operacyjnego jest niezarządzany, wprowadzając następujące polecenie. (Pamiętaj, aby zastąpić ciąg "MyResourceGroup" nazwą grupy zasobów i "MyVM" nazwą maszyny wirtualnej).

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

Jeśli dysk jest niezarządzany, żadna wartość nie jest wyświetlana w danych wyjściowych obok pozycji ManagedDisk, jak w poniższym przykładzie:

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

Jeśli dysk jest dyskiem zarządzanym, w danych wyjściowych obok pozycji ManagedDisk zostanie wyświetlona wartość, jak w poniższym przykładzie:

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

Interfejs wiersza polecenia platformy Azure (interfejs wiersza polecenia platformy Azure)

Możesz użyć polecenia az vm show z dołączonym zapytaniem "storageProfile.osDisk.managedDisk", aby określić, czy dysk ma dyski zarządzane, jak w poniższym przykładzie:

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

Jeśli dyski są niezarządzane, polecenie nie wygeneruje żadnych danych wyjściowych. Jeśli dyski są zarządzane, wygeneruje dane wyjściowe, jak w poniższym przykładzie:

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

Tworzenie kopii niezarządzanego dysku systemu operacyjnego dołączonego do źródłowej (nieudanej) maszyny wirtualnej

  1. W Azure Portal zatrzymaj źródłową maszynę wirtualną, której dysk systemu operacyjnego jest niezarządzany.

  2. Na komputerze lokalnym pobierz, zainstaluj, a następnie uruchom usługę Microsoft Eksplorator usługi Azure Storage. Po wyświetleniu monitu podaj poświadczenia platformy Azure.

  3. W okienku nawigacji Eksplorator usługi Storage rozwiń odpowiednią subskrypcję.

  4. Wybierz konto magazynu, na którym znajduje się dysk VHD, a następnie wybierz odpowiedni kontener dla dysku. Domyślnie niezarządzane dyski systemu operacyjnego są przechowywane w kontenerze vhds (Leased ).

    Zrzut ekranu przedstawiający Eksplorator usługi Azure Storage z kontenerem kont magazynu i kontenerem dzierżawionym v h d s wyróżnionym w drzewie nawigacji.

  5. W okienku po prawej stronie wybierz dysk VHD dołączony do źródłowej maszyny wirtualnej, którą chcesz naprawić, a następnie wybierz pozycję Kopiuj u góry. Zwróć uwagę, że skopiowany dysk można wkleić tylko do innego kontenera obiektów blob.

    Zrzut ekranu przedstawiający Eksplorator usługi Azure Storage z wybranym dyskiem z wyróżnionym przyciskiem Kopiuj.

  6. Utwórz nowy kontener obiektów blob, klikając prawym przyciskiem myszy pozycję Kontener obiektów blob w okienku nawigacji, a następnie wybierając pozycję Utwórz kontener obiektów blob. Przypisz nowy kontener obiektów blob do wybranej nazwy, na przykład "disk-copies".

    Sreenshot Eksplorator usługi Azure Storage przedstawiający menu skrótów dla kontenerów obiektów blob w menu nawigacji z wyróżnionym pozycją Utwórz kontener obiektów blob.

  7. Wybierz pozycję Wklej , aby wkleić skopiowany dysk do nowego kontenera obiektów blob.

    Zrzut ekranu przedstawiający Eksplorator usługi Azure Storage z wyróżnionym przyciskiem Wklej.

Tworzenie naprawczej maszyny wirtualnej z niezarządzanym dyskiem systemu operacyjnego

  1. W Azure Portal rozpocznij proces tworzenia nowej maszyny wirtualnej opartej na systemie Windows Server 2019. Ta nowa maszyna wirtualna będzie działać jako naprawcza maszyna wirtualna, a jej własny dysk systemu operacyjnego musi być niezarządzany.

  2. Na stronie Podstawy kreatora "Tworzenie maszyny wirtualnej" wybierz pozycję Nadmiarowość infrastruktury nie jest wymagana na liście Opcje dostępności .

    Zrzut ekranu przedstawiający stronę Podstawy kreatora Tworzenie maszyny wirtualnej z opcją wybraną dla braku wymaganej infrastruktury.

  3. Na stronie Dyski rozwiń pozycję Zaawansowane poniżej pozycji Dyski danych , a następnie wyczyść pole wyboru Użyj dysków zarządzanych . Wybierz konto magazynu dla niezarządzanego dysku systemu operacyjnego. Nie wybieraj, aby dołączyć istniejący dysk. Zrzut ekranu przedstawiający stronę Dyski kreatora Tworzenie maszyny wirtualnej z wyczyszczoną opcją użyj dysku zarządzanego. Jeśli nie można usunąć zaznaczenia opcji Użyj dysków zarządzanych , spróbuj utworzyć maszynę wirtualną przy użyciu następujących poleceń:

    ## 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. Ukończ kreatora "Tworzenie maszyny wirtualnej", określając szczegóły konfiguracji odpowiednie dla twojej organizacji.

Dołączanie kopii dysku niezarządzanego do maszyny wirtualnej naprawy

  1. W Azure Portal otwórz blok Dyski dla nowo utworzonej maszyny wirtualnej do naprawy.

  2. Wybierz pozycję + Dodaj dysk danych.

    Zrzut ekranu przedstawiający blok Dyski maszyny wirtualnej naprawy w Azure Portal z wyróżnionym przyciskiem Dodaj dysk danych.

  3. Na stronie Dołączanie dysku niezarządzanego wybierz pozycjęIstniejący obiekt blob jako typ źródła.

    Zrzut ekranu przedstawiający okno dołączania dysku niezarządzanego z wybraną opcją istniejącego obiektu blob.

  4. W obszarze Źródłowy obiekt blob wybierz pozycję Przeglądaj, a następnie przejdź, aby wybrać utworzoną wcześniej kopię dysku systemu operacyjnego.

    Zrzut ekranu przedstawiający okno dołączania dysku niezarządzanego z wyróżnionym przyciskiem przeglądania.

    Zrzut ekranu przedstawiający kontener kopiuje kontener z wybranym dyskiem i wyróżnionym przyciskiem Wybierz.

  5. Na stronie Dołączanie dysku niezarządzanego zaakceptuj domyślną nazwę obiektu blob magazynu, a następnie wybierz przycisk OK.

  6. W bloku Dyski nowej maszyny wirtualnej naprawy wybierz pozycję Zapisz.

    Zrzut ekranu przedstawiający blok Dyski z wyróżnionym przyciskiem Zapisz.

Odblokuj dysk, jeśli jest zaszyfrowany

Jeśli dysk jest zaszyfrowany za pomocą usługi Azure Disk Encryption (ADE), musisz go odblokować, zanim będzie można go naprawić. W tym celu wykonaj kroki opisane w temacie Resolution #3: Manual method to unlock an encrypted disk on a repair VM (Metoda ręcznego odblokowywania zaszyfrowanego dysku na maszynie wirtualnej naprawy).

Możesz określić, czy dysk jest zaszyfrowany, korzystając z procedury w tym miejscu: Potwierdź, że na dysku włączono funkcję ADE

Zastępowanie dysku systemu operacyjnego na źródłowej maszynie wirtualnej

Po zakończeniu naprawiania dysku wykonaj następujące kroki:

  1. Odłącz źródłowy dysk systemu operacyjnego maszyny wirtualnej przy użyciu interfejsu wiersza polecenia platformy Azure lub programu PowerShell.

    Interfejs wiersza polecenia platformy Azure

    Użyj polecenia az vm unmanaged-disk detach , jak w poniższym przykładzie:

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

    PowerShell

    Wprowadź następujące polecenia w usłudze Azure Cloud Shell pojedynczo:

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

    Po odłączeniu dysku można zastąpić dysk systemu operacyjnego na źródłowej maszynie wirtualnej.

  2. Po zwróceniu monitu otwórz edytor tekstów, taki jak Notatnik, i zapisz następujące wartości:

    • Identyfikator subskrypcji ($subscriptionID): 32-cyfrowy unikatowy identyfikator globalny (GUID) skojarzony z subskrypcją platformy Azure.
    • Nazwa grupy zasobów ($rgname): grupa zasobów źródłowej maszyny wirtualnej.
    • Nazwa maszyny wirtualnej ($vmname): nazwa źródłowej (nieudanej) maszyny wirtualnej.
    • Identyfikator URI dysku VHD dysku systemu operacyjnego ($vhduri): identyfikator URI kopii niezarządzanego dysku systemu operacyjnego, który został właśnie odłączony od naprawczej maszyny wirtualnej. (Możesz skopiować tę wartość, klikając prawym przyciskiem myszy dysk w Eksplorator usługi Storage, a następnie wybierając pozycję Kopiuj adres URL).
  3. Wprowadź następujące polecenia w wierszu polecenia programu PowerShell w usłudze Azure Cloud Shell pojedynczo. W każdym poleceniu zastąp wartości "Identyfikator subskrypcji", "Nazwa grupy zasobów", "Nazwa maszyny wirtualnej" i "Identyfikator URI dysku VHD dysku systemu operacyjnego" odpowiednimi wartościami, które zostały właśnie zarejestrowane ze środowiska.

    $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       
    

    Po zakończeniu operacji powinny zostać wyświetlone następujące dane wyjściowe:

    RequestId IsSuccessStatusCode StatusCode ReasonPhrase
    --------- ------------------- ---------- ------------
                             True         OK OK
    
  4. W Azure Portal otwórz blok Dyski na maszynie wirtualnej. Wybierz dysk systemu operacyjnego, a następnie sprawdź, czy identyfikator URI wirtualnego dysku twardego jest zgodny z wartością podanej w ostatnim kroku.

Następne kroki

Aby zapoznać się z omówieniem usługi ADE, zobacz Włączanie usługi Azure Disk Encryption dla maszyn wirtualnych z systemem Windows. Aby uzyskać więcej informacji na temat poleceń, których można użyć do zarządzania dyskami niezarządzanymi, zobacz az vm unmanaged-disk.

Skontaktuj się z nami, aby uzyskać pomoc

Jeśli masz pytania lub potrzebujesz pomocy, utwórz wniosek o pomoc techniczną lub zadaj pytanie w społeczności wsparcia dla platformy Azure. Możesz również przesłać opinię o produkcie do społeczności opinii platformy Azure.