From Fedora Project Wiki

(→‎Resources: update qemu homepage url)
(Re-work the introduction, kill the development plans section, integrate a bunch of the resources links into the main text and drop the rest)
Line 1: Line 1:
= Virtualization =
This page covers the efforts to integrate various virtualization technologies into Fedora.
 
This page covers virtualization efforts in the context of Fedora.


== Introduction ==
== Introduction ==


Virtualization allows one to run many guest virtual machines on top of a host operating system such as Fedora. What this means is that using one computer, you can mimic several individual computers and even run different operating systems in each of these virtual machines. There are many different virtualization technologies, including both free and open source software and proprietary offerings. Fedora Core 5 and later include the [[Tools/Xen|  Xen]]  virtualization code which can do paravirtualization of a modified operating system (OS), or, with hardware support, full virtualization of any native OS. Fedora has also long included QEMU, a fast CPU emulator capable of virtualizing OS on both native and non-native architectures (such as allowing a PowerPC OS to run on x86_64). Yet another type of virtualization is the containers approach used by OpenVZ, which can partition a single OS into several isolated zones -- a chroot with much stronger resource isolation.
Virtualization allows one to run many guest virtual machines on top of a host operating system such as Fedora. What this means is that using one computer, you can mimic several individual computers and even run different operating systems in each of these virtual machines. There are many different virtualization technologies, including both free and open source software and proprietary offerings.


Although [[Tools/Xen|  Xen]]  was the initial focus of virtualization efforts on Fedora, other solutions like KVM have been incorporated into Fedora over time, since they are often complementary and suited to different use cases. Anticipating this diversification of technology, management applications for Fedora have been built on top of the [http://libvirt.org libvirt] toolkit, which offers a technology independent API for managing virtual systems.
Fedora has also long included [http://bellard.org/qemu/ QEMU], a fast CPU emulator capable of virtualizing OS on both native and non-native architectures (such as allowing a PowerPC OS to run on x86_64).


== Development plans ==
Fedora Core 5 was the first release to include [http://xen.org/ Xen] virtualization, which supports paravirtualization of a modified operating system (OS), or, with hardware support, full virtualization of any native OS. Since Fedora 8, Fedora has not included [[XenPvopsDom0|Xen Dom0 support]], pending the inclusion of said support in upstream Linux.


Development is split into a number of different areas:
Fedora 7 was the first release to include support for [http://kvm.qumranet.com/kvmwiki KVM], which is a hypervisor included in the Linux kernel which requires hardware virtualization support like Intel VT or AMD-V. KVM is currently the main focus of Fedora's virtualization efforts. [http://kraxel.fedorapeople.org/xenner/ xenner] is a utility which allows Xen guests to be run using KVM.


* [[HypervisorDevelopment|  Hypervisor Development]]  covers work planned for the Xen Hypervisor over the forthcoming Fedora release(s)
Yet another type of virtualization is the containers approach used by [http://openvz.org/ OpenVZ], which can partition a single OS into several isolated zones -- a chroot with much stronger resource isolation.
* [[Tools/Xen|  Xen Development]]  covers work on the Xen kernel and Xen-specific userspace management stack
* [[Tools/VirtAPIDevelopment|  Virtualization API Development]]  covers work planned for the generic virtualization management APIs, in particular [http://libvirt.org libvirt]
* [[Tools/VirtAppDevelopment|  Virtualization Application Development]]  covers work planned on management applications using [http://libvirt.org libvirt]


== Resources ==
Anticipating this diversification of technology, management applications for Fedora have been built on top of the [http://libvirt.org libvirt] toolkit, which offers a technology independent API for managing virtual systems.


* [http://www.cl.cam.ac.uk/research/srg/netos/xen/ Xen]
* [http://sourceforge.net/projects/kvm Kernel Virtual Machine (KVM)]
* [http://openvz.org/ OpenVZ]
* [http://linux-vserver.org/Welcome_to_Linux-VServer.org Linux VServer]
* [http://user-mode-linux.sourceforge.net/ User Mode Linux (UML)]
* [http://bellard.org/qemu/ QEMU]
* [http://www.princeton.edu/~melinda/ VM history]  many interesting documents via Melinda Varian
* [http://www.virtualbox.org VirtualBox]
* [http://mac-on-linux.sourceforge.net/ Mac-on-Linux]  virtualization solution for PowerPC
----
----
[[Category:Virtualization]]
[[Category:Virtualization]]

Revision as of 15:37, 14 January 2009

This page covers the efforts to integrate various virtualization technologies into Fedora.

Introduction

Virtualization allows one to run many guest virtual machines on top of a host operating system such as Fedora. What this means is that using one computer, you can mimic several individual computers and even run different operating systems in each of these virtual machines. There are many different virtualization technologies, including both free and open source software and proprietary offerings.

Fedora has also long included QEMU, a fast CPU emulator capable of virtualizing OS on both native and non-native architectures (such as allowing a PowerPC OS to run on x86_64).

Fedora Core 5 was the first release to include Xen virtualization, which supports paravirtualization of a modified operating system (OS), or, with hardware support, full virtualization of any native OS. Since Fedora 8, Fedora has not included Xen Dom0 support, pending the inclusion of said support in upstream Linux.

Fedora 7 was the first release to include support for KVM, which is a hypervisor included in the Linux kernel which requires hardware virtualization support like Intel VT or AMD-V. KVM is currently the main focus of Fedora's virtualization efforts. xenner is a utility which allows Xen guests to be run using KVM.

Yet another type of virtualization is the containers approach used by OpenVZ, which can partition a single OS into several isolated zones -- a chroot with much stronger resource isolation.

Anticipating this diversification of technology, management applications for Fedora have been built on top of the libvirt toolkit, which offers a technology independent API for managing virtual systems.