From Fedora Project Wiki

Revision as of 12:56, 6 February 2010 by Lewis41 (talk | contribs)

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

  • kernel provides e.g. the kvm hypervisor core (kvm.ko), support for running as KVM and Xen guests etc.
  • qemu is a CPU and device emulator; it also acts as the userspace component of KVM
  • libvirt is a toolkit for interacting with the various virtualization technologies
  • xen provides the xen hypervisor and userspace components
  • xenner allows Xen guests to be run on KVM
  • bochs PC BIOS for QEMU
  • gpxe PXE boot ROMs for QEMU
  • vgabios video BIOS for QEMU
  • openbios sparc/ppc BIOS for QEMU

Tools

  • virt-manager is a desktop user interface for managing virtual machines
  • virt-viewer is used by virt-manager to connect to a virtual machine's graphical console
  • python-virtinst provides a python API for installing virtual machines, and a bunch of useful utilitis like virt-install and virt-clone
  • gnome-applet-vm is a GNOME applet for monitoring and controlling virtual machines
  • virt-top is a top-like utilitiy for virtual machines
  • libguestfs provides an API and tools for accessing and modifying virtual machine disk images
  • guestfish lets you access and modify virtual machine disk images from the command line
  • libguestfs-tools provides useful tools: virt-df, virt-cat, virt-edit, virt-ls, virt-inspector, virt-rescue, virt-win-reg
  • libguestfs-mount (guestmount) lets you mount virtual machine disk images on the host
  • collectd-libvirt gathers statistics from within virtual machines
  • appliance-tools enables the building of virtual appliance images
  • cobbler is a network boot server that can be used to provision virtual machines
  • perl-Sys-Virt-TCK is a functional test suite for libvirt
  • virt-v2v is a tool for converting virtual machines to use the KVM hypervisor

Language Bindings

For libvirt

For libguestfs

Obsolete

  • kvm used to provide the userspace component of the kvm hypervisor. It has since been replaced by qemu
  • etherboot has been replaced by gpxe
  • virt-mem is going to be replaced by other virt tools

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.