DomU Support for Xen: Difference between revisions
Lars.kurth (talk | contribs) |
(→DomU support in Linux distributions: add OpenEmbedded, sort table alphabetically) |
||
(19 intermediate revisions by 7 users not shown) | |||
Line 7: | Line 7: | ||
__NOTOC__ |
__NOTOC__ |
||
= DomU support in Linux distributions = |
= DomU support in Linux distributions = |
||
This page describes the current status of support in Linux distributions for running as |
This page describes the current status of support in Linux distributions for running as guest VMs; if you are looking for dom0 support go [[Dom0_Kernels_for_Xen|here]]. |
||
You can also find instruction on how to build a mainline Linux kernel for DomU [[Mainline Linux Kernel Configs|here]]. |
You can also find instruction on how to build a mainline Linux kernel for DomU [[Mainline Linux Kernel Configs|here]]. |
||
Line 13: | Line 13: | ||
PV is the regular domU support that has been present in most Linux distributions for years and it is required to run on Amazon EC2 for example. |
PV is the regular domU support that has been present in most Linux distributions for years and it is required to run on Amazon EC2 for example. |
||
PV on HVM is a new type of Xen guest support that exploits hardware nested paging while enabling PV interfaces for IO. Depending on the workload PV on HVM guests might be faster or slower than regular PV guests. See [[ |
PV on HVM is a new type of Xen Project Hypervisor guest support that exploits hardware nested paging while enabling PV interfaces for IO. Depending on the workload PV on HVM guests might be faster or slower than regular PV guests. See [[Xen_Linux_PV_on_HVM_drivers]] for more information. |
||
{| border="1" cellpadding="2" cellspacing="0" |
{| border="1" cellpadding="2" cellspacing="0" |
||
|< >|'''Distribution''' |
|< >|'''Distribution''' |
||
| '''run as PV guest''' |
| '''run as PV guest''' |
||
| '''support for PVHVM''' |
|||
|- |
|- |
||
| Alpine Linux 2.3.x |
| Alpine Linux 2.3.x |
||
| yes |
| yes |
||
| ??? |
|||
|- |
|- |
||
| Alpine Linux 2.4.x |
| Alpine Linux 2.4.x |
||
| yes |
| yes |
||
| ??? |
|||
⚫ | |||
| Arch Linux (x86-64 only [5]) |
|||
⚫ | |||
⚫ | |||
|- |
|- |
||
| CentOS 5 |
| CentOS 5 |
||
| yes |
| yes |
||
| ??? |
|||
|- |
|- |
||
| CentOS 6 |
| CentOS 6 |
||
| yes |
| yes |
||
| ??? |
|||
|- |
|- |
||
| Debian |
| Debian 5.0 (Lenny) |
||
| yes |
| yes |
||
| ??? |
|||
|- |
|- |
||
| Debian |
| Debian 6.0 (Squeeze) |
||
| yes |
| yes |
||
| ??? |
|||
|- |
|- |
||
| Debian 7 (Wheezy) |
|||
⚫ | |||
| yes |
| yes |
||
| yes |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
| Ubuntu 12.04 |
|||
⚫ | |||
|- |
|- |
||
| Fedora 14 |
| Fedora 14 |
||
| yes |
| yes |
||
| ??? |
|||
|- |
|- |
||
| Fedora 16 |
| Fedora 16 |
||
| yes |
| yes |
||
| ??? |
|||
⚫ | |||
| OpenEmbedded 1.3+ |
|||
| yes |
|||
| ??? |
|||
|- |
|||
| OpenSUSE 11.4 |
|||
| yes |
|||
| ??? |
|||
|- |
|- |
||
| Oracle Linux 5 |
| Oracle Linux 5 |
||
| yes[2] |
| yes[2] |
||
| ??? |
|||
|- |
|- |
||
| Oracle Linux 6 |
| Oracle Linux 6 |
||
| yes[2] |
| yes[2] |
||
| ??? |
|||
|- |
|- |
||
| RHEL 5 |
| RHEL 5 |
||
| yes [3] |
| yes [3] |
||
| ??? |
|||
|- |
|- |
||
| RHEL 6 |
| RHEL 6 |
||
| yes |
| yes |
||
| ??? |
|||
|- |
|- |
||
| SLES 10 |
| SLES 10 |
||
| yes |
| yes |
||
| ??? |
|||
|- |
|- |
||
| SLES 11 |
| SLES 11 |
||
| yes |
| yes |
||
| ??? |
|||
|- |
|- |
||
| |
| Ubuntu 10.04 |
||
| yes |
| yes[1] |
||
| ??? |
|||
|- |
|||
⚫ | |||
| yes[1] |
|||
| ??? |
|||
|- |
|||
⚫ | |||
| yes[1] |
|||
| ??? |
|||
|} |
|} |
||
Line 82: | Line 113: | ||
[[Category:RHEL]] |
[[Category:RHEL]] |
||
[[Category:OpenSuSE]] |
[[Category:OpenSuSE]] |
||
[[Category:OpenEmbedded]] |
|||
[1] EC2 kernel only |
[1] EC2 kernel only |
||
<br>[2] Supported using the Red Hat-compatible Kernel as well as the Oracle Unbreakable Enterprise Kernel |
<br>[2] Supported using the Red Hat-compatible Kernel as well as the Oracle Unbreakable Enterprise Kernel |
||
<br>[3] save/restore is known to have [https://bugzilla.redhat.com/show_bug.cgi?id=669252 bugs] |
<br>[3] save/restore is known to have [https://bugzilla.redhat.com/show_bug.cgi?id=669252 bugs] |
||
<br>[4] see [[ |
<br>[4] see [[Xen_Linux_PV_on_HVM_drivers]] for resources about using optimized (paravirtualized) PV-on-HVM drivers |
||
<br>[5] You would need to recompile the kernel for Arch Linux i686. |
|||
= DomU support in BSDs and other Unix systems = |
= DomU support in BSDs and other Unix systems = |
||
{{TODO|check FreeBSD & NetBSD versions against PVHVM and PVH}} |
|||
This list is currently incomplete. We are in the process of verifying support for Unixes. |
This list is currently incomplete. We are in the process of verifying support for Unixes. |
||
{| border="1" cellpadding="2" cellspacing="0" |
{| border="1" cellpadding="2" cellspacing="0" |
||
|< >|'''Distribution''' |
|< >|'''Distribution''' |
||
| '''run as PV guest''' |
| '''run as PV guest''' |
||
| '''PVHVM''' |
|||
|- |
|- |
||
| FreeBSD |
| FreeBSD >=10 |
||
| |
| No[1] |
||
| Yes |
|||
|- |
|- |
||
| NetBSD |
| NetBSD >=3 |
||
| |
| Yes[2] |
||
| No |
|||
|- |
|||
| OpenBSD 5.9 |
|||
| no[6] |
|||
| yes[3] |
|||
|- |
|- |
||
| [[OpenIndiana]][ |
| [[OpenIndiana]][4] |
||
| no[ |
| no[4] |
||
| no |
|||
|- |
|- |
||
| Solaris 11 |
| Solaris 11 |
||
| yes[ |
| yes[5] |
||
| no |
|||
|} |
|} |
||
[[Category:FreeBSD]] |
[[Category:FreeBSD]] |
||
[[Category:NetBSD]] |
[[Category:NetBSD]] |
||
[[Category:OpenBSD]] |
|||
[[Category:OpenIndiana]] |
[[Category:OpenIndiana]] |
||
[[Category:Solaris]] |
[[Category:Solaris]] |
||
[ |
[1] See [https://svnweb.freebsd.org/base?view=revision&revision=282274 for more information] <br> |
||
[ |
[2] See [http://www.netbsd.org/ports/xen/howto.html NetBSD Xen HowTo for more information] <br> |
||
[3] PV drivers are selected automatically when OpenBSD recognizes that it's executing under Xen so no user configuration is required. <br> |
|||
[5] There has not yet been a stable release of [http://wiki.openindiana.org OpenIndiana] and there is some unclarity on whether it will work as PV guest <br> |
|||
[4] On their offical web site, you can read: 'Xen-based virtualization was at some time part of OpenSolaris project, but became outdated and was ultimately dropped due to lack of resources and invested interest.'<br> |
|||
[ |
[5] For SPARC systems as well as x86 systems (Oracle Solaris 11 OS already has the paravirtualized drivers installed as part of the OS).<br> |
||
[6] As the main Xen dev from OpenBSD (Mike Belopuhov) has it: 'You need to use an HVM loader, since we're not supporting pure PV mode.In Linux/xl parlance it requires builder = "hvm" option in the Xen VM config. I think that if you're trying to boot the kernel directly, you're instructing Xen to run VM in a PV mode, (which is impossible).' |
|||
= DomU support for Windows = |
= DomU support for Windows = |
||
Windows falls into the category of an unmodified operating system (in other words an operating system that has not been altered specifically to run on the Xen |
Windows falls into the category of an unmodified operating system (in other words an operating system that has not been altered specifically to run on the Xen Project Hypervisor). Thus, paravirtualization is not an option. The best way, therefore, to virtualize Windows is to use as a HVM) guest. The ''Windows 7/XP/Vista/Server 2008'' section of the [[:Category:HowTo]] document points to instructions explaining how to do this. |
||
However, James Harper maintains a set of PV drivers that allow Windows to make use of the network and block backend drivers in Dom0. This gives |
However, James Harper maintains a set of PV drivers that allow Windows to make use of the network and block backend drivers in Dom0. This gives a guest Windows VM a substantial performance boost. The table below shows the drivers available. |
||
{| border="1" cellpadding="2" cellspacing="0" |
{| border="1" cellpadding="2" cellspacing="0" |
||
|< >|'''Distribution''' |
|< >|'''Distribution''' |
||
Line 144: | Line 190: | ||
|} |
|} |
||
[ |
[1] GPLPV drivers can be downloaded from [http://meadowcourt.org/downloads meadowcourt.org/downloads]; further information can be found on [[XenWindowsGplPv]] <br> |
||
[2] Signed GPLPV drivers are available for download from [http://wiki.univention.de/index.php?title=Installing-signed-GPLPV-drivers Univention] <br> |
|||
[3] Xen Project Windows PV drivers available from [http://www.xenproject.org/developers/teams/windows-pv-drivers.html] |
|||
[[Category:Beginners|D]] |
[[Category:Beginners|D]] |
Latest revision as of 04:06, 18 September 2017
DomU support in Linux distributions
This page describes the current status of support in Linux distributions for running as guest VMs; if you are looking for dom0 support go here.
You can also find instruction on how to build a mainline Linux kernel for DomU here.
PV is the regular domU support that has been present in most Linux distributions for years and it is required to run on Amazon EC2 for example.
PV on HVM is a new type of Xen Project Hypervisor guest support that exploits hardware nested paging while enabling PV interfaces for IO. Depending on the workload PV on HVM guests might be faster or slower than regular PV guests. See Xen_Linux_PV_on_HVM_drivers for more information.
Distribution | run as PV guest | support for PVHVM |
Alpine Linux 2.3.x | yes | ??? |
Alpine Linux 2.4.x | yes | ??? |
Arch Linux (x86-64 only [5]) | yes | yes |
CentOS 5 | yes | ??? |
CentOS 6 | yes | ??? |
Debian 5.0 (Lenny) | yes | ??? |
Debian 6.0 (Squeeze) | yes | ??? |
Debian 7 (Wheezy) | yes | yes |
Fedora 14 | yes | ??? |
Fedora 16 | yes | ??? |
OpenEmbedded 1.3+ | yes | ??? |
OpenSUSE 11.4 | yes | ??? |
Oracle Linux 5 | yes[2] | ??? |
Oracle Linux 6 | yes[2] | ??? |
RHEL 5 | yes [3] | ??? |
RHEL 6 | yes | ??? |
SLES 10 | yes | ??? |
SLES 11 | yes | ??? |
Ubuntu 10.04 | yes[1] | ??? |
Ubuntu 11.04 | yes[1] | ??? |
Ubuntu 12.04 | yes[1] | ??? |
[1] EC2 kernel only
[2] Supported using the Red Hat-compatible Kernel as well as the Oracle Unbreakable Enterprise Kernel
[3] save/restore is known to have bugs
[4] see Xen_Linux_PV_on_HVM_drivers for resources about using optimized (paravirtualized) PV-on-HVM drivers
[5] You would need to recompile the kernel for Arch Linux i686.
DomU support in BSDs and other Unix systems
This list is currently incomplete. We are in the process of verifying support for Unixes.
Distribution | run as PV guest | PVHVM |
FreeBSD >=10 | No[1] | Yes |
NetBSD >=3 | Yes[2] | No |
OpenBSD 5.9 | no[6] | yes[3] |
OpenIndiana[4] | no[4] | no |
Solaris 11 | yes[5] | no |
[1] See for more information
[2] See NetBSD Xen HowTo for more information
[3] PV drivers are selected automatically when OpenBSD recognizes that it's executing under Xen so no user configuration is required.
[4] On their offical web site, you can read: 'Xen-based virtualization was at some time part of OpenSolaris project, but became outdated and was ultimately dropped due to lack of resources and invested interest.'
[5] For SPARC systems as well as x86 systems (Oracle Solaris 11 OS already has the paravirtualized drivers installed as part of the OS).
[6] As the main Xen dev from OpenBSD (Mike Belopuhov) has it: 'You need to use an HVM loader, since we're not supporting pure PV mode.In Linux/xl parlance it requires builder = "hvm" option in the Xen VM config. I think that if you're trying to boot the kernel directly, you're instructing Xen to run VM in a PV mode, (which is impossible).'
DomU support for Windows
Windows falls into the category of an unmodified operating system (in other words an operating system that has not been altered specifically to run on the Xen Project Hypervisor). Thus, paravirtualization is not an option. The best way, therefore, to virtualize Windows is to use as a HVM) guest. The Windows 7/XP/Vista/Server 2008 section of the Category:HowTo document points to instructions explaining how to do this.
However, James Harper maintains a set of PV drivers that allow Windows to make use of the network and block backend drivers in Dom0. This gives a guest Windows VM a substantial performance boost. The table below shows the drivers available.
Distribution | run as PV guest |
Windows Vista | no |
Windows XP | no |
Windows 2008 | no |
Windows 2003 | no |
Windows 2000 | no |
Windows 7 | no |
[1] GPLPV drivers can be downloaded from meadowcourt.org/downloads; further information can be found on XenWindowsGplPv
[2] Signed GPLPV drivers are available for download from Univention
[3] Xen Project Windows PV drivers available from [1]