Updated: August 18, 2011
We had an introduction article on Xen and we discussed the Xen live CD. Now, let us explore another Xen-based product. Xen Cloud Platform (XCP) is a standalone virtualization software, similar to VMware ESXi. XCP delivers the Xen Hypervisor with support for a range of guest operating systems, including Windows and Linux network and storage support, and management tools in a single, tested installable image.
XCP is based on Citrix XenServer, which we will review next week. For now, let's focus on the Cloud Platform and see what it can give us. XCP requires a dedicated host for installation; in other words, it does not run out of the context of another operating system, it has its own minimal kernel and a basic console for management. The product is free and open-source and therefore a worthy candidate for considering as a part in your virtualization arsenal.
Install & setup XCP
After downloading XCP 1.0, burn the image and boot your designated server from CD. A simple, if somewhat long text-based wizard will load and guide you through the installation process. In order to demonstrate with screenshots, I actually installed XCP as a virtual machine on top of another virtualization product. This is kind of recursive fun, testing the limits of your available hardware resources.
Now, please note that this is NOT how XCP needs to be deployed. You should install XCP on a dedicated physical host. It should also have hardware virtualization technology present and enabled, otherwise you will run into a handful of problems later on, especially with Windows guests.
Initial setup steps include choosing the keyboard, confirming the installation and loading additional device drivers if required and accepting the license agreement.
Now, if you hit the message where hardware virtualization assist support is not available, you may want to reconsider your setup. Either you have an older processor without the virtualization extensions or perhaps it is disabled in BIOS.
Next, you need to choose the storage for your virtual machines. You can skip this step if you want to use special, advanced configurations like SAN or NAS or similar. You may also enable thin provisioning to optimize disk usage.
Now, you need to choose the installation source. In this case, it's local media. There's also the message about Supplemental Packs, which is redundant for XCP, as there are no extra packs. This is carried over from Citrix XenServer. Lastly, you can verify the media before installing.
Choose the root password.
Setup your network. This includes the host management interface IP address, DNS and the hostname.
Next, you have the timezone and NTP configuration.
After this step, XCP will begin installing.
Using XCP
Now, let's have some fun. After a few moments, XCP will boot and you'll reach a simple graphics interface, very similar to ESXi. This is your console, which allows you to perform all kinds of administrative and virtual machine management activities.
You can also drop into a command-line shell, if you prefer. It's the last option in the graphical interface, called Local Command Shell.
There's also full ssh, after which you can start the graphics interface using the xsconsole command. However, this time, it will come up in a new set of colors, red and black rather than blue and black.
A few more words ...
XCP does not yet have libvirt support, so you cannot use Virtual Machine Manager to connect to XCP remotely, like you can do with KVM, for instance. You will need to use the console or ssh connection to the hypervisor.
In this regard, XCP is more like ESXi, except you have full root console and you don't need any extra steps to enable it. A future libvirt support should be coming along. Lastly, you can do pretty much anything you already know about Xen, including fancy xm commands.
Conclusion
Xen Cloud Platform is an interesting project. Home users will probably find it less suitable for their needs, as it requires virtualization technology and a dedicated installation on a separate host. However, for geeks and businesses, this is a useful alternative to payware and closed-source solutions available on the market.
The installation is fairly straightforward. You get a fully featured product, without any crippled or limited functionality. There's the graphical console, command line and SSH, if you require them. The only thing missing is libvirt, which would allow using VMM or OpenXenManager to connect remotely and manage hosts.
That's all for today. There's more Xen goodness coming. We're going to take a look at XenServer, discuss common troubleshooting problems and tackle paravirtualization some more. Stay tuned for updates.
Cheers.