This introduction is a simple explanation for those unfamiliar with Xen, XenServer, and Xen Cloud Platform (XCP).
Xen itself is the underlying virtualization software. It's the hypervisor component that actually runs the virtual guest machines. It has been used by many projects and packaged in many ways. It can be installed and run on many *nix operating systems, for example as a Linux package installed with apt on Ubuntu. There's a very nice explanation with further details on the Xen Wikipedia page. XCP is derived from the commercial Citrix XenServer, which itself also includes Xen, but XCP is completely free and open source. XCP can be thought of as the open source release of XenServer.
The current XCP v1.1 release was derived from XenServer 5.6 FP1. There is also a XCP v1.5 that is currently in beta testing, based on XenServer 6.0. It is hoped that XCP v1.6 will ship in September, or October 2012.
XCP v1.1 is a packaged up version of Linux CentOS 5 (Linux kernel v2.6.32), combined together with Xen v3.4.2, and a web service API called XenAPI that provides a management API for the Xen components intended to be used by various Management Tools.
XCP v1.5 uses Xen v4.1.2, and CentOS v5.7 (Linux kernel v2.6.32). New features include GPU passthrough, for graphic-intesive VMs; improved performance; an Open vSwitch backend; and additional guest templates.
XCP can be installed in two ways:
- A bootable ISO allows you to quickly get a bare-metal machine running as a virtualization server (this is comparable to VMware ESXi).
- The Debian and Ubuntu repos have XCP packages, allowing XCP setups that don't run on CentOS.
- Download the ISO
- Boot/install it on a fresh machine (likely using the whole available hard drive)
- Configure the network from the very brief administrative interface that stays on the screen after installation
- Manage the server over the network using CLI tools, or a GUI management tool.
- Now you can start installing and running supported guest VMS using paravirtualization or hardware virtualization.
- You can run hardware virtualization (HVM) guests only if your machine has the necessary hardware to support it.
- Otherwise any CPU can run paravirtualization (PV) guests, it just means you're limited to the guest OSes and kernel versions that specifically support PV (e.g. Ubuntu 10.04 for example supports PV).
There's a great article here that shows screen-shots all the way through the installation process: http://www.dedoimedo.com/computers/xen-cloud.html
From the Debian/Ubuntu Repos
You can install xapi, the XenAPI management server, on a Debian or Ubuntu system.
- Install Debian, or Ubuntu, using your preferred method
apt-get install xcp-xapi
See Installing Xapi on a Debian-based system for more information.
After installation, many users choose to use Citrix XenCenter for management as it is a stable and mature tool. If you're not interested in a GUI, you can SSH to the XCP server itself, and run the built-in command line tools (xe and xl) as described on the Management Tools and Command Line Interface pages. You can also install the management CLI on a separate Linux box.
If you have existing physical machines or VMs from other hypervisors, you can import them into XCP.
Per the explanation on http://xen.org/products/xcp/community_and_support.html, the best documentation for XCP is the official Citrix XenServer docs for 5.6 FP1, available here: http://docs.vmd.citrix.com/XenServer/5.6.0fp1/1.0/en_gb/
This is one reason documentation for "XCP" itself is hard to find; the team has not yet written official separate XCP docs as the XenServer docs are applicable to XCP. You can also find links to XCP documentation for a specific release in Category:Manual.