KVM è un software di virtualizzazione hardware open source attraverso il quale possiamo creare ed eseguire più macchine virtuali basate su Linux e Windows contemporaneamente. KVM è conosciuto come Kernel based Virtual Machine perché quando installiamo il pacchetto KVM allora il modulo KVM viene caricato nel kernel corrente e trasforma la nostra macchina Linux in un hypervisor.

In questo post prima dimostreremo come possiamo installare l’hypervisor KVM su CentOS 7.x e RHEL 7.x e poi proveremo ad installare le macchine virtuali.

Prima di procedere con l’installazione di KVM, controlliamo se la CPU del vostro sistema supporta la virtualizzazione hardware.

Eseguite il comando sottostante dalla console.

# grep -E '(vmx|svm)' /proc/cpuinfo

Dovremmo ottenere la parola vmx o svm nell’output, altrimenti la CPU non supporta la virtualizzazione.

Step:1 Installare KVM e i suoi pacchetti associati

Eseguire il seguente comando yum per installare KVM e i suoi pacchetti associati.

# yum install qemu-kvm qemu-img virt-manager libvirt libvirt-python libvirt-client virt-install virt-viewer bridge-utils

Avvia e abilita il servizio libvirtd

# systemctl start libvirtd# systemctl enable libvirtd

Esegui il seguente comando per controllare se il modulo KVM è caricato o meno

# lsmod | grep kvmkvm_intel 162153 0kvm 525409 1 kvm_intel#

Nel caso tu abbia un’installazione Minimal CentOS 7 e RHEL 7, allora virt-manger non partirà per questo devi installare il pacchetto x-window.

# yum install "@X Window System" xorg-x11-xauth xorg-x11-fonts-* xorg-x11-utils -y

Riavvia il server e poi prova ad avviare virt manager.

Step:2 Avviare Virt Manager

Virt Manager è uno strumento grafico attraverso il quale possiamo installare e gestire macchine virtuali. Per avviare il virt manager digita il comando ‘virt-manager’ dal terminale.

# virt-manager

Step:3 Configurare l’interfaccia bridge

Prima di iniziare a creare VM, creiamo l’interfaccia bridge. L’interfaccia bridge è necessaria se vuoi accedere alle macchine virtuali dall’esterno della rete dell’hypervisor.

# cd /etc/sysconfig/network-scripts/# cp ifcfg-eno49 ifcfg-br0#

Nel comando cp sostituisci il nome dell’interfaccia che si adatta al tuo sistema e poi modifica il file Interface e imposta i seguenti:

# vi ifcfg-eno49TYPE=EthernetBOOTPROTO=staticDEVICE=eno49ONBOOT=yesBRIDGE=br0

Modifica il file Bridge (ifcfg-br0) e imposta i seguenti:

# vi ifcfg-br0TYPE=BridgeBOOTPROTO=staticDEVICE=br0ONBOOT=yesIPADDR=192.168.10.21NETMASK=255.255.255.0GATEWAY=192.168.10.1DNS1=192.168.10.11

Sostituisci l’indirizzo IP e i dettagli del server DNS come da tua configurazione.

Riavvia il servizio Network Manager per abilitare l’interfaccia bridge.

# systemctl restart NetworkManager#

Nota: Per impostazione predefinita, in CentOS 7 / RHEL 7 il servizio Network Manager è abilitato e se sono state apportate modifiche ai file di rete allora dobbiamo riavviare il servizio Network Manager per rendere effettive le modifiche. Nel caso in cui il servizio Network Manager sia disabilitato e fermato allora possiamo usare il servizio di rete (systemctl restart network)

Controlla l’interfaccia Bridge usando il seguente comando :

# ip addr show br0

Step:4 Inizia a creare macchine virtuali.

Crea ora una macchina virtuale o dalla linea di comando usando il comando ‘virt-install’ o dalla GUI (virt-manager)

Creiamo una macchina virtuale di “Windows Server 2012 R2” usando virt-manager.

Avvia il “virt-manager”

Vai all’opzione File, clicca su “New Virtual Machine”

Useremo il file ISO come media di installazione. Nel prossimo passo specifica il percorso del file ISO.

Clicca su Avanti.

Specificare le risorse di calcolo: RAM e CPU secondo la tua configurazione.

Clicca su Avanti per procedere oltre.

Specifica la dimensione dello storage della macchina virtuale, nel mio caso sto usando 25G.

Nel passo successivo specifica il nome della macchina virtuale e seleziona la rete come ‘Bridge bro’

Clicca su Fine per iniziare l’installazione.

Segui le istruzioni sullo schermo e completa l’installazione.

Creazione di una macchina virtuale dalla riga di comando:

Le macchine virtuali possono essere create anche dalla console usando il comando ‘virt-install’. Nell’esempio seguente vado a creare una macchina virtuale di Ubuntu 16.04 LTS.

# virt-install --name=Ubuntu-16-04 --file=/var/lib/libvirt/images/ubuntu16-04.dsk --file-size=20 --nonsparse --graphics spice --vcpus=2 --ram=2048 --cdrom=ubuntu-16.04-server-amd64.iso --network bridge=br0 --os-type=linux --os-variant=genericStarting install...Allocating 'ubuntu16-04.dsk' | 20 GB 00:00:00Creating domain...

Segui ora le istruzioni e completa l’installazione.

Nel precedente comando ‘virt-install’ abbiamo usato le seguenti opzioni:

  • -name = <Nome della macchina virtuale>
  • -file = <Locazione dove il file del disco della nostra macchina virtuale sarà memorizzato >
  • -file-size = < Dimensione della macchina virtuale, nel mio caso è 20GB >
  • -nonsparse = < Alloca l’intero storage durante la creazione>
  • -graphics = < Specifica lo strumento grafico per l’installazione interattiva, in questo esempio sto usando spice >
  • -vcpu = < Numero di CPU virtuale per la macchina >
  • -ram = < Dimensione della RAM per la macchina virtuale >
  • -cdrom = < CD ROM virtuale che specifica il supporto di installazione come file ISO >
  • -network = < è usato per specificare quale rete useremo per la macchina virtuale, in questo esempio sono interfaccia bridge>
  • -os-type = < Tipo di sistema operativo come linux e window>
  • -os-variant= <KVM mantiene le varianti del sistema operativo come ‘fedora18′, ‘rhel6’ e ‘winxp’, questa opzione è opzionale e se non sei sicuro della variante del sistema operativo puoi menzionarla come generica>

Una volta completata l’installazione possiamo accedere alla console della macchina virtuale da ‘virt-manager’ come mostrato di seguito.

Questo è tutto, l’installazione e la configurazione di base dell’hypervisor KVM è completata.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.