La virtualizzazione in Fedora 11 ha subito notevoli modifiche e presenta nuove caratteristiche che continuano a supportare Xen, KVM e molte altre piattaforme di macchine virtuali.
5.3.1. Autenticazione VNC migliorata per la gestione di macchine virtuali
Fedora 11 introduce la possibilità di usare il protocollo SASL per l'autenticazione di connessioni VNC alle macchine virtuali KVM e QEMU. SASL è un sistema modulare, che consente a molti meccanismi di autenticazione di essere configurati senza modifiche al codice dell'applicazione. L'utilizzo di SASL, combinato con il supporto della cifratura TLS, consentirà ai client come vinagre, virt-viewer e virt-managerdi connettersi in modo sicuro a console di macchine virtuali remote ospitate da server Fedora. Negli ambienti dove viene utilizzato Kerberos, ciò consentirà inoltre accessi sicuri di tipo single sign-on al server VNC. Questa nuova funzione rende obsoleto il tradizionale schema di password VNC che non è sufficientemente sicuro.
5.3.2. Migliorata la console grafica per le macchine virtuali
Nelle versioni precedenti di Fedora le console virtuali ospiti erano limitate alla risoluzione di 800x600, e il puntatore del mouse PS2 lavorava in coordinate relative. Ciò impediva al puntatore ospite di tracciare esattamente il puntatore del client locale.
Fedora 11 fornisce un più accurato posizionamento del puntatore del mouse e maggiori risoluzioni dello schermo per le console delle macchine virtuali. I sistemi ospiti di Fedora 11 hanno una risoluzione predefinita di almeno 1024x768, e vengono corredati da una tavoletta USB in coordinate assolute. Ciò risulta in un puntatore del mouse che segue il cursore del mouse locale in maniera fedele.
5.3.3. Assegnazione dispositivi PCI per KVM
Fedora 11 espande le sue funzionalità di virtualizzazione per includere il supporto all'assegnazione di dispositivi PCI su KVM. Gli utenti KVM possono ora dare alle macchine virtuali accesso esclusivo a dispositivi PCI usando gli strumenti di virtualizzazione di Fedora, tra cui l'applicazione di gestione delle macchine virtuali Virt Manager.
Nota
Requisiti hardware: è necessario il supporto alla piattaforma hardware Intel VT-d o AMD IOMMU per rendere disponibile questa caratteristica.
5.3.4. Unione di KVM e QEMU
QEMU fornisce un emulatore di processore e di sistema che abilita gli utenti a lanciare macchine virtuali ospiti con la stessa architettura della macchina ospitante o di una architettura completamente differente. KVM fornisce il supporto a livello kernel per i guest in esecuzione con la stessa architettura della macchina ospitante.
QEMU trae vantaggio da KVM nell'esecuzione dei guest direttamente sull'hardware dell'host senza alcuna traduzione da parte della macchina, ciò consente delle prestazioni migliori.
Fedora 11 include l'unione degli RPM
qemu e
kvm. Il pacchetto
kvm ora è reso obsoleto da
pngqemu-kvm. L'unione delle due basi di codice è tuttora in corso in upstream, ma i manutentori di pacchetti Fedora hanno deciso di unire da subito questi pacchetti per ridurre il lavoro di manutenzione e fornire un supporto migliore.
5.3.5. SVirt Mandatory Access Control
Fedora 11 integra il MAC (Mandatory Access Control) di SELinux con la virtualizzazione. Le macchine virtuali ora possono essere isolate in maniera più efficace dalla macchina ospitante e dagli altri ospiti, garantendo che guest maliziosi non possano sfruttare eventuali difetti di sicurezza.
5.3.6. Manipolazione online di macchine virtuali
libguestfs è una nuova libreria per l'accesso e la modifica di immagini disco di ospiti. Utilizza il kernel di Linux ed il codice QEMU, libguestfs può accedere a qualsiasi tipo di filesystem di ospite a cui possono accedere Linux e QEMU.
I seguenti strumenti vengono forniti da libguestfs:
guestfish - Fornisce una shell interattiva per la modifica dei filesystema delle macchine virtuali e l'esecuzione di comandi nel contesto ospite.
virt-inspector - Mostra la versione OS, il kernel, drivers, punti di montaggio, applicazioni, ecc. In una macchina virtuale.
Binding per i linguaggi di programmazione OCaml, Perl, Python, Ruby e Java.
Per maggiori informazioni fare riferimento a:
5.3.7. Altri miglioramenti
Fedora include anche i seguenti miglioramenti sulla virtualizzazione:
5.3.7.1. QEMU aggiornato alla versione 0.10.0
QEMU è un emulatore e virtualizzatore di macchine generico ed open source.
Quando usato come emulatore di sistema, QEMU può eseguire i sistemi operativi e i programmi sviluppati per una architettura (es. un processore ARM) su differenti sistemi (es. sul proprio PC). Usando la traduzione dinamica, si raggiungono delle buone prestazioni.
Quando usato come virtualizzatore, QEMU raggiunge quasi le prestazioni originali eseguendo il codice dell'ospite direttamente sulla CPU dell'ospitante. In questo caso è necessario un driver dell'ospite chiamato acceleratore QEMU (meglio noto come KQEMU). La modalità di virtualizzazione richiede che l'ospite e l'ospitante usino processori compatibili con x86.
Miglioramenti e nuove caratteristiche dalla 0.9.1:
Supporto TCG - Non richiede più GCC 3.x
Supporto accelerazione KVM (Kernel Virtual Machine)
Emulazione spazio utente BSD
Emulazione Bluetooth e supporto host passthrough
Supporto descrizione registro GDB XML
Emulazione Intel e1000
Emulazione HPET
Supporto dispositivo paravirtuale VirtIO
Emulazione Marvell 88w8618 / MusicPal
Emulazione Nokia N-series / emulazione procesore OMAP2
Supporto hotplug PCI
Migrazione live e nuovi formati salva/ripristina
Supporto display curses
strumento qemu-nbd per montare i formati a blocchi supportati
Supporto Altivec in emulazione PPC e nuovo firmware (OpenBIOS)
Ora sono supportati client VNC multipli
Ora la crittografia TLS è supportata in VNC
Numerosissimi errori risolti e nuove caratteristiche
5.3.7.2. KVM aggiornato alla versione 84
KVM (Per Kernel-based Virtual Machine) è una soluzione di virtualizzazione completa su hardware x86.
Usando KVM, è possibile eseguire macchine virtuali multiple eseguendo immagini Linux o Windows non modificate. Ogni macchina virtuale ha un hardware virtualizzato dedicato: scheda di rete, disco, scheda grafica, ecc.
5.3.7.3. libvirt aggiornato alla versione 0.6.1
Il pacchetto libvirt fornisce un'API e gli strumenti necessari per l'interazione con le funzioni di virtualizzazione delle versioni recenti di Linux (e di altri sistemi operativi). Il software libvirt è stato creato per essere un comune denominatore tra tutte le tecnologie di virtualizzazione con il supporto di:
Hypervisor di Xen su host Solaris e Linux.
Emulatore QEMU
Hypervisor Linux KVM
Sistema contenitore Linux LXC
Sistema contenitore Linux OpenVZ
Storage su dischi IDE/SCSI/USB, FibreChannel, LVM, iSCSI e NFS
Inoltre ci sono decine di altre ottimizzazioni, miglioramenti alla documentazione, più portabilità e risoluzione di numerosi errori. Per maggiori dettagli fare riferimento a:
http://www.libvirt.org/news.html
5.3.7.4. virt-manager Aggiornato alla versione 0.7.0
Il pacchetto virt-manager fornisce una implementazione GUI delle funzionalità di virtinst e di libvirt.
5.3.7.5. virtinst aggiornato alla versione 0.400.3
Il pacchetto python-virtinst contiene strumenti per l'installazione e la manipolazione di formati multipli di immagini VM guest.
5.3.7.6. Xen aggiornato alla versione 3.3.1
Fedora 11 supporta l'avvio come un guest domU, ma non funzionerà come dom0 fino a quando non verrà fornito il supporto necessario nel kernel upstream. Il supporto per dom0 dovrebbe essere presente con Xen 3.4.
Xen 3.3.1 è una versione di manutenzione nella serie 3.3.
Per maggiori informazioni fare riferimento a:
5.3.8. Supporto kernel xen
Il pacchetto kernel supporta l'avvio come guest domU, ma non funzionerà come dom0 fino a quando non verrà fornito il supporto necessario in upstream. La funzione è in fase di sviluppo e si stima che il supporto venga incluso nel kernel 2.6.30 e in Fedora 12.
La versione più recente di Fedora con supporto dom0 è Fedora 8.
L'avvio di un guest domU di Xen all'interno di un host Fedora 11 necessita di uno xenner basato su KVM. Xenner esegue il kernel guest insieme ad un piccolo emulatore Xen come guest KVM.
Importante
KVM richiede caratteristiche di virtualizzazione hardware nel sistema host. Attualmente i sistemi che non sono dotati di funzioni di virtualizzazione hardware non supportano i guest Xen.
Per maggiori informazioni, fare riferimento a: