Howto – virtualizzazione su Linux con KVM

La Virtualizzazione è un tool che torna sicuramente utile se si vogliono testare nuovi daemon e non si hanno a disposizione dei server da utilizzare come laboratorio. Torna utile sia che si vogliano testare altri sistemi operativi dato, che da la possibiltà di farlo senza dedicare a questi dell’hardware e senza le complicazioni del dual boot, sia che si vogliano testare dei demoni visto che permette di farlo in un ambiente isolato.

Virtualizzazione che è oltretutto interessante in se in quanto è anche uno strumento molto utilizzato in ambienti di produzione per quel che permette in termini di scalabilità, affidabilità e ottimizzazione.

Vedremo in questo post i passi necessari per predisporre il proprio PC ad ospitare dei server virtuali e gli step necessari per una prima istallazione.

La virtualizzazione è in linea di principio possibile su qualsiasi processore general-pourpose ma in pratica se si vogliono prestazioni decenti bisogna accertarsi che la propria CPU abbia le relative funzionalità hardware. Per farlo verifichiamo se sui flags della CPU è riportato svm o vmx.

grep svm /proc/cpuinfo
grep vmx /proc/cpuinfo

Andiamo ad installare i pacchetti necessri:

aptitude install qemu-kvm libvirt-bin virtinst

inoltre sarebbe utile il pacchetto virt-manager per avere un’interfaccia grafica di gestione delle macchine virtuali.

aptitude install virt-manager virsh virt-viewer

virt-manager è un’interfaccia grafica che permette di gestire le macchine virtuali sia per crearle sia per gestirne lo stato di avvio, sia per accedere ad una consolle. Ma di fatto permette una gestione molto basilare delle macchine virtuali.

In alternativa si può utilizzare virsh. Ad esempio

virsh -c qemu:///system list

darà la lista dei server attivi
Ma virsh può essere utilizzato anche come consolle lanciandolo senza parametri

$ virsh 
Benvenuti a virsh, il terminale interattivo per la virtualizzazione.

Digitate:  'help' per un aiuto sui comandi
       'quit' per uscire

virsh # help

Ad esempio per avere la lista delle Virtual Machines configurate

virsh 'list --all'

e per avviarne una

virsh start <nome VM>

ci si potrà poi connettere alla consolle ad esempio con

virt-viewer -c qemu:///system <nome VM>