Jak przenieść maszyny wirtualne z Hyper-V do Proxmox: przewodnik krok po kroku

Proxmox VE to niezawodne środowisko wirtualne dla organizacji każdej wielkości, a przenoszenie maszyn wirtualnych z innego rozwiązania do wirtualizacji do Proxmox VE może stanowić wyzwanie. W najnowszych wersjach Proxmox dodał kreator, który częściowo automatyzuje migrację z VMware ESXi do Proxmox VE. Jednak migracja z Hyper-V do Proxmox wymaga wykonania czynności ręcznie. Ten wpis na blogu przedstawia szczegółowe kroki migracji maszyn wirtualnych z Hyper-V do Proxmox oraz sposób konfiguracji migracji.

NAKIVO do wykonywania kopii zapasowych w Proxmox

NAKIVO do wykonywania kopii zapasowych w Proxmox

Bezagentowa kopia zapasowa spójna z aplikacją dla Proxmox VE z obsługą wielu lokalizacji docelowych, w tym niezmiennych kopii zapasowych w chmurze. Wiele opcji natychmiastowego odzyskiwania na poziomie elementów oraz pełnego odzyskiwania.

Przygotowanie maszyny wirtualnej Microsoft Hyper-V do migracji

Aby przygotować środowisko do migracji do Proxmox VE, należy najpierw zainstalować sterowniki VirtIO w systemie operacyjnym gościa maszyny wirtualnej Hyper-V, którą planujesz przenieść. Sterowniki VirtIO to zestaw sterowników dla urządzeń wirtualnych maszyn wirtualnych Proxmox, które poprawiają wydajność i komfort użytkowania, podobnie jak Narzędzia VMware. Zainstalowanie sterowników VirtIO przed rozpoczęciem procesu migracji jest konieczne, aby uniknąć problemów po uruchomieniu maszyny wirtualnej na hoście Proxmox.

Aby zainstalować sterowniki VirtIO:

  1. Pobierz kompilację najnowsze stabilne sterowniki VirtIO lub najnowsza norma ISO ze strony oficjalne źródło. Ten obraz ISO jest również potrzebny do zainstalowania agenta gościa QEMU.
  2. Włóż pobrany obraz ISO ze sterownikami VirtIO do wirtualnego napędu CD/DVD źródłowej maszyny wirtualnej Hyper-V. Nazwa naszej maszyny wirtualnej źródłowej w tym przykładzie to Win10test (Windows 10 jest systemem operacyjnym gościa). Jest to maszyna wirtualna generacji 2, która posiada jeden dysk wirtualny VHDX o pojemności 20 GB (dynamiczny, nieprzydzielony z góry – odpowiednik dysku przydzielane dynamicznie ) z systemem operacyjnym (OS) i danymi.
  3. Otwórz Hyper-V Manager. Kliknij prawym przyciskiem myszy maszynę wirtualną Hyper-V, którą chcesz przenieść do Proxmox VE, a następnie w menu kontekstowym kliknij Settings.

    Opening the settings of the source VM in Hyper-V Manager

  4. W lewym panelu okna ustawienia VM kliknij opcję DVD Drive . W prawym panelu kliknij Image file, naciśnij Browse i wybierz plik obrazu sterowników VirtIO. W tym przykładzie nazwa pliku to virtio-win-0.1.240.iso

    Kliknij OK , aby zapisać ustawienia.

    Selecting the ISO image file containing the VirtIO drivers

  5. Uruchom maszynę wirtualną źródłową i połącz się z nią za pomocą natywnego narzędzia Hyper-V VMConnect . Kliknij prawym przyciskiem myszy maszynę wirtualną i wybierz Connect.
  6. Otwórz Eksploratora Windows ( Ten komputer ) w systemie operacyjnym gościa i przejdź do napędu DVD, do którego włożono obraz ISO. Znajdź plik instalacyjny sterowników VirtIO dla systemu Windows w folderze głównym obrazu DVD. Wybierz plik instalatora w formacie . msi w zależności od wersji systemu Windows (virtio-win-gt-x64.msi lub virtio-win-gt-x86.msi).

    Installing VirtIO drivers in the guest OS of the source VM

  7. Uruchom plik wykonywalny dla swojej wersji systemu Windows (64-bitowej lub 32-bitowej) i postępuj zgodnie z instrukcjami kreatora instalacji, aby zainstalować sterowniki VirtIO.
  8. Zainstaluj QEMU Guest Agent . Instalator znajduje się w obrazie ISO ze sterownikami VirtIO w katalogu guest-agent . Uruchom plik instalatora dla swojej wersji systemu Windows (uruchamiamy qemu-ga-x84_64.msi , ponieważ jako system operacyjny gościa używamy 64-bitowego systemu Windows 10).

    Installing QEMU Guest Agent in a guest OS of the source VM

  9. Sprawdź, czy agent gościa działa w systemie operacyjnym gościa źródłowej maszyny wirtualnej Hyper-V, używając następującego polecenia PowerShell:

    Get-Service QEMU-GA

    Checking the QEMU Guest Agent Service

    Można również sprawdzić stan usługi QEMU Guest Agent w graficznym interfejsie użytkownika systemu Windows, korzystając z modułu services.msc . Kliknij prawym przyciskiem myszy ikonę My Computer lub This PC , wybierz opcję Manage , a następnie w oknie Zarządzanie komputerem przejdź do sekcji Services and Applications > Services. Sprawdź usługę QEMU Guest Agent – usługa ta musi być uruchomiona z typem uruchamiania automatic .

    Checking the QEMU Guest Agent service in Windows

  10. Wyłącz maszynę wirtualną źródłową na hoście Hyper-V.
  11. Jeśli maszyna wirtualna posiada punkty kontrolne (migawki), usuń je. W naszym przykładzie maszyna wirtualna nie ma punktów kontrolnych.

Eksportowanie maszyny wirtualnej Hyper-V

Aby wyeksportować źródłową maszynę wirtualną Hyper-V, którą chcesz przenieść z Hyper-V do Proxmox VE, right-click maszynę wirtualną i wybierz Export z menu kontekstowego.

Starting to export the Hyper-V VM

Wskaż lokalizację, w której chcesz zapisać pliki wyeksportowanej maszyny wirtualnej, a następnie kliknij Export.

Specifying the export location of the Hyper-V VM

W tym przykładzie pliki są eksportowane do H:Exported na hoście Hyper-V.

Przenoszenie plików maszyny wirtualnej Hyper-V na serwer Proxmox

Skopiuj dyski wirtualne wyeksportowanej maszyny wirtualnej Hyper-V (VHD lub VHDX) na host Proxmox. Dyski wirtualne znajdują się w podkatalogu Virtual Hard Disks wyeksportowanej maszyny wirtualnej, w katalogu określonym dla eksportu maszyny wirtualnej. Korzystanie z WinSCP, klienta SCP i SFTP działającego przez SSH, jest wygodne do kopiowania plików z komputera z systemem Windows na komputer z systemem Linux, w tym na host Proxmox.

  1. Utwórz nową sesję w WinSCP i zaloguj się do swojego hosta Proxmox.
  2. Skopiuj dyski wirtualne VHD lub VHDX wyeksportowanej maszyny wirtualnej Hyper-V na host Proxmox. Wystarczy przeciągnąć & i upuścić pliki w WinSCP.

    Copying the virtual disk to the Proxmox host

  3. Sprawdź skopiowane dyski wirtualne maszyn wirtualnych Hyper-V na hoście Proxmox, aby upewnić się, że plik jest spójny i nie jest uszkodzony. Otwórz konsolę (terminal) na hoście Proxmox i uruchom to polecenie:

    qemu-img check -r all /home/user1/Downloads/Win10test.vhdx

    Checking the VHDX virtual disk image

Tworzenie nowej maszyny wirtualnej w Proxmox

Utwórz nową maszynę wirtualną w Proxmox. Można to zrobić za pomocą interfejsu internetowego Proxmox VE.

  1. Wybierz host Proxmox w Centrum danych , right-click i kliknij Create VM w menu kontekstowym. Skonfigurujemy tę nową maszynę wirtualną tak, aby wykorzystywała zaimportowane dyski wirtualne do procesu migracji.

    Creating a new VM on the Proxmox host

  2. Otworzy się kreator tworzenia maszyny wirtualnej Proxmox.
    • General. Wprowadź nazwę maszyny wirtualnej (na przykład Win10-migrated). Możesz pozostawić domyślną wartość identyfikatora maszyny wirtualnej. W naszym przypadku identyfikator maszyny wirtualnej to 101.
    • OS. Wybierz Nie używaj żadnego nośnika . Typ systemu operacyjnego gościa: Microsoft Windows ; wersja: 10/2016/2019 .
    • System. W sekcji Oprogramowanie układowe wybierz OVMF (UEFI) BIOS. W tym przypadku należy dodać dysk EFI oparty na urządzeniu q35 i bez wirtualnego modułu TPM (tak jak w maszynie wirtualnej źródłowej). Pozostaw VirtIO SCSI single jako kontroler SCSI, zgodnie z sugestią kreatora. Wybraliśmy UEFI, ponieważ migrujemy maszynę wirtualną Hyper-V Gen-2.
    • Disks. Pozostaw domyślne ustawienia, ale ustaw rozmiar dysku wirtualnego na 1 GB (jest to tymczasowy dysk wirtualny używany do utworzenia nowej maszyny wirtualnej; usuniemy go później).
    • CPU, Memory, Network: Wybierz dowolne wartości. Możesz ustawić ten sam Procesor i pamięć, co w maszynie źródłowej.

    VM configuration in the Proxmox VM creation wizard

  3. Po utworzeniu nowej maszyny wirtualnej Proxmox przejdź do ustawień maszyny Hardware , wybierz tymczasowy dysk wirtualny o pojemności 1 GB, który został niedawno utworzony, Hard Disk (ide0) w tym przypadku, i kliknij Detach. Po odłączeniu dysku wirtualnego nazwa dysku zostanie zmieniona na Unused Disk 0 w naszym przypadku.

    Detaching the 1-GB virtual disk from the new VM

  4. Usuń tymczasowy dysk wirtualny o pojemności 1 GB. Wybierz Unused Disk 0 i kliknij Remove.

    Deleting the 1-GB virtual disk

Konwersja plików VHDX do formatu QCOW2

Przekonwertuj dysk wirtualny Hyper-V (VHD lub VHDX) na hoście Proxmox do natywnego formatu Proxmox (KVM), aby korzystać z większej liczby funkcji (thin provisioning). Otwórz konsolę (terminal) na hoście Proxmox i wykonaj następujące polecenie z uprawnieniami administratora:

qemu-img convert -f vhdx -O qcow2 -o preallocation=off /var/lib/vz/dump/disk.vhdx /var/lib/vz/images/VMID/disk.qcow2

Gdzie:

-f vhdx służy do określenia formatu wejściowego (VHDX).

-O qcow2 służy do określenia formatu wyjściowego (QCOW2).

-o preallocation=off – włącza alokację dynamiczną dla docelowego pliku dysku wirtualnego (dysk zajmuje miejsce tylko na podstawie rzeczywistych danych).

/var/lib/vz/dump/disk.vhdx to źródłowy plik VHDX.

/var/lib/vz/images/VMID/disk.qcow2 to lokalizacja docelowa (zastąp VMID rzeczywistym identyfikatorem maszyny wirtualnej w Proxmox).

W naszym przykładzie dokładne polecenie do konwersji formatu dysku wirtualnego Hyper-V to Proxmox (z VHDX na QCOW2) jest następujące:

qemu-img convert -f vhdx -O qcow2 -o preallocation=off ./Win10test.vhdx /var/lib/vz/images/101/Win10-converted.qcow2

Poczekaj, aż dysk wirtualny zostanie przekonwertowany. W rezultacie zostanie utworzony nowy plik. Przekonwertowaliśmy Win10test.vhdx na Win10-converted.qcow2

Converting the VHDX virtual disk to the QCOW2 format

Przeskanuj ponownie magazyn Proxmox, aby rozpoznała nowe dyski wirtualne:

qm rescan

Rescanning virtual disks on the Proxmox host

Po ponownym przeskanowaniu dysków wirtualnych przekonwertowany dysk wirtualny zostanie wyświetlony w interfejsie internetowym Proxmox.

Podłączanie dysków wirtualnych do maszyny wirtualnej Proxmox

Dodaj przekonwertowany dysk o statusie Unused Disk do wcześniej utworzonej maszyny wirtualnej (w naszym przypadku dodajemy Win10-converted.qcow2 do maszyny wirtualnej Win10-migrated ). Można to zrobić w interfejsie internetowym Proxmox.

  1. Kliknij dwukrotnie nieużywany dysk (Unused Disk 0), aby podłączyć go do maszyny wirtualnej.

    Attaching the converted virtual disk to the Proxmox VM

  2. Wybierz IDE (lub SATA). Jeśli podłączysz zaimportowany i przekonwertowany dysk wirtualny do kontrolera SCSI, podczas uruchamiania systemu operacyjnego gościa tej maszyny wirtualnej pojawi się niebieski ekran śmierci (BSOD w systemie Windows). Po uruchomieniu z dysku IDE lub SATA system Windows zainstaluje sterowniki dla wirtualnego sprzętu maszyny wirtualnej Proxmox. Następnie można ponownie skonfigurować dysk wirtualny tak, aby korzystał z kontrolera dysków SCSI.

    Attaching the converted virtual disk to the virtual IDE disk controller

  3. Dodaj nowy tymczasowy dysk SCSI o pojemności 1 GB, który został niedawno utworzony. Utworzenie tymczasowego dysku podłączonego do kontrolera SCSI jest wymagane do zainstalowania sterowników niezbędnych do pracy z kontrolerami SCSI. Wybierz maszynę wirtualną utworzoną podczas migracji Hyper-V to Proxmox ( Win10-migrated ), przejdź do sekcji Hardware , kliknij Add i wybierz Hard Disk.

    Creating a new temporary 1-GB virtual disk

  4. Wybierz parametry dysku wirtualnego zgodnie z wcześniejszymi wyjaśnieniami, ale tym razem z magistralą/urządzeniem SCSI.

    Attaching the 1-GB virtual disk

  5. Edytuj kolejność uruchamiania. Wybierz swoją maszynę wirtualną, przejdź do Options > Boot order. Kliknij dwukrotnie Boot Order lub wybierz Boot Order i kliknij Edit.

    Editing the boot order

  6. Zaznacz odpowiednie pole wyboru, aby włączyć dysk wirtualny, który został przekonwertowany, zaimportowany i podłączony do tej maszyny wirtualnej. Domyślnie nowy dysk jest niezaznaczony na liście kolejności uruchamiania.
  7. Przenieś zaimportowany i włączony dysk na początek listy rozruchowej.

    Moving the converted virtual disk to the top of the boot order list

  8. Włącz maszynę wirtualną i połącz się z konsolą maszyny wirtualnej. Wybierz maszynę wirtualną utworzoną do migracji z Hyper-V do Proxmox, kliknij Start a następnie kliknij Console. System operacyjny gościa powinien się teraz uruchomić.

    Starting the VM and connecting to the VM console in Proxmox VE

  9. Sprawdź sprzęt w Menedżerze urządzeń gościnnego systemu operacyjnego Windows. Kliknij prawym przyciskiem myszy ikonę My Computer lub This PC , kliknij Manage i wybierz Device Manager. Alternatywnie możesz uruchomić przystawkę devmgmt.msc z wiersza poleceń.

    Powinieneś zobaczyć dwa dyski: przekonwertowany/zaimportowany dysk wirtualny (w naszym przypadku dysk o alokacji dynamicznej o pojemności 20 GB podłączony do kontrolera IDE) oraz tymczasowy dysk wirtualny SCSI o pojemności 1 GB.

    Powinieneś zobaczyć standardowy kontroler SATA/AHCI oraz kontroler VirtIO SCSI. Po zainstalowaniu kontrolera SCSI na maszynie wirtualnej po uruchomieniu systemu Windows z dysku IDE lub SATA instalowane są sterowniki umożliwiające korzystanie z kontrolera SCSI. Sterowniki te pozwalają nam uruchomić system operacyjny z dysku podłączonego do kontrolera SCSI. Możesz ponownie uruchomić maszynę wirtualną, aby upewnić się, że wszystko działa poprawnie.

    Checking virtual devices in the Windows guest OS

  10. Wyłącz maszynę wirtualną przeniesioną do Proxmox.
  11. Odłącz dysk wirtualny podłączony do kontrolera IDE. Wybierz dysk wirtualny w sekcji „ Hardware ” swojej przeniesionej maszyny wirtualnej i kliknij „ Detach”. W naszym przykładzie jest to obecnie dysk twardy „ ” (ide0) (20 GB).

    Detaching the converted virtual disk from the VMr

  12. Kliknij dwukrotnie ten dysk (obecnie nasz dysk o pojemności 20 GB jest dyskiem nieużywanym – Unused Disk 0), aby go podłączyć.

    Selecting the converted virtual disk to attach it to the VM

  13. Podłącz ten dysk wirtualny do kontrolera SCSI (magistrala/urządzenie) i kliknij Add.

    Attaching the converted virtual disk to the SCSI controller and bus

  14. Nasz dysk wirtualny o pojemności 20 GB to teraz Hard Disk (scsi1). Wciąż utrzymujemy tymczasowy dysk SCSI o pojemności 1 GB działający w tej maszynie wirtualnej.

    The converted virtual disk is attached to the Proxmox VM as a SCSI disk

  15. Edytuj kolejność uruchamiania maszyn wirtualnych. Przejdź do maszyny wirtualnej Options i kliknij dwukrotnie Boot Order, zgodnie z wcześniejszymi instrukcjami.
    • Wybierz dysk wirtualny z systemem Windows 10, który został niedawno podłączony do kontrolera SCSI (w tym przypadkuWin10-converted.qcow2 ).
    • Edytuj kolejność uruchamiania – przenieś ten zaimportowany dysk (z maszyny wirtualnej Hyper-V z systemem Windows 10) na początek listy.
  16. Uruchom maszynę wirtualną. System operacyjny Windows 10 powinien teraz uruchomić się z wirtualnego dysku SCSI.
  17. Po uruchomieniu systemu operacyjnego otwórz Device Manager i sprawdź dyski oraz kontrolery pamięci masowej. Teraz widzimy dwa dyski SCSI i dwa kontrolery SCSI (patrz zrzut ekranu poniżej). W tym przypadku każdy dysk SCSI jest podłączony do własnego kontrolera SCSI. Konfiguracja wyświetlana w Menedżerze urządzeń jest dla nas na tym etapie poprawna.

    Booting the guest OS on the migrated VM

  18. Jeśli wszystko działa poprawnie, wyłącz maszynę wirtualną.
  19. Uruchom ponownie maszynę wirtualną. Jeśli system operacyjny gościa uruchamia się poprawnie i wszystko działa prawidłowo, możesz odłączyć i usunąć tymczasowy dysk wirtualny SCSI o pojemności 1 GB z maszyny wirtualnej Proxmox (rm /var/lib/vz/images/101/vm-101-disk1.qcow2) oraz usunąć dysk wirtualny VHDX skopiowany z hosta źródłowego Hyper-V (rm/home/user1/Downloads/Win10-test.vhdx).

    Deleting temporary virtual disk files

Zapewnienie ochrony maszyn wirtualnych po migracji za pomocą NAKIVO

Po zakończeniu migracji z Hyper-V do Proxmox nie zapomnij zabezpieczyć swoich maszyn wirtualnych w środowisku Proxmox za pomocą dedykowanego rozwiązania do tworzenia kopii zapasowych. Jeśli źródłowe maszyny wirtualne Hyper-V były zabezpieczone przed migracją, przekonwertowane maszyny wirtualne nie będą automatycznie zabezpieczone w Proxmox VE.

NAKIVO Backup & Replication obsługuje ochronę maszyn wirtualnych w środowiskach wirtualnych Hyper-V, Proxmox, VMware vSphere i Nutanix. Rozwiązanie NAKIVO obsługuje maszyny wirtualne Kopia zapasowa bez serwera dla Proxmox . Konfiguracja jest prosta – wystarczy dodać hosty lub klastry Proxmox do zasobów i utworzyć zadania wykonywania kopii zapasowej.

Można przywrócić całe maszyny wirtualne lub przeprowadzić odzyskiwanie szczegółowe, aby szybko przywrócić poszczególne pliki lub obiekty. Odzyskiwanie danych jest możliwe do lokalizacji źródłowej lub niestandardowej. Można również wykonać eksport kopii zapasowej maszyn wirtualnych i przywrócić je na innej platformie wirtualizacyjnej.

NAKIVO Backup & Replication obsługuje:

  • Incremental backups. Zmniejsz zużycie przestrzeni dyskowej, kopiując wyłącznie dane, które uległy zmianie od ostatniej kopii zapasowej. Skonfigurowanie kopii przyrostowych wraz z okresowymi kopiami pełnymi zwiększa niezawodność łańcucha kopii zapasowych.
  • Application-aware backups. Upewnij się, że dane kopii zapasowej są spójne pod względem awarii i spójne z aplikacją. Wykonywaj kopie zapasowe maszyn wirtualnych nawet wtedy, gdy działają na nich aplikacje, i w razie potrzeby prawidłowo odzyskuj dane.
  • Backup encryption. Szyfruj kopie zapasowe podczas przesyłania i przechowywania, aby zapewnić . Skonfiguruj szyfrowanie po stronie źródła, w sieci oraz w repozytorium kopii zapasowych zgodnie z własnymi potrzebami.
  • Backup immutability. Chroń kopie zapasowe przed oprogramowaniem wymuszającym okup, wykorzystując niezmienność. Dane te nie mogą być modyfikowane, zmieniane ani usuwane przez oprogramowanie wymuszające okup.
  • Multiple backup locations. Wprowadź elastyczną politykę tworzenia kopii zapasowych i postępuj zgodnie z Zasada tworzenia kopii zapasowej 3-2-1. Rozwiązanie NAKIVO obsługuje przechowywanie kopii zapasowych na dyskach lokalnych, urządzeniach NAS, udziałach SMB i NFS, taśmach oraz w chmurze, w tym Magazynie Azure Blob, AWS S3 i innych magazynach obiektowych zgodnych z S3.

Wnioski

Aby przenieść maszynę wirtualną Hyper-V do Proxmox, należy przygotować maszynę źródłową, instalując sterowniki VirtIO, utworzyć nową maszynę wirtualną Proxmox, przekonwertować wyeksportowany dysk wirtualny i zaimportować przekonwertowany dysk do maszyny wirtualnej Proxmox. Wirtualne dyski SCSI zapewniają wyższą wydajność, ale wymagają dodatkowej konfiguracji, aby działały poprawnie. Należy również uruchomić system z dysku wirtualnego podłączonego do kontrolera dysków wirtualnych IDE lub SATA, dodać tymczasowy dysk SCSI w celu zainstalowania sterowników, a następnie podłączyć dysk rozruchowy do kontrolera SCSI. Nie zapomnij zabezpieczyć swoich danych za pomocą zaawansowanego rozwiązania do tworzenia kopii zapasowych, takiego jak NAKIVO Backup & Replication.

Wypróbuj NAKIVO Backup & Replication

Wypróbuj NAKIVO Backup & Replication

Skorzystaj z bezpłatnej wersji próbnej, aby poznać wszystkie funkcje rozwiązania w zakresie ochrony danych. 15 dni za darmo. Bez żadnych ograniczeń dotyczących funkcji ani pojemności. Nie trzeba podawać danych karty kredytowej.

People also read