Jak zainstalować KVM/QEMU w Centos 8

Jak zainstalować KVM/QEMU w Centos 8
Pełna forma KVM jest wirtualna maszyna jądra. Jest to rozwiązanie wirtualizacyjne dla Linuksa. KVM to moduł jądra Linux, który umożliwia jądrze Linux działać jako program hipervisor, taki jak VMware ESXI lub VSPHERE.

W tym artykule pokażę Ci, jak zainstalować KVM w Centos 8 i utworzyć z nim prostą maszynę wirtualną KVM. Więc zacznijmy.

Włączanie wirtualizacji sprzętu:

Musisz włączyć rozszerzenie wirtualizacji sprzętu z BIOS komputera, aby KVM działał. W przypadku procesorów Intel należy włączyć funkcję procesora VT-X lub VT-D z BIOS. W przypadku procesorów AMD należy włączyć funkcję procesora AMD-V z BIOS.

Po włączeniu wirtualizacji sprzętu w BIOS uruchom następujące polecenie, aby sprawdzić, czy rozszerzenie VT-x/VT-D lub AMD-V jest włączone.

$ grep-color --perl-regexp 'vmx | svm' /proc /cpuinfo

Powinieneś mieć albo SVM Lub VMX flaga dostępna w wyjściu, jeśli masz włączoną wirtualizację sprzętu w BIOS.

Używam procesora AMD. Więc SVM Flaga jest dostępna w moim przypadku. Jeśli używasz procesora Intel, będzie tak VMX.

Uaktualnienie systemu:

Przed zainstalowaniem KVM należy zaktualizować wszystkie istniejące pakiety oprogramowania swojego komputera CentOS 8.

Najpierw zaktualizuj pamięć podręczną repozytorium pakietów DNF maszyny CentOS 8 za pomocą następującego polecenia:

$ sudo dnf makeCache

Pamięć podręczna repozytorium pakietów DNF powinna zostać zaktualizowana.

Uaktualnij wszystkie istniejące pakiety oprogramowania komputera CentOS 8 za pomocą następującego polecenia:

Aktualizacja $ sudo dnf

Aby potwierdzić aktualizację, naciśnij Y a następnie naciśnij .

Menedżer pakietów DNF powinien pobrać wszystkie wymagane pakiety z Internetu.

Po zakończeniu pobierania pakietu powinien zainstalować wszystkie pobrane pakiety. Ukończenie może potrwać trochę czasu.

W tym momencie system Centos 8 powinien być aktualny.

Aby zmiany zaczęły się uruchomić, ponownie uruchom maszynę CentOS 8 za pomocą następującego polecenia:

$ sudo restart

Ustawienie SELINUX w tryb dopuszczalny:

Konfigurowanie Selinux dla KVM jest poza zakresem tego artykułu. Jeśli opuścisz Selinux w egzekwowanie tryb (domyślnie), otrzymasz błędy odmowy uprawnień podczas tworzenia maszyn wirtualnych KVM. Jeśli nie masz doświadczenia z Selinux, powinieneś go ustawić dozwalający tryb. W przeciwnym razie nie będziesz mógł tworzyć maszyn wirtualnych KVM.

Aby ustawić Selinux na dozwalający tryb, otwórz /etc/selinux/config plik z edytorem tekstu (i.mi. Nano) Z następującym poleceniem:

$ sudo nano/etc/selinux/config

Zmień linię Selinux = egzekwowanie Do SELINUX = dopuszczalny jak zaznaczono na zrzucie ekranu poniżej.

Po zakończeniu naciśnij + X śledzony przez Y I Aby zapisać plik konfiguracyjny.

Aby zmiany zaczęły się uruchomić, ponownie uruchom komputer za pomocą następującego polecenia:

$ sudo restart

Instalowanie KVM:

Możesz łatwo zainstalować wszystkie wymagane pakiety wirtualizacji KVM w Centos 8, po prostu instalując Host wirtualizacji Grupa pakietów.

Możesz zainstalować Host wirtualizacji Grupa pakietów na komputerze CentOS 8 z następującym poleceniem:

$ sudo dnf grupa

Aby potwierdzić instalację, naciśnij Y a następnie naciśnij .

Menedżer pakietów DNF powinien pobrać wszystkie wymagane pakiety z Internetu.

Po zakończeniu pobierania pakietu powinien zainstalować wszystkie pobrane pakiety. Ukończenie może potrwać trochę czasu.

W tym momencie KVM należy zainstalować.

Teraz sprawdź, czy libvirtd Usługa działa z następującym poleceniem:

$ sudo systemCtl status libvirtd

Jak widać, libvirtd Usługa jest aktywny/działanie. libvirtd Usługa jest bardzo ważna. Jeśli nie działa, nie będziesz mógł administrować KVM.

Jeśli libvirtd Usługa nie działa w twoim przypadku, możesz uruchomić ją od następującego polecenia:

$ sudo systemctl start libvirtd

Sprawdź, czy możesz uruchomić polecenie KVM Management Virsh następująco:

$ sudo virsh --version

Polecenie powinno wydrukować informacje o wersji, jak widać na zrzucie ekranu poniżej.

Instalowanie vir-install:

Virt-install jest narzędziem wiersza poleceń do łatwego tworzenia maszyn wirtualnych KVM. Virt-install oparta jest na Libvirt. Tak więc maszyny wirtualne utworzone za pomocą Virt-install można również zarządzać Virsh I Virt-manager.

Możesz zainstalować Virt-install Z następującym poleceniem:

$ sudo dnf instaluj cirt-install

Aby potwierdzić instalację, naciśnij Y a następnie naciśnij .

Virt-install należy zainstalować.

Konfigurowanie wymaganych katalogów KVM:

Myślę, że dobrym pomysłem jest zorganizowanie wszystkich danych wirtualnych. Zwykle przechowuję wszystkie dane maszyny wirtualnej KVM /kvm/ informator. w /kvm/ katalog, tworzę 2 podkatalogowe dysk/ I ISO/. w dysk/ subdirectory, przechowuję wszystkie pliki dysku twardego maszyny wirtualnej (VM). w ISO/ subdirectory, przechowuję obrazy instalacyjne ISO różnych systemów operacyjnych (i.mi. Ubuntu, Debian, centos itp.).

Możesz utworzyć te same struktury katalogu za pomocą następującego polecenia:

$ sudo mkdir -pv /kvm /dysk, ISO

Tworzenie wirtualnej maszyny KVM:

W tej sekcji pokażę ci, jak stworzyć pulpit Ubuntu 20.04 LTS KVM Virtual Machine.

Najpierw musisz pobrać pulpit Ubuntu 20.04 LTS ISO Instalacja obraz. Aby utrzymać wszystkie wirtualne pliki/dane maszynowe, dobrym pomysłem jest przechowywanie obrazu ISO w /kvm/ISO/ informator.

Więc przejdź do /kvm/ISO/ Katalog z następującym poleceniem:

$ CD /kVM /ISO

Możesz pobrać pulpit Ubuntu 20.04 Zdjęcie ISO LTS z oficjalnej strony internetowej Ubuntu z następującym poleceniem:

$ sudo wget https: //.Ubuntu.com/20.04/Ubuntu-20.04.1-Desktop-AMD64.ISO

wget powinien zacząć pobierać pulpit Ubuntu 20.04 LTS ISO Obraz. Ukończenie zajmie trochę czasu.

W tym momencie pulpit Ubuntu 20.04 LTS ISO Należy pobrać.

Pulpit Ubuntu 20.04 LTS ISO Obraz jest dostępny w /kvm/ISO/ katalog, jak widać na zrzucie ekranu poniżej.

Kiedyś pulpit Ubuntu 20.04 LTS ISO jest pobierany, możesz utworzyć maszynę wirtualną KVM za pomocą następującego polecenia:

$ sudo vir-install --Name Udesktop20_04-01 \
--Linux typu OS \
--OS-VARIANT UBUNTU19.10 \
--RAM 4096 \
--dysk/kvm/dysk/udesktop20_04-01.IMG, urządzenie = dysk, bus = virtio, rozmiar = 20, format = qcow2 \
--Graphics VNC, słuchaj = 0.0.0.0 \
--noautoconsole \
--hvm \
--CDROM/KVM/ISO/UBUNTU-20.04.1-Desktop-AMD64.ISO \
--Boot CDROM, HD

Tutaj nazwa maszyny wirtualnej będzie Udesktop20_04-01.

System operacyjny, który będziemy instalować Linux.

Wariant systemu operacyjnego to Ubuntu19.10. Baza danych OS CentOS 8 nie ma wpisu dla Ubuntu 20.04 LTS w momencie tego pisania. Użyłem informacji dla Ubuntu 19.10.

Wartości typu systemu operacyjnego i wariantu OS nie są losowe. Możesz znaleźć typ systemu operacyjnego i wariant systemu operacyjnego dla pożądanego dystrybucji Linux z Osinfo-Query Komenda. Jak widać, nie ma wpisu dla Ubuntu 20.04 LTS jest dostępne. Ale wpis dla Ubuntu 19.10 jest dostępnych. Typ OS Ubuntu 19.10 to Linux A wariant OS to Ubuntu19.10.

$ Osinfo-Query OS--Fields = Nazwa, krótka id, rodzina | Grep -i Ubuntu

RAM (pamięć o losowo dostępu) VM wyniesie 4096 MB (megabajty) lub 4 GB (gigabytes).

Dysk wirtualny maszyny wirtualnej zostanie zapisany w /kvm/dysk/udesktop20.04-01.img plik. Dysk wirtualny jest o 20 GB pod względem wielkości i format QCOW2 (Qemu Copy-on-Write V2)

Maszyna wirtualna będzie dostępna za pośrednictwem VNC (Virtual Network Computing) Protocol pulpitu zdalnego, a serwer VNC będzie słuchał we wszystkich dostępnych interfejsach sieciowych skonfigurowanych na hoście Centos 8 KVM.

Host CentOS 8 kVM nie będzie automatycznie próbować podłączyć się do maszyny wirtualnej po utworzeniu maszyny wirtualnej. Maszyna wirtualna będzie działać w tle.

Użyj pełnej wirtualizacji dla maszyny wirtualnej. To sprawi, że maszyny wirtualne osiągają lepsze wyniki.

Użyj pulpitu Ubuntu 20.04 LTS ISO Obraz, który właśnie pobraliśmy jako wirtualny CD/DVD ROM z maszyny wirtualnej. Używane do instalacji pulpitu Ubuntu 20.04 LTS na maszynie wirtualnej.

Zestaw kolejności rozruchu maszyny wirtualnej. Pierwszym wpisem rozruchu jest wirtualny ROM CD/DVD, a następnie wirtualny dysk twardy. Tak więc maszyna wirtualna będzie mogła uruchomić się z pulpitu Ubuntu 20.04 LTS ISO Obraz i zainstaluj pulpit Ubuntu 20.04 LTS na dysku twardym.

To wszystkie opcje potrzebne do utworzenia maszyny wirtualnej KVM.

Po uruchomieniu Virt-install Polecenie, KVM powinien zacząć tworzyć maszynę wirtualną. Może to potrwać w zależności od konfiguracji maszyny wirtualnej.

W tym momencie należy utworzyć maszynę wirtualną KVM.

Lista maszyn wirtualnych KVM:

Po utworzeniu maszyny wirtualnej KVM możesz wymienić ją za pomocą następującego polecenia:

Lista $ Virsh -All

Polecenie powinno pokazać wszystkie posiadane maszyny wirtualne KVM. W tej chwili mam tylko 1 maszynę wirtualną Udesktop20_04-01. To właśnie właśnie stworzyłem. Jak widać, maszyna wirtualna Udesktop20_04-01 Jest działanie. Powinieneś być w stanie połączyć się z nim za pomocą dowolnego klienta VNC.

Konfigurowanie zapory w celu zdalnego dostępu do maszyn wirtualnych KVM:

Aby zdalnie uzyskać dostęp do maszyny wirtualnej KVM, musisz umożliwić zaporę zapory do portu VNC maszyny wirtualnej.

Aby znaleźć port VNC maszyny wirtualnej KVM Udesktop20_04-01, Uruchom następujące polecenie:

$ virsh vncdisplay udesktop20_04-01

Jak widać, numer portu VNC Udesktop20_04-01 Maszyna wirtualna jest 0.

Tutaj, port 0 oznacza port 5900. W ten sam sposób, port 1 oznacza port 5901 i tak dalej.

Jak widać, maszyna wirtualna KVM Udesktop20_04-01 działa na porcie 5900 (: 0).

$ sudo netstat -tln

Aby umożliwić dostęp do portu 5900, Uruchom następujące polecenie:

$ sudo firewall-cmd --add-port = 5900/tcp-permanent

Aby zmienia się zapory ogniowa, uruchom następujące polecenie:

$ sudo firewall-cmd-odpowiadanie

Zdalnie łącząc się z maszynami wirtualnymi KVM z klientem VNC:

Aby połączyć się z maszyną wirtualną za pośrednictwem VNC, musisz znać adres IP swojego hosta Centos 8 KVM.

Adres IP swojego hosta CentOS 8 kVM za pomocą następującego polecenia:

$ ip a

W moim przypadku adres IP to 192.168.0.103. Będzie dla Ciebie inaczej. Więc upewnij się, że odtąd zastąp go swoim.

Otwórz dowolnego klienta VNC i połącz się z adresem 192.168.0.103: 0.

Kliknij Kontynuować.

Kliknij Kontynuować.

Powinieneś być podłączony do wyświetlania Udesktop20_04-01 KVM wirtualna maszyna, jak widać na zrzucie ekranu poniżej.

Teraz możesz zainstalować żądany system operacyjny na maszynie wirtualnej.

W moim przypadku zainstaluję pulpit Ubuntu 20.04 LTS System operacyjny na maszynie wirtualnej.

Ubuntu Desktop 20.04 LTS jest instalowany na maszynie wirtualnej KVM. Ukończenie może potrwać trochę czasu.

Po zakończeniu instalacji kliknij Zrestartuj teraz.

Naciskać .

Połączenie VNC powinno zostać zamknięte.

Maszyna wirtualna powinna być automatycznie wyłączona po zakończeniu instalacji systemu operacyjnego, jak widać na zrzucie ekranu poniżej.

$ sudo virsh lista -All

Zacząć Udesktop20_04-01 Maszyna wirtualna KVM z następującym poleceniem:

$ virsh start Udesktop20_04-01

Maszyna wirtualna Udesktop20_04-01 należy rozpocząć.

Teraz możesz połączyć się z Udesktop20_04-01 maszyna wirtualna od klienta VNC jak wcześniej. Jak widać, pulpit Ubuntu 20.04 LTS działa dobrze w maszynie wirtualnej KVM.

Usuwanie maszyn wirtualnych KVM:

Możesz również bardzo łatwo usunąć maszynę wirtualną KVM za pomocą Virsh narzędzie wiersza polecenia.

Jak widać, mam 2 kvm maszyny wirtualne (Udesktop20_04-01 I Udesktop20_04-02) Bieganie na moim hoście Centos 8 KVM. Usuńmy Udesktop20_04-02 Maszyna wirtualna KVM.

Lista $ Virsh -All

Jak widać, Udesktop20_04-02 Wirtualna maszyna KVM jest działanie. Musisz to zatrzymać, zanim go usuniesz.

Lista $ Virsh -All

Zmusić zatrzymanie Udesktop20_04-02 Maszyna wirtualna KVM, uruchom następujące polecenie:

$ virsh niszczy Udesktop20_04-02

Jak widać, Udesktop20_04-02 Maszyna wirtualna jest wyłączona.

Lista $ Virsh -All

Możesz trwale usunąć Udesktop20_04-02 Maszyna wirtualna i wszystkie załączone wirtualne dyski twarde za pomocą następującego polecenia:

$ virsh undefine--Remove-All-Storage Udesktop20_04-02

Jak widać, Udesktop20_04-02 Maszyna wirtualna nie jest już dostępna.

Lista $ Virsh -All

Problem nr 1: Naprawienie CPU-> kvm_msr_buf-> nmsrs Błąd asercji

Podczas tworzenia maszyny wirtualnej KVM na hoście CentOS 8 kVM możesz zobaczyć następujący komunikat o błędzie. To błąd jądra. Zwykle dzieje się tak, gdy uruchamiasz KVM w innej maszynie wirtualnej. Uruchamiam KVM wewnątrz maszyny wirtualnej VMware. Właśnie dlatego dostałem ten błąd. Można go naprawić.

Otwórz plik konfiguracyjny /etc/modprobe.D/kvm.conf Z następującym poleceniem:

$ sudo nano /etc /modprobe.D/kvm.conf

/etc/modprobe.D/kvm.conf Plik należy otworzyć. Musisz włączyć opcję specyficzną dla procesora dla zagnieżdżonej wirtualizacji KVM.

Jeśli używasz procesora Intela, pocukaj linię oznaczoną na zrzucie ekranu poniżej.

Jeśli używasz procesora AMD, pocukaj linię oznaczoną na zrzucie ekranu poniżej.

Następnie dodaj linię opcje kvm ignore_msrs = 1 Na końcu pliku, jak pokazano na zrzucie ekranu poniżej.

Po zakończeniu naciśnij + X śledzony przez Y I Aby uratować /etc/modprobe.D/kvm.conf plik.

Następnie ponownie uruchom swój host CentOS 8 kVM z następującym polecenie.

$ sudo restart

Twój problem należy rozwiązać.

Problem nr 2: Naprawienie błędu protokołu RFB klienta VNC:

Po połączeniu z maszyną wirtualną KVM za pomocą klienta VNC możesz zobaczyć następujący komunikat o błędzie. Ten komunikat o błędzie jest wyświetlany, gdy jest ustawiona jakość obrazu klienta VNC Automatyczny. Można go naprawić.

Kliknij na Nieruchomości Ikona Twojego klienta VNC.

Jak widać, Jakość obrazu jest ustawione na Automatyczny.

Aby rozwiązać ten problem, wybierz albo Niski, Średni, Lub Wysoki z Jakość obrazu Menu rozwijane.

Po zakończeniu kliknij OK.

Twój problem należy rozwiązać.

Wniosek:

W tym artykule pokazałem, jak zainstalować KVM w CentOS 8 i utworzyć maszyny wirtualne KVM z wiersza poleceń. Pokazałem również, jak usunąć wirtualne maszyny i rozwiązania KVM w niektórych typowych problemach KVM. To powinno pomóc w rozpoczęciu wirtualizacji Linux KVM.