Hvordan installere KVM/QEMU på Centos 8

Hvordan installere KVM/QEMU på Centos 8
Den fulle formen for KVM er kjernen Virtual Machine. Det er en virtualiseringsløsning for Linux. KVM er en Linux -kjernemodul som lar Linux -kjernen fungere som et hypervisorprogram som VMware ESXi eller vSphere.

I denne artikkelen skal jeg vise deg hvordan du installerer KVM på Centos 8 og lager en enkel Virtuell KVM -maskin med den. Så la oss komme i gang.

Aktivering av maskinvarevirtualisering:

Du må aktivere virtualiseringsutvidelse fra maskinvare fra BIOS på datamaskinen din for at KVM skal fungere. For Intel-prosessorer bør du aktivere prosessorfunksjonen VT-X eller VT-D fra BIOS. For AMD-prosessorer bør du aktivere prosessorfunksjonen AMD-V fra BIOS.

Når du har fått virtualisering av maskinvare aktivert i BIOS, kjører du følgende kommando for å bekrefte om VT-X/VT-D eller AMD-V-utvidelse er aktivert.

$ grep--farge-PERL-GEGEXP 'VMX | SVM' /Proc /CPuInfo

Du burde ha enten SVM eller VMX flagg tilgjengelig i utdataene hvis du har maskinvarevirtualisering aktivert i BIOS.

Jeg bruker en AMD -prosessor. Så SVM Flagg er tilgjengelig i mitt tilfelle. Hvis du bruker en Intel -prosessor, vil det være VMX.

Oppgradering av systemet:

Før du installerer KVM, bør du oppgradere alle de eksisterende programvarepakkene til CentOS 8 -maskinen din.

Oppdater først DNF -pakkelagdebufferen til CentOS 8 -maskinen din med følgende kommando:

$ sudo dnf makecache

DNF -pakkelagdebufferen skal oppdateres.

Oppgrader alle eksisterende programvarepakker i CentOS 8 -maskinen din med følgende kommando:

$ SUDO DNF -oppdatering

For å bekrefte oppgraderingen, trykk Y Og trykk deretter .

DNF -pakkebehandleren bør laste ned alle nødvendige pakker fra Internett.

Når nedlastingen av pakken er fullført, skal den installere alle nedlastede pakker. Det kan ta en stund å fullføre.

På dette tidspunktet skal CentOS 8 -systemet ditt være oppdatert.

For at endringene skal tre i kraft, start Centos 8 -maskinen på nytt med følgende kommando:

$ sudo omstart

Angi Selinux til tillatt modus:

Konfigurere Selinux for KVM er utenfor omfanget av denne artikkelen. Hvis du forlater Selinux i håndheving modus (standard), vil du få tillatede feil mens du oppretter KVM virtuelle maskiner. Hvis du ikke har erfaring med Selinux, bør du stille den til tillatt modus. Ellers vil du ikke kunne lage KVM virtuelle maskiner.

Å stille Selinux til tillatt modus, åpne /etc/selinux/config fil med en tekstredigerer (i.e. Nano) med følgende kommando:

$ sudo nano/etc/selinux/config

Endre linjen Selinux = håndheving til Selinux = tillatt Som merket på skjermbildet nedenfor.

Når du er ferdig, trykk + X etterfulgt av Y og For å lagre konfigurasjonsfilen.

For at endringene skal tre i kraft, start datamaskinen på nytt med følgende kommando:

$ sudo omstart

Installere KVM:

Du kan enkelt installere alle nødvendige pakker for KVM -virtualisering på CentOS 8 ved å installere Virtualiseringsvert Pakkegruppe.

Du kan installere Virtualiseringsvert Pakkegruppe på CentOS 8 -maskinen din med følgende kommando:

$ sudo dnf groupinstall "virtualization host"

For å bekrefte installasjonen, trykk Y Og trykk deretter .

DNF -pakkebehandleren bør laste ned alle nødvendige pakker fra Internett.

Når nedlastingen av pakken er fullført, skal den installere alle nedlastede pakker. Det kan ta en stund å fullføre.

På dette tidspunktet bør KVM installeres.

Nå, sjekk om libvirtd Tjenesten kjører med følgende kommando:

$ sudo systemctl status libvirtd

Som du kan se, libvirtd tjenesten er aktiv/løping. libvirtd Tjenesten er veldig viktig. Hvis den ikke kjører, vil du ikke kunne administrere KVM.

Hvis libvirtd Tjenesten kjører ikke i ditt tilfelle, du kan starte den med følgende kommando:

$ sudo systemctl start libvirtd

Sjekk om du kan kjøre KVM Management -kommandoen Virsh følgende:

$ sudo virsh --version

Kommandoen skal skrive ut versjonsinformasjonen som du kan se på skjermdumpen nedenfor.

Installere virtinstaller:

virtinstaller er et kommandolinjeverktøy for enkelt å lage KVM virtuelle maskiner. virtinstaller er basert på libvirt. Så de virtuelle maskinene som er opprettet ved hjelp av virtinstaller kan også administreres med Virsh og Virt-manager.

Du kan installere virtinstaller med følgende kommando:

$ sudo dnf installer virtinstall

For å bekrefte installasjonen, trykk Y Og trykk deretter .

virtinstaller skal installeres.

Sette opp nødvendige KVM -kataloger:

Jeg synes det er lurt å holde alle de virtuelle maskindataene organisert. Jeg holder vanligvis alle KVM virtuelle maskindata i /kVm/ katalog. I /kVm/ Katalog, jeg lager 2 underkataloger disk/ og ISO/. I disk/ underkatalog, jeg holder alle virtuelle maskiner (VM) harddiskfiler. I ISO/ underkatalog, jeg holder ISO -installasjonsbildene av forskjellige operativsystemer (i.e. Ubuntu, Debian, Centos, etc.).

Du kan opprette de samme katalogstrukturene med følgende kommando:

$ sudo mkdir -pv /kvm /disk, iso

Opprette en virtuell KVM -maskin:

I denne delen skal jeg vise deg hvordan du oppretter en Ubuntu Desktop 20.04 LTS KVM Virtual Machine.

Først må du laste ned Ubuntu Desktop 20.04 LTS ISO installasjonsbilde. For å holde alle de virtuelle maskinfilene/dataene organisert, er det en god idé å lagre ISO -bildet i /kVm/iso/ katalog.

Så naviger til /kVm/iso/ Katalog med følgende kommando:

$ CD /KVM /ISO

Du kan laste ned Ubuntu Desktop 20.04 LTS ISO -bilde fra det offisielle nettstedet til Ubuntu med følgende kommando:

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

WGET bør begynne å laste ned Ubuntu Desktop 20.04 LTS ISO -bilde. Det vil ta en stund å fullføre.

På dette tidspunktet, Ubuntu Desktop 20.04 LTS ISO -bilde skal lastes ned.

Ubuntu Desktop 20.04 LTS ISO -bilde er tilgjengelig i /kVm/iso/ Katalog som du kan se på skjermdumpen nedenfor.

En gang Ubuntu Desktop 20.04 LTS ISO -bilde lastes ned, du kan opprette en KVM virtuell maskin med følgende kommando:

$ sudo virt-install-name udesktop20_04-01 \
--OS-type Linux \
--OS-Variant Ubuntu19.10 \
--Ram 4096 \
--Disk/KVM/Disk/UDesktop20_04-01.IMG, enhet = disk, buss = virtio, størrelse = 20, format = qcow2 \
--grafikk VNC, lytt = 0.0.0.0 \
--Noautoconsole \
--hvm \
--CDROM/KVM/ISO/Ubuntu-20.04.1-Desktop-AMD64.ISO \
--Boot Cdrom, HD

Her vil navnet på den virtuelle maskinen være UDESKTOP20_04-01.

Operativsystemet vi installerer er Linux.

Operativsystemvarianten er Ubuntu19.10. OS -databasen til Centos 8 har ikke en oppføring for Ubuntu 20.04 LTS på dette tidspunktet. Så jeg har brukt informasjonen til Ubuntu 19.10.

OS -typen og OS -variantverdiene er ikke tilfeldige. Du kan finne OS -typen og OS -varianten for ønsket Linux -distribusjon med Osinfo-Query kommando. Som du kan se, ingen oppføring for Ubuntu 20.04 LTS er tilgjengelig. Men en oppføring for Ubuntu 19.10 er tilgjengelig. OS -typen Ubuntu 19.10 er Linux Og OS -varianten er Ubuntu19.10.

$ osinfo-query os--fields = navn, kort-id, familie | grep -i ubuntu

RAM (Random Access Memory) av VM vil være 4096 MB (megabyte) eller 4 GB (gigabyte).

Den virtuelle disken til VM vil bli lagret i /kvm/disk/udesktop20.04-01.img fil. Den virtuelle disken handler om 20 GB i størrelse og formatet er QCOW2 (Qemu Copy-on-Write v2)

Den virtuelle maskinen vil være tilgjengelig via VNC (Virtual Network Computing) Remote Desktop Protocol, og VNC -serveren vil lytte på alle tilgjengelige nettverksgrensesnitt som er konfigurert på CentOS 8 KVM -verten.

Centos 8 KVM -verten vil ikke automatisk prøve å koble til den virtuelle maskinen når den virtuelle maskinen er opprettet. Den virtuelle maskinen vil fortsette å løpe i bakgrunnen.

Bruk full virtualisering for den virtuelle maskinen. Dette vil få virtuelle maskiner til å fungere bedre.

Bruk Ubuntu Desktop 20.04 LTS ISO -bilde Vi har nettopp lastet ned som den virtuelle CD/DVD -romen til den virtuelle maskinen. Brukes til å installere Ubuntu Desktop 20.04 LT på den virtuelle maskinen.

Sett er oppstartsordren til den virtuelle maskinen. Den første oppstartsoppføringen er den virtuelle CD/DVD -ROM -en og deretter den virtuelle harddisken. Så den virtuelle maskinen vil kunne starte opp fra Ubuntu Desktop 20.04 LTS ISO -bilde og installer Ubuntu Desktop 20.04 LTS på harddisken.

Det er alle alternativene du trenger for å lage en virtuell KVM -maskin.

Når du kjører virtinstaller Kommando, KVM bør begynne å lage den virtuelle maskinen. Det kan ta en stund avhengig av din virtuelle maskinkonfigurasjon.

På dette tidspunktet bør den virtuelle KVM -maskinen opprettes.

Oppføring av KVM virtuelle maskiner:

Når KVM virtuell maskin er opprettet, kan du liste den med følgende kommando:

$ virsh -liste -alle

Kommandoen skal vise deg alle KVM -virtuelle maskiner du har. Akkurat nå har jeg bare en virtuell maskin UDESKTOP20_04-01. Dette er den jeg nettopp har laget. Som du ser, den virtuelle maskinen UDESKTOP20_04-01 er løping. Du skal kunne koble deg til den ved hjelp av hvilken som helst VNC -klient.

Konfigurere brannmuren for ekstern tilgang til KVM -virtuelle maskiner:

For å få tilgang til KVM Virtual Machine eksternt, må du gi brannmur tilgang til VNC -porten til den virtuelle maskinen.

For å finne VNC -porten til den virtuelle KVM -maskinen UDESKTOP20_04-01, Kjør følgende kommando:

$ virsh vncdisplay udesktop20_04-01

Som du kan se, VNC -portnummeret til UDESKTOP20_04-01 Virtuell maskin er 0.

Her, port 0 betyr port 5900. På samme måte, port 1 betyr port 5901 og så videre.

Som du kan se, den virtuelle KVM UDESKTOP20_04-01 kjører på havnen 5900 (: 0).

$ sudo netstat -tln

For å tillate tilgang til port 5900, Kjør følgende kommando:

$ SUDO FIREWALL-CMD-ADD-PORT = 5900/TCP-Permanent

For at brannmurendringene skal tre i kraft, kjør følgende kommando:

$ sudo Firewall-CMD-Reload

Fjernkobling til KVM -virtuelle maskiner med VNC -klient:

For å koble deg til den virtuelle maskinen via VNC, må du kjenne IP -adressen til CentOS 8 KVM -verten.

Du kan finne IP -adressen til CentOS 8 KVM -verten med følgende kommando:

$ ip a

I mitt tilfelle er IP -adressen 192.168.0.103. Det vil være annerledes for deg. Så sørg for å erstatte den med din fra nå av.

Åpne enhver VNC -klient og koble til adressen 192.168.0.103: 0.

Klikk på Fortsette.

Klikk på Fortsette.

Du bør være koblet til visningen av UDESKTOP20_04-01 KVM virtuell maskin som du kan se på skjermdumpen nedenfor.

Nå kan du installere ønsket operativsystem på den virtuelle maskinen.

I mitt tilfelle vil jeg installere Ubuntu Desktop 20.04 LTS -operativsystem på den virtuelle maskinen.

Ubuntu Desktop 20.04 LTS blir installert på KVM Virtual Machine. Det kan ta en stund å fullføre.

Når installasjonen er fullført, klikker du på Start på nytt nå.

trykk .

VNC -tilkoblingen skal lukkes.

Den virtuelle maskinen skal slås av automatisk når OS -installasjonen er fullført som du kan se på skjermdumpen nedenfor.

$ sudo virsh -liste -alt

Start UDESKTOP20_04-01 KVM virtuell maskin med følgende kommando:

$ virsh start UDESKTOP20_04-01

Den virtuelle maskinen UDESKTOP20_04-01 bør startes.

Nå kan du koble til UDESKTOP20_04-01 Virtuell maskin fra en VNC -klient som før. Som du kan se, Ubuntu Desktop 20.04 LTS kjører helt fint i den virtuelle KVM.

Fjerning av KVM virtuelle maskiner:

Du kan også fjerne en virtuell KVM -maskin med Virsh Kommandolinjeverktøy.

Som du ser har jeg 2 KVM virtuelle maskiner (UDESKTOP20_04-01 og UDESKTOP20_04-02) kjører på min centos 8 kVm -vert. La oss fjerne UDESKTOP20_04-02 KVM virtuell maskin.

$ virsh -liste -alle

Som du kan se, UDESKTOP20_04-02 KVM virtuell maskin er løping. Du må stoppe den før du fjerner den.

$ virsh -liste -alle

For å tvinge stopp UDESKTOP20_04-02 KVM Virtual Machine, kjør følgende kommando:

$ virsh ødelegger udesktop20_04-02

Som du kan se, UDESKTOP20_04-02 Virtuell maskin er slått av.

$ virsh -liste -alle

Du kan fjerne permanent UDESKTOP20_04-02 Virtuell maskin og alle vedlagte virtuelle harddisk med følgende kommando:

$ Virsh Undefine--Fjern-All-Storage UDesktop20_04-02

Som du kan se, UDESKTOP20_04-02 Virtuell maskin er ikke lenger tilgjengelig.

$ virsh -liste -alle

Utgave 1: Fiksing av CPU-> KVM_MSR_BUF-> NMSRS påstandsfeil

Mens du oppretter en Virtuell KVM -maskin på CentOS 8 KVM -vert, kan du se følgende feilmelding. Det er en kjernefeil. Vanligvis skjer dette når du kjører KVM inne i en annen virtuell maskin. Jeg kjører KVM inne i en vmware virtuell maskin. Dette er grunnen til at jeg fikk denne feilen jeg tror. Det er enkelt å fikse.

Åpne konfigurasjonsfilen /etc/modprobe.D/KVM.konf med følgende kommando:

$ sudo nano /etc /modprobe.D/KVM.konf

De /etc/modprobe.D/KVM.konf Filen skal åpnes. Du må aktivere det prosessorspesifikke alternativet for KVM nestet virtualisering herfra.

Hvis du bruker en Intel -prosessor, må du være linjen som er merket på skjermdumpen nedenfor.

Hvis du bruker en AMD -prosessor, må du være linjen som er merket på skjermdumpen nedenfor.

Legg deretter til linjen alternativer KVM ignorere_msrs = 1 På slutten av filen som vist på skjermdumpen nedenfor.

Når du er ferdig, trykk + X etterfulgt av Y og For å redde /etc/modprobe.D/KVM.konf fil.

Start deretter Centos 8 KVM -vert med følgende kommando for endringene for å tre i kraft.

$ sudo omstart

Problemet ditt bør løses.

Utgave 2: Fiksing av RFB -protokollfeil i VNC -klient:

Når du kobler til den virtuelle KVM -maskinen ved hjelp av en VNC -klient, kan du se følgende feilmelding. Denne feilmeldingen vises når bildekvaliteten til VNC -klienten er satt til Automatisk. Det er enkelt å fikse.

Klikk på Egenskaper Ikonet til din VNC -klient.

Som du kan se, Bildekvalitet er satt til Automatisk.

For å løse dette problemet, velg begge Lav, Medium, eller Høy fra Bildekvalitet nedtrekksmenyen.

Når du er ferdig, klikker du på Ok.

Problemet ditt bør løses.

Konklusjon:

I denne artikkelen har jeg vist deg hvordan du installerer KVM på CentOS 8 og lager KVM virtuelle maskiner fra kommandolinjen. Jeg har også vist deg hvordan du fjerner KVM virtuelle maskiner og løsninger på noen vanlige KVM -problemer. Dette skal hjelpe deg i gang med Linux KVM -virtualisering.