Creazione di VM all'interno di DaDesktop usando Virt Manager
Introduzione
Spesso, nella preparazione di un corso, è utile virtualizzare un server all'interno di DaDesktop, e magari anche una o due macchine client allo stesso modo, usando lo stesso sistema operativo o una combinazione Windows/Linux.
L'esecuzione di 'VM annidate' può essere realizzata sia con Virt Manager che con VirtualBox (utilizzando eventualmente Vagrant se si usa Linux) o con VirtualBox se si usa Windows 10 come macchina DaDesktop.
Dopo approfonditi test, la nostra preferenza è di utilizzare Virt Manager, poiché ci sono un paio di bug se si usa VirtualBox; al momento, pertanto, sconsigliamo l'uso di VirtualBox in questo modo.
L'applicazione VirtManager utilizza la libreria libvirt per fornire servizi di gestione delle macchine virtuali. Dispone di un'interfaccia desktop che aiuta a creare, eliminare e gestire più macchine virtuali. È principalmente usata per VM KVM, ma può supportare anche altri hypervisor come Xen e LXC.
Virt Manager funziona molto bene anche con Vagrant, semplicemente :-
apt install vagrant-libvirt
Vale la pena notare che ci sono meno box Vagrant disponibili che utilizzano libvirt/kvm rispetto a VirtualBox, ma queste possono essere facilmente convertite per funzionare con libvirt come mostrato qui :-
https://medium.com/@gamunu/use-vagrant-with-libvirt-unsupported-boxes-12e719d71e8e
L'interfaccia utente fornisce una vista riepilogativa di tutte le VM, il loro stato, l'utilizzo della CPU, il grafico delle prestazioni in tempo reale delle VM in esecuzione e le statistiche sull'utilizzo delle risorse.
Se non hai mai usato Virt Manager prima, è molto simile a VirtualBox ma con alcune importanti differenze descritte di seguito.
Questa è una guida valida sull'uso di virt-manager su Ubuntu Linux - https://www.debugpoint.com/virt-manager/
Perché dovrei usare Virt Manager invece di Virtualbox?
Vantaggi
- Le prestazioni sono molto migliori - Virt Manager utilizza i driver VirtIO per storage, rete e grafica, offrendo prestazioni nettamente superiori. I driver Virtio sono i driver paravirtualizzati di KVM, disponibili per macchine virtuali guest Linux e Windows in esecuzione su host KVM. Il pacchetto virtio supporta dispositivi a blocchi (storage) e controller di interfaccia di rete, oltre alla grafica. I driver VirtIO sono open source, quindi facilmente installabili se non già preinstallati sulla tua distribuzione Linux.
- Più opzioni di configurabilità disponibili
- Funziona bene con Vagrant
- Alcune parti di VirtualBox non sono completamente open source
- Virt Manager non richiede la ricompilazione dei moduli a ogni aggiornamento del kernel, come invece accade per VirtualBox.
- È noto che VirtualBox a volte si rompa quando è richiesto un nuovo aggiornamento del kernel.
Svantaggi
- Si può dire che VirtualBox abbia una curva di apprendimento leggermente inferiore
- Configurare il 'networking host' anziché NAT è più semplice su VirtualBox, tuttavia NAT funziona per la maggior parte dei casi d'uso di rete abbastanza facilmente su entrambi i sistemi.
- VirtualBox è disponibile su molte piattaforme, mentre Virt Manager è disponibile solo su Linux
Tutto sommato, riteniamo che per eseguire server all'interno di una macchina DaDesktop, Virt Manager sia preferibile.
Installazione
Poiché libvirt è in continuo miglioramento, utilizza sempre l'ultima versione non LTS di Ubuntu o Debian.
Installazione di kvm, virt-manager. Queste sono note di installazione molto brevi, tuttavia ti invitiamo a seguire una guida aggiornata per il tuo sistema operativo DaDesktop preferito. Questa è una guida https://www.debugpoint.com/virt-manager/
sudo apt install virt-manager
sudo adduser student libvirt sudo systemctl restart libvirtd
Riavvia la macchina DaDesktop, esegui Virt Manager dal menu Applicazioni
Configurazione
-
Come importare o convertire macchine virtuali? Sebbene sia facile creare VM secondo i propri requisiti di sistema operativo e specifiche, spesso per configurazioni più complesse si preferisce importare una configurazione di VM esistente di un particolare server o appliance. Spesso queste vengono fornite come immagini VMDK che possono essere aggiunte direttamente a Virt Manager, anche se non è chiaro se ciò sia effettivamente possibile, con la versione attuale. Per le immagini server di Virtual Box, non possono essere importate (aggiunte) direttamente in Virt Manager, ma possono essere facilmente esportate in altri formati di virtualizzazione come Open Virtualisation Format (.OVF) che Virt Manager può importare facilmente. Altrimenti puoi usare VmWare Convertor se ne disponi, o Virt-V2V https://www.redhat.com/en/blog/importing-vms-kvm-virt-v2v. Anche Qemu-convert è un ottimo strumento open source che permette una facile conversione tra diversi formati di macchine virtuali.
Per convertire da VirtualBox al formato KVM di Virt Manager segui queste istruzioni https://ostechnix.com/how-to-migrate-virtualbox-vms-into-kvm-vms-in-linux/ -
Modo migliore per importare file di grandi dimensioni all'interno di standalone. Recentemente, è stato aggiunto un metodo per caricare facilmente file dalla propria macchina all'interno della macchina DaDesktop.
Altrimenti, considera l'uso di uno strumento di file cloud come Google Drive, Microsoft 365, ecc. A questi si può poi accedere effettuando l'accesso allo strumento all'interno della macchina DaDesktop.
- Quando si importano altre macchine virtuali, specialmente da altri formati, spesso sarà necessario cambiare i tipi di grafica e/o disco. Una delle cose migliori di Virt Manager è che include un eccellente supporto per i driver VirtIO. Questi sono driver completamente virtualizzati e open source che offrono prestazioni molto migliori rispetto ai driver originali di disco, rete o grafica, e sono disponibili per quasi tutti i sistemi operativi, incluso un ottimo supporto per le macchine guest Windows 10. Se il tuo sistema operativo guest li supporta, sono di solito l'opzione preferita per compatibilità e prestazioni quando si utilizza Virt Manager (KVM). https://wiki.archlinux.org/title/Libvirt
-
Impostazioni ottimali per macchine virtuali che utilizzano Virt Manager I driver VirtIO sono inclusi in quasi tutti i sistemi operativi server open source al giorno d'oggi e possono essere installati facilmente in Windows. Generalmente i migliori driver sono virtio, ma in alcuni casi potresti dover utilizzare uno degli altri numerosi tipi. Generalmente il NAT è sufficiente per la maggior parte dei casi di rete a meno che non sia richiesta una configurazione più complessa in cui potrebbe essere necessario il networking 'Bridged Host', ma questo è generalmente più difficile da far funzionare facilmente.
https://wiki.manjaro.org/index.php?title=Virt-manager è un'ottima guida introduttiva qui.
L'esecuzione di Windows richiede alcuni passaggi aggiuntivi e richiederà lo slipstreaming dei driver VirtIO per consentire l'avvio dell'ISO di Windows 10.
Quando si sceglie il formato del disco rigido, per la velocità i file .raw sono i migliori a meno che non siano richiesti snapshot; in tal caso usa il formato qcow2, ma è un po' più lento. - Sebbene Wayland funzioni bene nella maggior parte dei casi come display manager, consigliamo di continuare a usare X11 per ora. Detto questo, potrebbe valere la pena provare Wayland nella propria configurazione specifica, e le distribuzioni stanno ottenendo un supporto sempre migliore per Wayland.
- Non preoccuparti di usare ksm, perché anche se funziona in modo annidato e in Virt Manager, fa poca differenza nella pratica.
- Supporto tecnico è disponibile se necessario per la conversione di immagini disco per funzionare con Virt Manager e, inoltre, per la configurazione dell'uso di Virt Manager per i corsi DaDesktop.
-
Dove si trovano i file immagine disco all'interno del filesystem? Virt Manager utilizza la seguente posizione per archiviare i file immagine, tuttavia è configurabile e si possono usare altre posizioni se preferito.
/var/lib/libvirt/images