Difference between revisions of "XL"

From Xen
(Xen 4.3)
m (fixed broken link)
 
(11 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
= Introduction =
 
= Introduction =
   
''xl'' was introduced in the Xen 4.1 release, however ''xend'' remained the default. As of Xen 4.2 however ''xend'' is deprecated (and will be removed in subsequent XEN versions) and ''xl'' should now be used by default.
+
''xl'' was introduced in the Xen 4.1 release, however ''xend'' remained the default. At the time of the Xen 4.2 release, ''xend'' was declared deprecated and ''xl'' became the default toolstack. ''xend'' has finally been removed from the Xen 4.5 release.
   
 
''xl'' is based on the xenlight library (''libxl''), a library designed to provide a common "bottom third" for any Xen toolstack.
 
''xl'' is based on the xenlight library (''libxl''), a library designed to provide a common "bottom third" for any Xen toolstack.
Line 31: Line 31:
 
The ''xl'' toolstack is intended to remain backwards compatible with existing ''xm'' domain configuration files. It is therefore expected that any existing configurations should work with ''xl'' (although note the exceptions in ''Anti-Features'' below):
 
The ''xl'' toolstack is intended to remain backwards compatible with existing ''xm'' domain configuration files. It is therefore expected that any existing configurations should work with ''xl'' (although note the exceptions in ''Anti-Features'' below):
   
Unlike ''xend'' the ''xl'' toolstack will not perform any host networking configuration for you. The ''xend'' code to reconfigure on startup is extremely fragile, prone to bugs when either distro or Xen are upgraded and rather difficult to debug. Instead ''xl'' takes the approach of deferring such network configuration to the distribution configuration tools which are usually well understood and documented. Therefore upon upgrading to ''xl'' it is necessary to configure your host networking stack appropriately. Please see [[HostConfiguration/Networking]] for more details on how to do this.
+
Unlike ''xend'' the ''xl'' toolstack will not perform any host networking configuration for you. The ''xend'' code to reconfigure on startup is extremely fragile, prone to bugs when either distro or Xen are upgraded and rather difficult to debug. Instead ''xl'' takes the approach of deferring such network configuration to the distribution configuration tools which are usually well understood and documented. Therefore upon upgrading to ''xl'' it is necessary to configure your host networking stack appropriately. Please see [[Network_Configuration_Examples_(Xen_4.1+)]] for more details on how to do this.
   
 
You can find a feature by feature comparison of XL and Xen in [[XL vs Xend Feature Comparison]].
 
You can find a feature by feature comparison of XL and Xen in [[XL vs Xend Feature Comparison]].
Line 39: Line 39:
 
=== xl Upgrade Checklist ===
 
=== xl Upgrade Checklist ===
   
* Configure your host networking using the configuration tools provided by your distribution. (See: [[HostConfiguration/Networking]])
+
* Configure your host networking using the configuration tools provided by your distribution. (See: [[Network_Configuration_Examples_(Xen_4.1+)]])
 
* Remove any python code from domU configuration files.
 
* Remove any python code from domU configuration files.
 
* Disable xend startup script (it might also be needed to enable xl in the xen config (i.e. for debian in <code>/etc/default/xen</code>), and then to reboot).
 
* Disable xend startup script (it might also be needed to enable xl in the xen config (i.e. for debian in <code>/etc/default/xen</code>), and then to reboot).
Line 48: Line 48:
 
The following are explicitly not supported by ''xl'':
 
The following are explicitly not supported by ''xl'':
   
* Managed Domains (a la ''xm vm-create''). Suitable alternatives: xapi, which is available as part of [[XCP]] or via [[Project Kronos]] or [http://libvirt.org libvirt] or some very simple scripting (e.g. the ''xendomains'' initscript). Also see [[Choice of Toolstacks]]
+
* Managed Domains (a la ''xm vm-create''). Suitable alternatives: xapi, which is available as part of [[XCP]] or via [[Project Kronos]] or [[libvirt]] or some very simple scripting (e.g. the ''xendomains'' initscript). Also see [[Choice of Toolstacks]]
 
* Python code in configuration files. See: [[PythonInXlConfig]]
 
* Python code in configuration files. See: [[PythonInXlConfig]]
   
 
The following were considered but demand for them was low:
 
The following were considered but demand for them was low:
   
* Creating domains from SXP format configuration files (''xm create -F''). See [http://bugs.xenproject.org/xen/bug/17 Xen bug#17].
+
* Creating domains from SXP format configuration files (''xm create -F'') or outputting domain information in SXP format (''xm list -l''). See [http://bugs.xenproject.org/xen/bug/17 Xen bug#17].
   
= Documentation =
+
= Upgrade Documentation =
  +
  +
== Upgrading xm to xl ==
  +
  +
* [[Migration_Guide_To_Xen4.1%2B#Toolstack_upgrade_notes|Migration Guide from xm to xl]]
  +
* Short video overview: [https://www.youtube.com/watch?v=qdJi18VekEY&feature=youtu.be XM to XL: A Short, But Necessary, Journey]
  +
  +
= Release Documentation =
   
 
== Xen 4.2 ==
 
== Xen 4.2 ==
Line 87: Line 94:
 
== Xen 4.4 ==
 
== Xen 4.4 ==
 
See [[Xen_Project_4.4_Man_Pages]].
 
See [[Xen_Project_4.4_Man_Pages]].
  +
  +
== Xen 4.5 ==
  +
See [[Xen_Project_4.5_Man_Pages]].
   
 
== Xen unstable ==
 
== Xen unstable ==
Line 109: Line 119:
 
| This document specifies the xl config file format vif configuration option.
 
| This document specifies the xl config file format vif configuration option.
 
|-
 
|-
| [http://xenbits.xen.org/docs/unstable/misc/tscmode.txt xl.cfg(5), '''tsc_mode''' configuration]
+
| [http://xenbits.xen.org/docs/unstable/man/xen-tscmode.7.html xl.cfg(5), '''tsc_mode''' configuration]
 
| In Xen 4 a new config option called tsc_mode may be specified for each domain. This document is targeted for Xen users and administrators that may need to select a non-default tsc_mode.
 
| In Xen 4 a new config option called tsc_mode may be specified for each domain. This document is targeted for Xen users and administrators that may need to select a non-default tsc_mode.
 
|}
 
|}

Latest revision as of 10:25, 12 July 2020

Introduction

xl was introduced in the Xen 4.1 release, however xend remained the default. At the time of the Xen 4.2 release, xend was declared deprecated and xl became the default toolstack. xend has finally been removed from the Xen 4.5 release.

xl is based on the xenlight library (libxl), a library designed to provide a common "bottom third" for any Xen toolstack.

Features

  • PV and HVM guests.
  • Basic guest lifecycle operations: create, shutdown, reboot, pause, unpause, list, rename etc.
  • Guest device support, including hotplug and unplug:
    • Network devices (both para-virtualised and emulated)
    • Block devices (both para-virtualised and emulated)
    • Virtual framebuffer, keyboard and mouse both para-virtualised and emulated)
      • Including SDL, VNC and SPICE output
    • PV console devices
  • Live migration and save/restore of guests,
  • Passthrough of PCI devices to guests.
  • VCPU pinning
  • CPU pools, including cpupool-per-NUMA node.
  • Control of CPU scheduler parameters
  • TMEM
  • XSM/Flash policy control.
  • Control of CPUID features exposed to guests.
  • Support for both the traditional Xen for of qemu (qemu-xen-traditional) and upstream qemu versions (qemu-xen)

See also XL vs Xend Feature Comparison

Upgrading from xend

The xl toolstack is intended to remain backwards compatible with existing xm domain configuration files. It is therefore expected that any existing configurations should work with xl (although note the exceptions in Anti-Features below):

Unlike xend the xl toolstack will not perform any host networking configuration for you. The xend code to reconfigure on startup is extremely fragile, prone to bugs when either distro or Xen are upgraded and rather difficult to debug. Instead xl takes the approach of deferring such network configuration to the distribution configuration tools which are usually well understood and documented. Therefore upon upgrading to xl it is necessary to configure your host networking stack appropriately. Please see Network_Configuration_Examples_(Xen_4.1+) for more details on how to do this.

You can find a feature by feature comparison of XL and Xen in XL vs Xend Feature Comparison.

Please report any other configuration file incompatibilities to the Xen developers on the xen-devel mailing list.

xl Upgrade Checklist

  • Configure your host networking using the configuration tools provided by your distribution. (See: Network_Configuration_Examples_(Xen_4.1+))
  • Remove any python code from domU configuration files.
  • Disable xend startup script (it might also be needed to enable xl in the xen config (i.e. for debian in /etc/default/xen), and then to reboot).
  • Use xl command instead of xm

Anti-Features

The following are explicitly not supported by xl:

The following were considered but demand for them was low:

  • Creating domains from SXP format configuration files (xm create -F) or outputting domain information in SXP format (xm list -l). See Xen bug#17.

Upgrade Documentation

Upgrading xm to xl

Release Documentation

Xen 4.2

Icon Info.png This section contains link to Xen manual pages that are generated from the Xen codebase. They reflect the state of xen-4.2-testing.hg.


Document related to xl and xl.cfg Description
xl(1) Xen management tool, based on LibXenlight
xl.cfg(5) XL Domain Configuration File Syntax
xl.cfg(5), disk configuration This document specifies the xl config file format disk configuration option.
xl.cfg(5), network configuration This document specifies the xl config file format vif configuration option.
xl.cfg(5), tsc_mode configuration In Xen 4 a new config option called tsc_mode may be specified for each domain. This document is targeted for Xen users and administrators that may need to select a non-default tsc_mode.

Xen 4.3

See Xen 4.3 Man Pages.

Xen 4.4

See Xen_Project_4.4_Man_Pages.

Xen 4.5

See Xen_Project_4.5_Man_Pages.

Xen unstable

Icon Info.png This section contains link to Xen manual pages that are generated from the Xen codebase. They reflect the state of xen-unstable.hg.


Document related to xl and xl.cfg Description
xl(1) Xen management tool, based on LibXenlight
xl.cfg(5) XL Domain Configuration File Syntax
xl.cfg(5), disk configuration This document specifies the xl config file format disk configuration option.
xl.cfg(5), network configuration This document specifies the xl config file format vif configuration option.
xl.cfg(5), tsc_mode configuration In Xen 4 a new config option called tsc_mode may be specified for each domain. This document is targeted for Xen users and administrators that may need to select a non-default tsc_mode.

Also See