XL

From Xen
Revision as of 09:47, 9 August 2012 by Ijc (talk | contribs) (Link to xl vs xend feature comparison)
Jump to navigationJump to search

Introduction

xl was introduced in the Xen 4.1 release, however xend remained the default. As of Xen 4.2 however xend will be deprecated (and may eventually be removed) and xl should now be used by default.

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 HostConfiguration/Networking for more details on how to do this.

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: HostConfiguration/Networking)
  • Remove any python code from domU configuration files.
  • Disable xend startup script.
  • Use xl command instead of xm

Anti-Features

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 libvirt or some very simple scripting (e.g. the xendomains initscript).
  • Python code in configuration files. See: PythonInXlConfig

Documentation

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. We do not yet have versions for specific Xen releases, but will have them in future


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.