Questa pagina delinea il lavoro finora svolto per integrare in Fedora le varie tecnologie di virtualizzazione.
Introduzione
La virtualizzazione può far funzionare molte guest virtual machines su un sistema operativo (S.O.) come Fedora; cioè usando un computer, si possono simulare diversi computer individuali ed anche far funzionare in ciascuna di queste virtual machines il proprio S.O.
Esistono molte tecnologie di virtualizzazione diverse tra loro, inclusi sia software free and open source sia proposte proprietarie.
Allo stato attuale, con Fedora sono distribuite le seguenti tecnologie:
- KVM (Kernel-based Virtual Machine) supporta guest completamente virtualizzati.
Si tratta di un hypervisor (o virtual machine monitor) incluso nel kernel Linux che necessita di architetture con virtualizzazione integrata nell'hardware, come Intel VT o AMD-V. KVM è correntemente l'interesse principale, su cui si concentrano gli sforzi degli sviluppatori di Fedora, alla virtualizzazione. - QEMU Un veloce emulatore di CPU capace di virtualizzare sia architetture native sia non-native; per esempio può far girare un S.O. PowerPC su un'architettura x86_64.
- Xen Supporta la paravirtulizzazione dei guest.
Poichè è da Fedora 8 che manca un supporto a NB Xen Dom0, in vista di Fedora 13 si prevede una sua re-introduzione
(vedere la nota di rilascio Xen Dom0 support). - xenner è un'utility che estende la posibilità ai guest Xen paravirtualizzati di funzionare usando KVM.
Un certo numero di terze parti, offrono pacchetti aggiuntivi per altre tecnologie di virtualizzazione. Per esempio, OpenVZ e Linux-VServer, entrambi offrono virtualizzazioni container based in grado di partizionare un singolo S.O. in diverse zone isolate -- simile a un chroot ma con un maggior isolamento delle risorse, e VirtualBox offre una tecnologia che non necessita di hardware dedicato alla virtualizzazione.
Per concludere, anticipando questa diversificazione tecnologica, già dai tempi di Fedora 5, tutte le applicazioni di gestione di base, sono state realizzate sul toolkit libvirt, che offre delle API tecnologicamente indipendenti per creare sistemi virtualizzati, free and open source.
History
Fedora Core 5 was the first release to include Xen as a core integrated technology. The new Linux native virtualiation, KVM, was introduced to Fedora 7. For a more detailed account of virtualization progress in Fedora, consult the Virtualization History page.
News
There is semi-regular coverage of Virtualization news in Fedora Weekly News, and more detailed status updates posted to the fedora-virt Mailing List. For ease of reference, there is an archive of virtualization news
Getting Started
See getting started with virtualization for an excellent overview to using the virtualization capabilities in Fedora.
Bugs
See How to debug Virtualization problems for some tips on reporting virtualization bugs to bugzilla.
If you wish to help triaging and fixing virtualization bugs, virtualization bugs is a good starting point.
Mailing List & IRC
To get in touch with Fedora virtualization users and developers try the virt mailing list or #virt on irc.oftc.net.
Relevant Packages
Here's a catalogue of all the virtualization related packages in Fedora:
Core Virtualization
provides e.g. the kvm hypervisor core (kvm.ko), support for running as KVM and Xen guests etc.kernel
is a CPU and device emulator; it also acts as the userspace component of KVMqemu
is a toolkit for interacting with the various virtualization technologieslibvirt
provides the xen hypervisor and userspace componentsxen
allows Xen guests to be run on KVMxenner
PC BIOS for QEMUbochs
PXE boot ROMs for QEMUgpxe
video BIOS for QEMUvgabios
sparc/ppc BIOS for QEMUopenbios
Tools
is a desktop user interface for managing virtual machinesvirt-manager
is used by virt-manager to connect to a virtual machine's graphical consolevirt-viewer
provides a python API for installing virtual machines, and a bunch of useful utilitis like virt-install and virt-clonepython-virtinst
is a GNOME applet for monitoring and controlling virtual machinesgnome-applet-vm
is a top-like utilitiy for virtual machinesvirt-top
provides an API and tools for accessing and modifying virtual machine disk imageslibguestfs
guestfish
lets you access and modify virtual machine disk images from the command linelibguestfs-tools
provides useful tools: virt-df, virt-cat, virt-edit, virt-ls, virt-inspector, virt-rescue, virt-win-reglibguestfs-mount
(guestmount) lets you mount virtual machine disk images on the host
gathers statistics from within virtual machinescollectd-libvirt
enables the building of virtual appliance imagesappliance-tools
is a network boot server that can be used to provision virtual machinescobbler
is a functional test suite for libvirtperl-Sys-Virt-TCK
is a tool for converting virtual machines to use the KVM hypervisorvirt-v2v
Language Bindings
For libvirt
For libguestfs
Obsolete
used to provide the userspace component of the kvm hypervisor. It has since been replaced by qemukvm
has been replaced byetherboot
gpxe
is going to be replaced by other virt toolsvirt-mem
oVirt
oVirt is a Fedora based project which provides small host images and a web-based virtual machine management console. See the website to learn more and get involved.