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.
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.
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.
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.
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.
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.
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 .
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.
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.
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.
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.
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" '
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 .
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 .
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.
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.
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
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
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
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
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
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
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ć.
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/
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.
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.
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.
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.
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.).
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.
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-
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).
6. Wybierz sieci . Wybierz sieć dla każdego wirtualnego adaptera sieciowego. Powinieneś skonfigurować każdy adapter sieciowy, aby łączył się z odpowiednią siecią.
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.
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.































