Jak przekształcić fizyczny serwer Linux w maszynę wirtualną VMware: kompleksowy przewodnik

Uruchamianie serwerów na maszynach wirtualnych zapewnia szereg korzyści, takich jak skalowalność, racjonalne wykorzystanie zasobów, wysoka dostępność, równoważenie obciążenia, wygodne zarządzanie, funkcje ochrony danych itp. Z tego powodu warto rozważyć migrację niektórych serwerów fizycznych na maszyny wirtualne. Proces ten znany jest również jako konwersja z fizycznego na wirtualny (ang. physical to virtual) i określany jest skrótem P2V.

Firma VMware jest jednym z liderów branży IT w zakresie dostarczania rozwiązań do wirtualizacji, a system Linux jest jednym z najbardziej niezawodnych systemów operacyjnych działających na serwerach. W tym wpisie na blogu wyjaśniono znaczenie wykonywania kopii zapasowych serwerów z systemem Linux oraz sposób konwersji fizycznego serwera z systemem Linux na maszynę wirtualną (VM) działającą na hoście ESXi w środowisku vSphere. Na przykładzie systemu Ubuntu 18 omówiono dwie różne metody konwersji VMware P2V dla systemu Linux.

NAKIVO – tworzenie kopii zapasowej dla VMware vSphere

NAKIVO – tworzenie kopii zapasowej dla VMware vSphere

Kompleksowa ochrona danych dla maszyn wirtualnych VMware vSphere oraz opcje natychmiastowego odzyskiwania. Bezpieczne lokalizacje kopii zapasowych na miejscu, zdalnie oraz w chmurze. Funkcje ochrony przed oprogramowaniem wymuszającym okup.

Metoda 1 – Użycie VMware vCenter Converter

VMware vCenter Converter Standalone to darmowa aplikacja, którą można zainstalować na Windows do konwersji maszyn fizycznych Windows, maszyn fizycznych Linux, maszyn wirtualnych Hyper-V, maszyn wirtualnych VMware i maszyn wirtualnych działających na Red Hat KVM lub RHEL XEN. Obsługiwane typy docelowe obejmują: maszyny wirtualne dla niezarządzanego hosta ESXi; maszyny wirtualne dla hosta ESXi zarządzanego przez vCenter Server; maszyny wirtualne dla stacji roboczej VMware; maszyny wirtualne dla VMware Fusion.

Konwersja maszyny wirtualnej Hyper-V do maszyny wirtualnej VMware znajdującej się na hoście ESXi została wyjaśniona w ten wpis na blogu.

Zasada działania

Podczas konwersji działającej fizycznej maszyny Linux do maszyny wirtualnej w formacie VMware ESXi, VMware vCenter Converter Standalone nie instaluje agenta na źródłowej maszynie Linux (w odróżnieniu od maszyn Windows). Proces konwersji można podzielić na dwa główne etapy.

Etap 1 . VMware Converter łączy się ze źródłową maszyną Linux przez SSH i pozwala wybrać komponenty do skopiowania, takie jak dyski wirtualne i partycje. Zgodnie z wybranymi komponentami źródłowej fizycznej maszyny Linux i skonfigurowanymi ustawieniami docelowej maszyny wirtualnej, konwerter utworzy maszynę pomocniczą.

Etap 2 . Kiedy wszystkie niezbędne komponenty są wybrane i ustawienia sieciowe maszyny pomocniczej są skonfigurowane, VMware Converter tworzy maszynę pomocniczą na hoście docelowym ESXi i magazynach danych. Następnie konwerter uruchamia maszynę pomocniczą, która uruchamia się z obrazu ISO maszyny pomocniczej, i kopiuje wszystkie niezbędne dane z źródłowej maszyny Linux do docelowej maszyny wirtualnej, która ma status maszyny pomocniczej, aż do zakończenia procesu konwersji.

Maszyna pomocnicza jest wdrażana z opartym na Linuxie obrazem ISO przechowywanym w systemie plików maszyny Windows, na której zainstalowany jest konwerter. Domyślna lokalizacja plików converter-helper-vm.iso i converter-helper-vm-x64.iso używanych do uruchamiania maszyny pomocniczej na hoście ESXi to „ C:Program Files (x86)VMwareVMware vCenter Converter Standalone”.

Po skopiowaniu danych do docelowej maszyny wirtualnej, maszyna ta może zostać ponownie skonfigurowana przez VMware Converter, jeśli odpowiednie opcje zostały wybrane dla zadania konwersji.

Wymagania systemowe

Aby przeprowadzić konwersję P2V dla Linux z wykorzystaniem VMware Converter, muszą być spełnione pewne wymagania:

  • Fizyczna maszyna z systemem Linux musi być uruchomiona.
  • Host ESXi musi być uruchomiony i dostępny przez sieć. Klient i serwer vCenter Converter Standalone muszą mieć wzajemny dostęp. Do komunikacji sieciowej domyślnie wykorzystywane są porty TCP 22, 443 i 902.
  • Na fizycznej maszynie z systemem Linux, która ma zostać przekonwertowana, musi być używany program rozruchowy GRUB. Program LILO nie jest obsługiwany.
  • Płyty optyczne muszą zostać wysunięte z napędów optycznych.
  • Serwer SSH musi być skonfigurowany na fizycznej maszynie z systemem Linux (maszynie źródłowej).

Uwaga: Serwer SSH można zainstalować w systemie Ubuntu Linux za pomocą polecenia:

apt-get install openssh-server

Zdalny dostęp dla użytkownika z hasłem przez SSH można skonfigurować, edytując plik sshd_config :

vim /etc/ssh/sshd_config

Utwórz lub usuń komentarz z następującego wiersza:

PasswordAuthentication yes

Zapisz plik konfiguracyjny

:wq

Uruchom ponownie demona sshd (usługa)

service sshd restart

Konwersja VMware Converter z systemu Linux na P2V: przewodnik krok po kroku

Aby przeprowadzić konwersję z systemu Linux na P2V, należy wykonać następujące kroki:

1. Pobierz Pobierz program VMware vCenter Converter Standalone z oficjalnej strony internetowej.

2. Zainstaluj konwerter na komputerze z systemem Windows, który może połączyć się z komputerem z systemem Linux przez sieć. Proces instalacji jest prosty – wystarczy uruchomić plik EXE i postępować zgodnie z zaleceniami kreatora instalacji. W dzisiejszym przykładzie wykorzystano program VMware Converter 6.2.

3. Uruchom program VMware vCenter Converter Standalone.

4. Kliknij Convert machine.

Starting VMware P2V Linux conversion in vCenter Converter Standalone

5. Source System. W otwartym kreatorze konwersji maszyn wybierz system źródłowy. Wybierz opcję Powered on oraz Remote Linux machine. Podaj adres IP, nazwę użytkownika i hasło używane na zdalnej maszynie z systemem Linux. Należy pamiętać, że na komputerze z systemem Linux musi być skonfigurowany serwer SSH, a zapora sieciowa nie może blokować połączeń SSH na tym etapie. W przeciwnym razie wyświetli się komunikat o błędzie: Nie można nawiązać połączenia SSH z komputerem źródłowym. Sprawdź, czy zapora sieciowa blokuje dostęp do demona SSH na komputerze źródłowym . Wskazany użytkownik musi mieć możliwość zalogowania się do konsoli systemu Linux za pośrednictwem SSH przy użyciu kombinacji nazwy użytkownika i hasła lub pliku klucza prywatnego. W tym przykładzie przyjęto użytkownika o nazwie user1 z hasłem.

VMware converter Linux P2V conversion

5.1. Kliknij View source details, aby wyświetlić szczegóły zdalnego komputera z systemem Linux, który ma zostać przekształcony w maszynę wirtualną VMware. Kliknij Dalej , aby kontynuować i przejść do następnego kroku.

VMware converter Linux – viewing details for a source Linux machine

Jeśli pojawi się ostrzeżenie dotyczące bezpieczeństwa (ostrzeżenie o odcisku palca zdalnego hosta), kliknij Tak , aby nawiązać połączenie. Czasami konwerter nie może wykonywać poleceń na zdalnym komputerze z systemem Linux i pojawia się ostrzeżenie: Nie można zapytać o aktualnie działający komputer z systemem Linux. Upewnij się, że możesz uruchomić sudo bez wprowadzania hasła po zalogowaniu przez SSH jako twój_użytkownik .

W takim przypadku musisz edytować plik /etc/sudoers i pozwolić swojemu użytkownikowi uruchomić sudo bez wprowadzania hasła. Zamiast ręcznie edytować /etc/sudoers , użyj następującego polecenia:

visudo

Dodaj linię na końcu pliku w następujący sposób:

user1 ALL=(ALL) NOPASSWD: ALL

Gdzie user1 to imię naszego użytkownika. Musisz wpisać swoje imię użytkownika. Naciśnij Ctrl+X, aby wyjść i naciśnij Y (Tak), aby zapisać zmiany w pliku.

Editing ets sudoerc to perform P2V Linux migration

6. Destination System. Wybierz system docelowy. Domyślnie typ docelowy jest zdefiniowany jako maszyna wirtualna VMware Infrastructure , jeśli konwertujesz fizyczną maszynę Linux i jest to jedyna dostępna opcja konwersji fizycznej maszyny Linux do maszyny wirtualnej VMware. To oznacza, że maszyna docelowa będzie działać na serwerze ESXi lub w Klaster VMware vSphere. Jeśli twój Host ESXi, na którym chcesz uruchomić skonwertowaną maszynę wirtualną, jest zarządzany przez vCenter, wybierz adres IP swojego serwera vCenter i zdefiniuj dane uwierzytelniające administratora vCenter lub innego użytkownika, który ma uprawnienia administracyjne do zarządzania serwerem vCenter.

Uwaga: Nie możesz zamienić fizycznej maszyny Linux na maszynę w formacie VMware Workstation za pomocą oprogramowania VMware vCenter Converter Standalone.

VMware converter Linux – selecting a destination ESXi host

Jeśli widzisz ostrzeżenia certyfikatu, możesz nacisnąć Ignoruj , aby kontynuować.

7. Destination Virtual Machine. Wybierz centrum danych, aby przechować maszynę virtualną i wprowadź nazwę dla maszyny docelowej, na przykład Ubuntu18-04-vm .

VMware converter Linux – selecting the destination VM name and folder

8. Destination Location. Wybierz hosta ESXi do uruchomienia maszyny wirtualnej oraz magazyn danych do przechowywania plików maszyny wirtualnej. Możesz również wybrać wersję maszyny wirtualnej. Domyślnie wybierana jest najwyższa obsługiwana wersja maszyny wirtualnej. W tym przypadku jest to wersja 13, ponieważ używany jest ESXi 6.5.

VMware converter Linux – selecting destination location for P2V Linux conversion

9. Options. W tym kroku możesz edytować różne opcje konwersji.

Dane do skopiowania . Możesz wybrać wszystkie woluminy lub niestandardowe woluminy do skopiowania oraz wybrać typ alokacji dysku wirtualnego (przydzielanie zasobów w trybie „thick” lub „thin”). Możliwe jest również przechowywanie każdego dysku wirtualnego na innym magazynie danych. Pozostaw zaznaczone pole wyboru „ Utwórz zoptymalizowany układ partycji ”. Ta opcja jest używana do optymalizacji wyrównania partycji dysku.

VMware converter Linux – configuring options for Linux P2V migration

Urządzenia . Ustaw wymaganą ilość pamięci dla docelowej maszyny wirtualnej na karcie Memory . Ustaw kontroler dysku, liczbę procesorów i rdzeni procesorów na karcie Other .

Sieci . Wybierz liczbę wirtualnych kart sieciowych do połączenia z maszyną wirtualną. Następnie wybierz wirtualną sieć, do której każda karta sieciowa musi być połączone, typ kontrolera sieciowego i zaznacz pole wyboru Połącz przy uruchomieniu w razie potrzeby.

Opcje zaawansowane . Ustawienia pokonwersyjne znajdują się w tej sekcji. W naszym przypadku, do konwersji fizycznego serwera Linux do maszyny wirtualnej VMware, dostępna jest tylko opcja Rekonfiguruj docelową maszynę wirtualną . Ta opcja służy do skonfigurowania boot loadera, aktualizacji sterowników używanych przez system operacyjny do bardziej zoptymalizowanego działania maszyny wirtualnej w środowisku VMware (z odpowiednim wirtualnym sprzętem).

Sieć pomocniczej maszyny wirtualnej . Podczas procesu konwersji serwera Linux do maszyny wirtualnej, VMware vCenter Converter tworzy pomocniczą maszynę wirtualną na docelowym hoście/magazynie danych. Pomocnicza maszyna wirtualna musi mieć dostęp przez sieć do źródłowej maszyny fizycznej uruchomionej w systemie Linux, aby sklonować wszystkie pliki maszyny źródłowej. W tej sekcji możesz skonfigurować adres IP, maskę sieci, bramę i serwery DNS używane do połączenia sieciowego pomocniczej maszyny wirtualnej.

10. Summary. Sprawdź wszystkie ustawienia konwersji dla konwersji P2V Linux i jeśli wszystko jest poprawne, kliknij Zakończ , aby rozpocząć proces konwersji.

VMware converter Linux – the summary of conversion parameters

11. Poczekaj, aż proces konwersji zostanie ukończony. Czas trwania konwersji zależy od ilości danych przechowywanych na dyskach maszyny źródłowej Linux. Jeśli po zakończeniu konwersji zobaczysz status Zakończono dla zadania konwersji w VMware vCenter Converter, możesz uruchomić docelową maszynę wirtualną Linux w interfejsie VMware vSphere Client, VMware Host Client lub VMware Workstation.

VMware converter Linux – a P2V Linux conversion job is started

Jednak czasami proces konwersji P2V maszyny Linux może zakończyć się na 97% z błędem:

NIEPOWODZENIE: Wystąpił błąd podczas konwersji: 'GrubInstaller::InstallGrub: /usr/lib/vmware-converter/installGrub.sh zakończył się kodem zwrotnym: 127, i wiadomością: FATAL: kernel za stary Błąd uruchamiania vmware-updateGrub.sh poprzez chroot w /mnt/p2v-src-root Command:

chroot "/mnt/p2v-src-root" /vmware-updateGrub.sh "GRUB2" "(hd0)" "(hd0,1)" /vmware-device.map "grub2-install" '

VMware converter Linux – an error during reconfiguring the GRUB boot loader on the destination VM

Ten problem może wystąpić, ponieważ boot loader GRUB nie został poprawnie skonfigurowany przez VMware vCenter Converter na docelowej maszynie wirtualnej. Jeśli spróbujesz uruchomić maszynę wirtualną Linux po konwersji, otrzymasz błąd: Błąd ładowania systemu operacyjnego .

VMware P2V Linux conversion – Error loading operating system

Jak rozwiązać ten problem z VMware Converter Linux?

1. Musisz uruchomić z nośnika instalacyjnego Ubuntu i używać go jako dysku ratunkowego. Edytuj ustawienia maszyny wirtualnej przy użyciu VMware vSphere Client, VMware Host Client lub VMware Workstation (VM > Edit Settings).

2. W ustawieniach Sprzętu , wybierz napęd CD/DVD maszyny wirtualnej i wybierz bootowalny nośnik instalacyjny Ubuntu. W naszym przykładzie używamy obrazu dysku instalacyjnego ISO Ubuntu 18.04, który znajduje się na magazynie danych, dostępnym przez hosta ESXi, na którym znajduje się maszyna wirtualna Linux po konwersji. Nie zapomnij zaznaczyć pola wyboru Połącz przy włączaniu .

P2V Linux conversion – booting from an ISO image to fix the grub boot loader error

3. Po uruchomieniu maszyny wirtualnej naciśnij F2, aby wejść do ustawień BIOS maszyny wirtualnej. Wybierz CD-ROM jako pierwsze urządzenie rozruchowe w sekcji Rozruch .

Następnie przejdź do Exit > Exit Saving Changes.

Selecting CD-ROM as the first boot device for a VM in the virtual BIOS

Alternatywnie możesz zmienić kolejność rozruchu jednorazowo, naciskając Esc zamiast F2 zaraz po uruchomieniu maszyny wirtualnej.

4. Po uruchomieniu z nośnika instalacyjnego Ubuntu, wybierz Try Ubuntu na ekranie Powitanie . Poczekaj, aż Ubuntu załaduje się z Live DVD i zobaczysz Pulpit Ubuntu.

Booting from the Ubuntu installation disk to fix the GRUB boot loader error occurred during VMware P2V Linux conversion

5. Otwórz Konsolę Ubuntu i uzyskaj uprawnienia root.

sudo -i

6. Wyświetl dostępne dyski.

ls -al /dev/sd*

fdisk -l

W naszym przykładzie, najprostszy schemat partycjonowania dysku jest stosowany dla Ubuntu zainstalowanego na maszynie fizycznej. Linux jest zainstalowany na pojedynczej partycji /dev/sda1 , która reprezentuje cały dysk. Musisz określić, która partycja jest używana do uruchamiania Linuxa i zawiera katalog /boot/ lub jest zamontowana w katalogu /boot/.

7. Możesz znaleźć partycję używaną do uruchamiania Linuxa za pomocą parted:

parted /dev/sda

unit MB

p free

Detecting the partition used to boot Linux

Teraz zobaczysz, która partycja jest używana do uruchamiania Linuxa (flaga rozruch jest obecna w tym ciągu znaków). Następnie możesz zakończyć parted .

quit

Uwaga: Jeśli używasz ręcznego schematu partycjonowania i oddzielnej partycji rozruchowej do uruchamiania Linuxa, Twoja lista partycji będzie inna, ale powinieneś w podobny sposób znaleźć partycję z flagą rozruch .

8. Utwórz katalog na dysku RAM i zamontuj partycje używane przez Ubuntu. Jeśli Ubuntu jest zainstalowane na jednej partycji, użyj komend takich jak: mkdir /mnt/ubuntu18

mount /dev/sda1 /mnt/ubuntu18

Uwaga: Jeśli Ubuntu korzysta z wielu partycji, utwórz oddzielne katalogi i zamontuj każdą partycję do odpowiedniego katalogu:

mkdir /mnt/ubuntu18/boot

mkdir/mnt/ubuntu18/root

mount /dev/sda1 /mnt/ubuntu18/boot

mount /dev/sda2 /mnt/ubuntu18/root

itd.

9. Zainstaluj V im (edytor tekstu).

apt-get install vim

10. Sprawdź identyfikator dysku dla każdej partycji dysku. Musisz znać UUID partycji, która zawiera katalog /boot (lub partycję zamontowaną do katalogu /boot ). Zapamiętaj nowy UUID. W naszym przypadku ta partycja to /dev/sda1

blkid

Checking the disk identifier for each disk in a VM created after P2V Linux conversion

11. Edytuj plik /etc/fstab na wirtualnym dysku używanym przez zainstalowaną instancję Ubuntu. Plik /etc/fstab znajduje się w tymczasowym katalogu, do którego zamontowaliśmy system plików głównych Ubuntu (/mnt/ubuntu18/etc/fstab ).

vim /mnt/ubuntu18/etc/fstab

Editing etc fstab to fix the GRUB error occurred during P2V Linux conversion

Zmień UUID każdej partycji w /etc/fstab , aby umożliwić automatyczne montowanie partycji podczas uruchamiania systemu Linux. Zmień wartości starego UUID używane dla dysków na fizycznej maszynie z systemem Linux na nowe wartości UUID używane na nowej maszynie wirtualnej. W obecnym prostym przykładzie używana jest tylko jedna partycja /dev/sda1 i musi być zamontowana do katalogu głównego (/). Dlatego musimy zmienić 2516177b-e9a9-4502-bdae-a3626fe3ab0a na dd05b02c-8772-4ec2-9340-2473ec8c2f8b.

Zapisz zmiany i wyjdź z vim.

:wq

Uwaga: Jeśli Twój Linux korzysta z wielu partycji, możesz potrzebować zmienić wartość UUID dla innych partycji lub po prostu zdefiniować je jako sda2 , sda3 , sdb1 , sdb2 itd., aby umożliwić automatyczne montowanie tych partycji podczas uruchamiania systemu Linux.

12. Edytuj plik konfiguracyjny GRUB, który zwykle znajduje się w katalogu /boot/grub/. Pamiętaj o tymczasowym katalogu, do którego zamontowałeś partycję zawierającą pliki katalogu /boot/. Po konwersji fizycznej maszyny z systemem Linux na maszynę wirtualną, UUID dysku został zmieniony na docelowej maszynie wirtualnej, dlatego program ładujący (GRUB) nie może uruchomić się z wymaganej partycji. W naszym przypadku edytujemy plik grub.cfg poleceniem:

vim /mnt/ubuntu18/boot/grub/grub.cfg

13. Zamień stary UUID na nowy. UUID występuje kilka razy w pliku konfiguracyjnym, a ręczne edytowanie tej wartości jest niewygodne. Edytor tekstu vim umożliwia automatyczną zamianę tekstu źródłowego na tekst docelowy za pomocą polecenia: :%s/source_text/target_text/g

Gdzie %s oznacza, że wszystkie pasujące wartości w całym pliku tekstowym muszą zostać zastąpione.

W naszym obecnym przykładzie używamy polecenia:

:%s/2516177b-e9a9-4502-bdae-a3626fe3ab0a/dd05b02c-8772-4ec2-9340-2473ec8c2f8b/g

Editing grub.cfg and changing the UUID value to fix the GRUB error caused by P2V Linux conversion

Zapisz zmiany w pliku tylko do odczytu i zamknij program vim.

:wq!

Uwaga: Jeśli Twój system Linux korzysta z wielu partycji, zastąp wartości UUID wszystkich partycji, których identyfikatory UUID są wymienione w grub.cfg pliku.

14. Teraz należy ponownie zainstalować GRUB jako program rozruchowy w tym samym katalogu, w którym był on zainstalowany wcześniej. W naszym przykładzie GRUB był zainstalowany w katalogu /boot , a katalog /boot jest obecnie tymczasowo dostępny jako /mnt/ubuntu18/boot w naszym przykładzie. Dysk używany do uruchamiania systemu Ubuntu to odpowiednio /dev/sda .

grub-install --boot-directory=/mnt/ubuntu18/boot /dev/sda

15. Odmontuj wszystkie wcześniej zamontowane partycje:

umount /dev/sda1

16. Wyłącz maszynę wirtualną

init 0

17. W ustawieniach maszyny wirtualnej zmień konfigurację rozruchu tak, aby uruchamiała się z wirtualnego dysku twardego, a nie z napędu CD-ROM.

18. Włącz maszynę wirtualną.

19. Teraz maszyna wirtualna może uruchamiać się z własnego wirtualnego dysku twardego za pomocą GRUB-a na hoście ESXi.

W ten sposób wiesz już, jak przeprowadzić konwersję VMware P2V dla systemu Linux za pomocą programu VMware vCenter Converter Standalone. Niestety wersja programu VMware Converter dla systemu Linux nie jest dostępna, ale jeśli chcesz przekonwertować swój fizyczny serwer z systemem Linux na maszynę wirtualną VMware, korzystając wyłącznie z komputerów z systemem Linux, powinieneś zapoznać się z drugą metodą konwersji P2V dla systemu Linux.

Metoda 2 – Konwersja P2V dla systemu Linux bez programu VMware Converter

Druga metoda konwersji fizycznego komputera z systemem Linux na maszynę wirtualną w formacie ESXi nie wymaga programu VMware vCenter Converter Standalone. Metodę tę mogą stosować użytkownicy i administratorzy, którzy nie dysponują w swoim środowisku komputerem z systemem Windows (jak zapewne pamiętacie, program VMware vCenter Converter można zainstalować wyłącznie w systemie Windows). Zasada działania drugiej metody konwersji VMware P2V w systemie Linux jest następująca:

  • Utwórz obrazy dysków fizycznych używanych w fizycznym serwerze z systemem Linux za pomocą dd narzędzia
  • Przekonwertuj uzyskane obrazy na obrazy w formacie vmdk
  • Utwórz nową maszynę wirtualną w programie VMware Workstation (która może działać w systemie Linux lub Windows) przy użyciu istniejących dysków wirtualnych dla nowej maszyny wirtualnej
  • Eksportuj maszynę wirtualną z formatu VMware stacja robocza do szablonu OVF
  • Utwórz nową maszynę wirtualną na hoście ESXi na podstawie szablonu OVF

W naszym przykładzie system Ubuntu 18 jest zainstalowany na maszynie fizycznej, która musi zostać przekonwertowana, a także ESXi 6.5 i vCenter 6.5 są używane jako miejsce docelowe, a stacja robocza VMware 15 jest używana jako punkt przejściowy w procesie konwersji P2V Linux.

Przewodnik krok po kroku

1. Na fizycznym serwerze Linux uruchom narzędzie dd (replikator danych) dla każdego fizycznego dysku (/dev/sda , /dev/sdb itd.) i utwórz obraz każdego dysku. Możesz dołączyć zewnętrzny dysk twardy USB do swojego fizycznego komputera Linux i przechowywać obrazy wykonane za pomocą narzędzia dd na tym USB HDD. Później możesz dołączyć ten USB HDD do maszyny, na której należy utworzyć Maszynę Wirtualną. W bieżącym przykładzie wszystkie partycje używane przez Linux znajdują się na dysku /dev/sda :

dd if=/dev/sda of=/media/user1/data/sda.img bs=8M conv=sync,noerror status=progress

Gdzie:

if=/dev/sda – plik źródłowy, cały fizyczny dysk;

of=/media/user1/data/sda.img – ścieżka dla pliku obrazu wyjściowego znajdującego się na zewnętrznym dysku w tym przypadku.

bs=8M – rozmiar bloku wynosi 8 MB. Opcja ta przyspiesza proces, ponieważ dd domyślnie kopiuje dane, używając porcji danych o wielkości 512 bajtów

conv=sync,noerror – jest używana, aby zapobiec zatrzymaniu dd przy błędzie podczas odczytywania danych z dysku źródłowego (pliku).

status=progress – użyj tej opcji, aby wyświetlić postęp zadania w konsoli dla większej wygody

Using dd to create an image of a physical disk for VMware P2V Linux conversion

2. Zainstaluj qemu , który jest aplikacją open-source do emulacji sprzętu. Możesz zainstalować qemu na dowolnej maszynie z Linux.

apt-get install qemu

3. W konsoli Linux przejdź do katalogu, w którym znajdują się pliki img utworzone wcześniej. Przekształć obrazy swoich dysków, wykonane za pomocą narzędzia dd , z formatu pliku img na format vmdk . Można użyć do tego qemu. Konwertujemy jeden obraz dysku w naszym przykładzie:

qemu-img convert -o compat6 sda.img -O vmdk sda-vmware.vmdk

Teraz obrazy dysków są konwertowane do formatu vmdk i są gotowe do otwarcia w stacji roboczej VMware. Jak pamiętasz, format dysków wirtualnych VMDK różni się dla stacji roboczej VMware i VMware ESXi. Szczegóły dotyczące formatu pliku VMDK są wyjaśnione tutaj. Musisz wyeksportować Maszynę Wirtualną ze stacji roboczej VMware do szablonu OVF, a następnie zaimportować Maszynę Wirtualną z szablonu OVF do hosta ESXi.

Upewnij się, że stacja robocza VMware jest zainstalowana na dowolnym z Twoich komputerów. W naszym przykładzie, stacja robocza VMware 15 jest zainstalowana na maszynie działającej na Ubuntu 18, ale nie na źródłowej maszynie Linux, która ma być konwertowana do Maszyny Wirtualnej (nie używamy Windows dla tej metody konwersji P2V Linux). Algorytm dla maszyn Windows z VMware Workstation jest podobny.

4. Utwórz nowy katalog na maszynie, na której jest zainstalowany VMware Workstation, na przykład, /vms/P2V_Linux

mkdir /vms/P2V_Linux

5. Skopiuj swoje pliki vmdk skonwertowane przez qemu do tego katalogu. Kopiujemy plik sda-vmware.vmdk do tego katalogu w tym przypadku.

6. Utwórz nową maszynę wirtualną w VMware Workstation:

File > New virtual machine

Creating a new VM in VMware Workstation while converting a physical Linux server to an ESXi VM

Uruchomił się Kreator nowej maszyny wirtualnej . Powinieneś przejść przez wszystkie kroki konfiguracji tego kreatora:

Virtual Machine Configuration. Wybierz Niestandardowo (zaawansowane), aby umożliwić konfigurację zaawansowanych opcji. Naciśnij Dalej aby kontynuować.

Selecting a custom mode to create a VM for VMware P2V Linux conversion

Virtual Machine Hardware Compatibility. Wybierz niezbędną wersję sprzętu maszyny wirtualnej, na przykład, Workstation 15.x.

Guest Operation System Installation. Wybierz Zainstaluję system operacyjny później .

Guest Operating System. Wybierz Linux , potem wybierz Ubuntu 64-bit z menu rozwijanych.

Virtual Machine Name. Wprowadź nazwę i ustaw lokalizację dla swojej maszyny wirtualnej. W tym przykładzie, nazwa maszyny wirtualnej to P2V Linux , a jej lokalizacja to /vms/P2V_Linux_VM/

Selecting location for a new P2V Linux VM

Processor configuration. Wybierz liczbę procesorów i liczbę rdzeni procesora zgodnie z konfiguracją używaną na swojej fizycznej maszynie Linux, którą konwertujesz na maszynę wirtualną VMware.

Memory for the Virtual Machine. Ustaw ilość pamięci, która jest co najmniej równa ilości pamięci na twoim fizycznym komputerze Linux.

Network Connection. Wybierz typ sieci, na przykład, Sieć mostkowana . Upewnij się, że źródłowy serwer Linux jest teraz odłączony, aby zapobiec konfliktom sieciowym.

I/O Controller Types. Wybierz zalecaną wartość. W tym przykładzie, wybrana jest Kontroler SCSI: LSI Logic (Zalecany).

Virtual Disk Type. Wybierz zalecany typ dysku. W naszym przypadku, to SCSI (Zalecany).

Select a Disk. Wybierz opcję Use an existing virtual disk.

Using an existing virtual disk created after converting a physical disk to a virtual disk

Select an Existing Disk. Przejrzyj odpowiedni plik vmdk skonwertowanego dysku /dev/sda . W aktualnym przykładzie, plik sda-vmware.vmdk jest wybierany jako istniejący wirtualny dysk.

Uwaga: Jeśli masz wiele dysków twardych na źródłowym fizycznym serwerze Linux i wiele plików VMDK po konwersji, wybierz pierwszy plik vmdk , który został skonwertowany z dysku /dev/sda . Dodaj inne dyski ręcznie po utworzeniu maszyny wirtualnej poprzez edytowanie ustawień maszyny wirtualnej.

A suggestion to convert a virtual disk created for P2V Linux conversion to a newer format

Naciśnij Zachowaj istniejący format dla lepszej kompatybilności.

Ready to Create Virtual Machine. Sprawdź podsumowanie konfiguracji i jeśli wszystko jest poprawne, kliknij Zakończ .

Po utworzeniu Maszyny wirtualnej, możesz sprawdzić jej konfigurację przed uruchomieniem.

Uwaga: Jeśli przekształciłeś wiele fizycznych dysków na wirtualne dyski, dodaj pozostałe dyski wirtualne, wykonując następujące kroki:

  • Kliknij Maszyna wirtualna > Ustawienia
  • Kliknij Dodaj na karcie Sprzęt
  • Wybierz Dysk
  • Wybierz polecaną opcję (SCSI w naszej sytuacji)
  • Kliknij Użyj istniejącego dysku wirtualnego
  • Wybierz plik dysku wirtualnego

7. Włączanie Maszyny wirtualnej w VMware Stacja robocza (upewnij się, że wszystkie niezbędne dyski wirtualne zostały dodane do konfiguracji Maszyny wirtualnej).

8. Po załadowaniu Linuksa na Maszynie wirtualnej, sprawdź połączenie sieciowe:

ifconfig

9. Zainstaluj narzędzia VMware Tools na Linuksie uruchomionym na Maszynie wirtualnej. W Ubuntu, VMware Tools można zainstalować z obrazu ISO wirtualnego dysku lub z repozytoriów online.

apt-get install open-vm-tools

10. Jeśli wszystko jest poprawne, wyłącz Maszynę wirtualną i przygotuj się do utworzenia szablonu OVF w celu migracji Maszyny wirtualnej do Host ESXi.

11. W GUI VMware Stacja robocza, kliknij File > Export to OVF.

Exporting a VM to an OVF template to finish VMware P2V Linux conversion and import the VM on an ESXi host

12. Zapisz plik OVF w katalogu z Twoim Linuksem Maszyną wirtualną, na przykład. W bieżącym przykładzie, szablon OVF jest zapisany w /vms/P2V_Linux_VM/

13. Otwórz VMware vSphere Client w swojej przeglądarce internetowej.

14. Przejdź do Hosty i Klastry i wybierz Host ESXi, na którym chcesz uruchomić Maszynę wirtualną po konwersji.

15.  Utwórz Maszynę wirtualną z szablonu. Kliknij Actions > Deploy OVF Template.

Deploying the OVF template on an ESXi host to finish the VMware P2V Linux conversion

Nowe okno kreatora Wdrażanie szablonu OVF zostanie otwarte i zawiera 7 kroków:

1. Wybierz szablon OVF . Kliknij Plik lokalny , następnie kliknij PRZEGLĄDAJ . Powinieneś wybrać dwa pliki – plik OVF szablonu Maszyny wirtualnej oraz plik (pliki) VMDK wirtualnych dysków. Jeśli wybierzesz tylko jeden plik szablonu OVF, wyświetli się komunikat o brakujących plikach i ich nazwach. Pliki muszą być dostępne z maszyny, na której otworzyłeś VMware vSphere Client (pliki muszą być przechowywane na lokalnych dyskach, udziale SMB lub NFS itp.).

Selecting the OVF template and virtual disk files

2. Wybierz Nazwa i folder . Określ unikalną nazwę Maszyny wirtualnej i docelową lokalizację (centrum danych lub folder Maszyny wirtualnej). W bieżącym przykładzie, Nazwa maszyny wirtualnej to P2V_Linux .

3. Wybierz zasób obliczeniowy . Na tym etapie powinieneś wybrać hosta ESXi lub klaster, na którym będzie działać Twoja maszyna wirtualna.

Selecting a compute resource

Możesz uzyskać błąd na tym etapie: Wykryto problemy z wybraną formą. Szczegóły: – -1:-1:VALUE_ILLEGAL: Brak obsługiwanych wersji sprzętowych wśród [vmx-16]; obsługiwane: [vmx-04, vmx-07, vmx-08, vmx-09, vmx-10, vmx-11, vmx-12, vmx-13].

Ten błąd może wystąpić, gdy wersja sprzętowa ustawiona w szablonie maszyny wirtualnej jest wyższa niż wersja sprzętowa obsługiwana przez hosta ESXi.

Edytuj plik OVF w edytorze tekstu, aby rozwiązać ten problem. Możesz użyć Vim w Linuxie. Przejdź do katalogu, w którym znajduje się szablon OVF i edytuj plik:

vim P2V_Linux.ovf

Znajdź ciąg znaków jak vmx-xx , gdzie xx to numer wersji sprzętowej maszyny. Najwyższa obsługiwana wersja sprzętowa dla ESXi 6.5 to 13, a w naszym szablonie ustawiono wersję sprzętową maszyny 16.

Aby znaleźć potrzebny tekst w Vim , w trybie nawigacji wpisz:

/vmx-

Editing the virtual hardware version of the OVF template

Edytujmy vmx-16 na vmx-12 , na przykład, i zapisz plik OVF.

Gdy zapiszesz zmiany w pliku OVF, wróć do VMware vSphere Client i kliknij Next na etapie Wybierz zasoby obliczeniowe kreatora Wdrażanie szablonu OVF .

4. Przeglądaj szczegóły . Na tym etapie możesz zweryfikować szczegóły szablonu.

5. Wybierz magazyn . Wybierz docelowy magazyn danych do przechowywania konfiguracji i plików dyskowych maszyny wirtualnej oraz wybierz format dysku wirtualnego (Leniewy gruby z zerem, agresywny gruby z zerem, lub cienki).

Selecting storage on the final stage of VMware P2V Linux migration to an ESXi host

6. Wybierz sieci . Wybierz sieć dla każdego wirtualnego adaptera sieciowego. Powinieneś skonfigurować każdy adapter sieciowy, aby łączył się z odpowiednią siecią.

Connecting virtual network adapters of the VM to networks

7. Gotowe do zakończenia . Przejrzyj konfigurację i kliknij Zakończ , aby rozpocząć tworzenie maszyny wirtualnej.

Poczekaj, aż nowa maszyna wirtualna zostanie utworzona z szablonu.

16. Kiedy import maszyny wirtualnej z szablonu OVF jest zakończony, włącz maszynę wirtualną na swoim hoście ESXi. Więcej o szablonach maszyn wirtualnych przeczytasz w tej wpis na blogu. Jeśli otrzymasz komunikat „ Czy chcesz spróbować łączyć to wirtualne urządzenie za każdym razem, gdy uruchomisz maszynę wirtualną?”, odpowiedz, że nie chcesz łączyć tego urządzenia za każdym razem podczas rozruchu maszyny, klikając Nie.

VMware P2V Linux conversion is finished – the converted VM is powered on

Fizyczny serwer Linux został przekształcony w maszynę wirtualną bez użycia Windows i VMware vCenter Converter Standalone. Proces konwersji VMware P2V Linux został wyjaśniony na przykładzie Ubuntu Linux. Jeśli potrzebujesz przekonwertować serwery fizyczne uruchamiające inne dystrybucje Linuksa takie jak SUSE lub Red Hat do maszyn wirtualnych VMware, użyj tego samego algorytmu, ale pamiętaj, że niektóre komendy i lokalizacje plików konfiguracyjnych mogą się różnić. Zamiast używać menedżera pakietów apt-get w SUSE, powinieneś użyć zypper , a w Red Hat użyj yum . Być może będziesz musiał skonfigurować ponownie ustawienia sieciowe maszyny wirtualnej, takie jak adres IP, domyślna brama, serwer DNS itd.

Możesz także obejrzeć ten film, aby zobaczyć oba sposoby konwersji P2V Linuksa VMware w działaniu:

Wniosek

Konwersja fizycznego serwera Linuksa do maszyny wirtualnej VMware może być wykonana przy użyciu różnych metod – z VMware vCenter Converter Standalone, który wymaga maszyny z Windowsem oraz przy użyciu narzędzi Linuksa w połączeniu z VMware Workstation. Przy używaniu którejkolwiek z tych metod, może być konieczne ręczne edytowanie konfiguracji maszyny wirtualnej. Przy użyciu pierwszej metody, tylko host ESXi może być wykorzystany jako miejsce docelowe dla P2V konwersji Linuksa, podczas gdy druga metoda może być użyta do konwersji fizycznej maszyny Linuksa zarówno do formatów VMware ESXi, jak i VMware Workstation.

Wypróbuj NAKIVO Backup & Replication

Wypróbuj NAKIVO Backup & Replication

Skorzystaj z bezpłatnej wersji próbnej, aby zapoznać się ze wszystkimi funkcjami rozwiązania w zakresie ochrony danych. 15 dni za darmo. Bez żadnych ograniczeń dotyczących funkcji ani pojemności. Nie jest wymagana karta kredytowa.

People also read