Introduzione

KVM (Virtual Machine basata su kernel) è una tecnologia di virtualizzazione open source integrata nel kernel Linux. Con KVM per eseguire più macchine virtuali guest Linux o Windows. Ogni guest è completamente isolato dagli altri e ha il proprio sistema operativo e hardware virtuale dedicato come CPU, memoria, interfacce di rete e archiviazione.

Questa guida fornisce istruzioni su come installare e configurare KVM sul desktop Ubuntu 20.04 LTS Focal Fossa. Ti mostreremo anche come creare macchine virtuali che possono essere utilizzate come ambiente di sviluppo per diverse applicazioni.

Prerequisiti

Per eseguire guest con più di 2 GB di RAM, è necessario disporre di un sistema host a 64 bit.

Prima di continuare con l'installazione, assicurati che la tua macchina host Ubuntu supporti la virtualizzazione KVM. Il sistema dovrebbe avere un processore Intel con VT-x (vmx) o un processore AMD con supporto della tecnologia AMD-V (svm).

Eseguire il comando grep seguente per verificare che il processore supporti la virtualizzazione hardware:

grep -Eoc '(vmx|svm)' /proc/cpuinfo

Se la CPU supporta la virtualizzazione hardware, il comando genererà un numero maggiore di zero, che è il numero dei core della CPU. Altrimenti, se l'output è 0 significa che la CPU non supporta la virtualizzazione hardware.

Su alcune macchine, le estensioni della tecnologia virtuale potrebbero essere disabilitate nel BIOS dai produttori.

Per verificare se VT è abilitato nel BIOS, utilizzare lo strumento kvm-ok. Immettere i seguenti comandi come utente root o utente con privilegi sudo per installare il pacchetto cpu-checker che include il comando kvm-ok:

sudo apt update
sudo apt install cpu-checker

Una volta installato, controlla se il tuo sistema può eseguire macchine virtuali KVM con accelerazione hardware con il seguente comando:

kvm-ok

Se la funzionalità di virtualizzazione del processore non è disabilitata nel BIOS, l'output sarà simile al seguente:

INFO: /dev/kvm exists
KVM acceleration can be used

Altrimenti, il comando stamperà e un messaggio di errore simile al seguente:

INFO: Your CPU does not support KVM extensions
KVM acceleration can NOT be used

Potresti ricevere un breve messaggio su come abilitare l'estensione. Il processo di abilitazione della tecnologia AMD-V o VT dipende dalla scheda madre e dal tipo di processore. Consultare la documentazione della scheda madre per le informazioni su come configurare il BIOS di sistema.

Installare KVM su Ubuntu 20.04

Eseguire il comando seguente per installare KVM e pacchetti di gestione della virtualizzazione aggiuntivi:

sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virtinst virt-manager
  • qemu-kvm - software che fornisce l'emulazione hardware per l'hypervisor KVM.
  • libvirt-daemon-system - file di configurazione per eseguire il demone libvirt come servizio di sistema.
  • libvirt-clients - software per la gestione di piattaforme di virtualizzazione.
  • bridge-utils - un set di strumenti da riga di comando per la configurazione di bridge ethernet.
  • virtinst - un set di strumenti da riga di comando per la creazione di macchine virtuali.
  • virt-manager - un'interfaccia GUI di facile utilizzo e supporto delle utility da riga di comando per la gestione di macchine virtuali tramite libvirt.

Una volta installati i pacchetti, il daemon libvirt si avvierà automaticamente. Puoi verificarlo digitando:

sudo systemctl is-active libvirtd
active

Per poter creare e gestire macchine virtuali, dovrai aggiungere il tuo utente ai gruppi libvirt e kvm. Per farlo, inserisci:

sudo usermod -aG libvirt $USER
sudo usermod -aG kvm $USER

$USER è una variabile di ambiente che contiene il nome dell'utente attualmente connesso.

Disconnettersi e riconnettersi in modo da aggiornare l'appartenenza al gruppo.

Configurazione di rete

Un ponte chiamato "virbr0" viene creato durante il processo di installazione. Questo dispositivo utilizza NAT per connettere le macchine degli ospiti al mondo esterno.

È possibile utilizzare lo strumento brctl per elencare i bridge correnti e le interfacce a cui sono collegati:

brctl show
bridge name	bridge id		      STP enabled	interfaces
virbr0		  9000.43450032db3e	yes		      virbr0-nic

Il ponte "virbr0" non ha alcuna interfaccia fisica aggiunta. "Virbr0-nic" è un dispositivo virtuale senza traffico instradato attraverso di esso. L'unico scopo di questo dispositivo è evitare di modificare l'indirizzo MAC del bridge "virbr0".

Questa configurazione di rete è adatta per la maggior parte degli utenti desktop di Ubuntu ma presenta delle limitazioni. Se si desidera accedere agli ospiti dall'esterno della rete locale, è necessario creare un nuovo bridge e configurarlo in modo che le macchine ospiti possano connettersi al mondo esterno attraverso l'interfaccia fisica dell'host.

Creare macchine virtuali

Ora che KVM è installato sul desktop di Ubuntu, puoi creare la prima macchina virtuale. Questo può essere fatto dalla riga di comando o usando l'applicazione virt-manager.

Scarica l'immagine ISO del sistema operativo che desideri installare e segui i passaggi seguenti per creare la tua macchina virtuale:

  1. Nella barra di ricerca delle attività digitare "Virtual Machine Manager" e fare clic sull'icona per avviare l'applicazione.
  2. Dopo aver avviato l'applicazione, dal menu in alto fare clic su File -> Nuova macchina virtuale.
  3. Apparirà una nuova finestra. Scegli "Supporto di installazione locale" e fai clic sul pulsante "Avanti".
  4. Fornisci il percorso dell'immagine ISO e fai clic sul pulsante Avanti.
  5. Nella schermata successiva, seleziona la memoria della VM e le impostazioni della CPU. Fai clic su Avanti.
  6. Quindi, selezionare "Crea un'immagine disco per la macchina virtuale" e selezionare la dimensione dello spazio su disco della VM. Fai clic su Avanti.
  7. Immettere un nome per il nome della macchina virtuale e fare clic su "Fine".
  8. La VM si avvierà e si aprirà una nuova finestra.
  9. Da qui, è possibile seguire le istruzioni visualizzate per completare l'installazione del sistema operativo.

Una volta installato il sistema operativo, è possibile accedere alla macchina virtuale dall'applicazione virt-manager, tramite ssh o utilizzando l' interfaccia della console seriale.

Conclusione

Ti abbiamo mostrato come installare KVM su sistemi Ubuntu 20.04 LTS Focal Fossa. Ora puoi creare i tuoi computer guest Windows o Linux. Per ulteriori informazioni su KVM, visitare la pagina della documentazione di KVM.