Udostępnij za pośrednictwem


Naprawianie maszyny wirtualnej z systemem Windows za pomocą poleceń naprawiania maszyny wirtualnej platformy Azure

Dotyczy: ✔️ maszyny wirtualne z systemem Windows

Jeśli maszyna wirtualna z systemem Windows na platformie Azure napotka błąd rozruchu lub dysku, może być konieczne naprawienie dysku w trybie offline. Typowym przykładem może być nieudana aktualizacja aplikacji, która uniemożliwia pomyślne uruchomienie maszyny wirtualnej. W tym artykule szczegółowo opisano sposób używania poleceń naprawy maszyny wirtualnej platformy Azure w celu automatycznego dołączania uszkodzonego dysku systemu operacyjnego do innej maszyny wirtualnej z systemem Windows na potrzeby naprawy w trybie offline. W ramach tej procedury dysk systemu operacyjnego, który zakończył się niepowodzeniem, zostanie automatycznie odblokowany na drugiej maszynie wirtualnej, nazywanej maszyną wirtualną naprawy, jeśli dysk jest zaszyfrowany za pomocą usługi Azure Disk Encryption. Po dołączeniu dysku z awarią do maszyny wirtualnej naprawy można naprawić wszelkie błędy, a następnie ponownie skompilować oryginalną maszynę wirtualną przy użyciu naprawionego dysku.

Ważne

  • Skrypty w tym artykule dotyczą tylko maszyn wirtualnych korzystających z usługi Azure Resource Manager.
  • Połączenie wychodzące z maszyny wirtualnej (port 443) jest wymagane do uruchomienia skryptu.
  • Jednocześnie może działać tylko jeden skrypt.
  • Nie można anulować uruchomionego skryptu.
  • Maksymalny czas uruchomienia skryptu wynosi 90 minut, po którym upłynął limit czasu.
  • Nie modyfikuj tagów utworzonych na maszynie wirtualnej naprawy. Tagi są niezbędne do poprawnego działania polecenia restore.
  • W przypadku maszyn wirtualnych korzystających z usługi Azure Disk Encryption obsługiwane są tylko dyski zarządzane zaszyfrowane przy użyciu szyfrowania z pojedynczym przekazywaniem (z kluczem KEK lub bez go).

Omówienie procesu naprawy

Teraz możesz użyć poleceń naprawy maszyny wirtualnej platformy Azure, aby zmienić dysk systemu operacyjnego dla maszyny wirtualnej i nie trzeba już usuwać i ponownie utworzyć maszyny wirtualnej.

Sekcja Przykładowy proces naprawy przeprowadzi Cię przez następujący proces:

  1. Uruchom usługę Azure Cloud Shell.
  2. Uruchom az extension add lub az extension update.
  3. Uruchom program az vm repair create.
  4. Uruchom az vm repair run lub wykonaj kroki zaradcze.
  5. Uruchom program az vm repair restore.

Uwaga 16.

Aby wyświetlić wszystkie dostępne polecenia i parametry naprawy maszyny wirtualnej, zobacz az vm repair.

Ważne

Aby uruchomić polecenia, potrzebujesz roli, która może utworzyć następujące typy zasobów w subskrypcji:

  • Grupy zasobów
  • Virtual Machines
  • Tagi zasobów
  • Sieci wirtualne
  • Grupy zabezpieczeń sieci
  • Interfejsy sieciowe
  • Dyski
  • Publiczne adresy IP (opcjonalnie)

Przykład naprawy procesu

  1. Uruchamianie usługi Azure Cloud Shell

    Usługa Azure Cloud Shell to bezpłatna interaktywna powłoka, której możesz używać do wykonywania kroków opisanych w tym artykule. Obejmuje ona typowe narzędzia platformy Azure wstępnie zainstalowane i skonfigurowane do użycia z kontem. Jeśli uruchomisz skrypt, który potrwa dłużej niż 20 minut (na przykład: win-sfc-sf-corruption script), możesz uruchomić polecenia lokalnie. Aby uruchomić polecenia lokalnie, wymagany jest interfejs wiersza polecenia platformy Azure w wersji 2.0.67 lub nowszej. Uruchom polecenie az --version, aby dowiedzieć się, jaka wersja jest używana. Jeśli musisz zainstalować lub uaktualnić interfejs wiersza polecenia platformy Azure, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.

    Aby otworzyć usługę Cloud Shell, wybierz pozycję Wypróbuj w prawym górnym rogu bloku kodu. Możesz również otworzyć usługę Cloud Shell na osobnej karcie przeglądarki, odwiedzając stronę https://shell.azure.com.

    Wybierz pozycję Kopiuj , aby skopiować bloki kodu, a następnie wklej kod w usłudze Cloud Shell, a następnie wybierz Enter , aby go uruchomić.

    Jeśli wolisz zainstalować interfejs wiersza polecenia i korzystać z niego lokalnie, ten przewodnik Szybki start wymaga interfejsu wiersza polecenia platformy Azure w wersji 2.0.67 lub nowszej. Uruchom polecenie az --version, aby dowiedzieć się, jaka wersja jest używana. Jeśli musisz zainstalować lub uaktualnić interfejs wiersza polecenia platformy Azure, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.

    Jeśli musisz zalogować się do usługi Cloud Shell przy użyciu innego konta niż obecnie zalogowano się w witrynie Azure Portal, możesz użyć polecenia az login az login reference. Aby przełączać się między subskrypcjami skojarzonymi z kontem, możesz użyć polecenia az account set --subscription az account set reference.

  2. Jeśli używasz poleceń po raz pierwszy, dodaj rozszerzenie interfejsu az vm repair wiersza polecenia naprawy maszyny wirtualnej.

    az extension add -n vm-repair
    

    Jeśli wcześniej użyto az vm repair poleceń, zastosuj wszystkie aktualizacje do rozszerzenia vm-repair.

    az extension update -n vm-repair
    
  3. Uruchom program az vm repair create. To polecenie spowoduje utworzenie kopii dysku systemu operacyjnego dla maszyny wirtualnej, utworzenie maszyny wirtualnej naprawy w nowej grupie zasobów i dołączenie kopii dysku systemu operacyjnego. Maszyna wirtualna naprawy będzie mieć taki sam rozmiar i region, jak określona niefunkcjonalna maszyna wirtualna. Nazwa grupy zasobów i maszyny wirtualnej używana we wszystkich krokach będzie dotyczyć maszyny wirtualnej, która nie działa. Jeśli maszyna wirtualna korzysta z usługi Azure Disk Encryption, użyj polecenia --unlock-encrypted-vm , aby odblokować zaszyfrowany dysk, aby był dostępny po dołączeniu do maszyny wirtualnej naprawy. Aby uzyskać więcej informacji, zobacz potwierdzanie, że usługa ADE jest włączona na dysku. Jeśli musisz rozwiązać problemy z maszyną wirtualną w zagnieżdżonym środowisku funkcji Hyper-V, użyj polecenia , a maszyna --enable-nested wirtualna naprawy zostanie utworzona z włączoną rolą funkcji Hyper-V wraz z zagnieżdżonym maszyną wirtualną przy użyciu kopii dysku systemu operacyjnego.

Ważne

Polecenia uruchamiania i przywracania będą wymagać wprowadzenia wszystkich danych wejściowych przy użyciu tego samego przypadku, co w poleceniu create, zanotuj lub odwołaj się do tagów na maszynie wirtualnej naprawy, aby zobaczyć, co zostało użyte.

Przykład naprawy maszyny wirtualnej

az vm repair create -g MyResourceGroup -n myVM --repair-username username --repair-password 'password!234' --verbose

Przykład naprawy maszyny wirtualnej przy użyciu zagnieżdżonej funkcji Hyper-V

az vm repair create -g MyResourceGroup -n myVM --repair-username username --repair-password 'password!234' --enable-nested --verbose
  1. Uruchom program az vm repair run. To polecenie spowoduje uruchomienie określonego skryptu naprawy na dołączonym dysku za pośrednictwem maszyny wirtualnej naprawy. Jeśli przewodnik rozwiązywania problemów używasz określonego identyfikatora przebiegu, użyj go tutaj. W przeciwnym razie możesz użyć az vm repair list-scripts polecenia , aby wyświetlić dostępne skrypty naprawy. Nazwa grupy zasobów i maszyny wirtualnej używana w tym miejscu jest używana dla niefunkcjonanej maszyny wirtualnej używanej w kroku 3. Dodatkowe informacje na temat skryptów naprawy można znaleźć w bibliotece skryptów naprawy.

    az vm repair run -g MyResourceGroup -n MyVM --run-on-repair --run-id win-hello-world --verbose
    

    Opcjonalnie możesz wykonać wszelkie wymagane ręczne kroki ograniczania ryzyka przy użyciu maszyny wirtualnej naprawy, a następnie przejść do kroku 5.

  2. Uruchom program az vm repair restore. To polecenie spowoduje zamianę naprawionego dysku systemu operacyjnego na oryginalny dysk systemu operacyjnego maszyny wirtualnej. Nazwa grupy zasobów i maszyny wirtualnej używana w tym miejscu jest używana dla niefunkcjonanej maszyny wirtualnej używanej w kroku 3.

    az vm repair restore -g MyResourceGroup -n MyVM --verbose
    

Weryfikowanie i włączanie diagnostyki rozruchu

Poniższy przykład umożliwia rozszerzenie diagnostyczne na maszynie wirtualnej o nazwie w grupie zasobów o nazwie myVMDeployed myResourceGroup:

Interfejs wiersza polecenia platformy Azure

az vm boot-diagnostics enable --name myVMDeployed --resource-group myResourceGroup --storage https://mystor.blob.core.windows.net/

Następne kroki

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 na temat platformy Azure.