When I started experimenting with VMs on my home server, I had a Ubuntu Server system as a base. For Linux there are two main players in the Hypervisor field: KVM and Xen. Xen is the Hypervisor that Citrix bases its server on and they have a free download of it available called XenServer, so I thought that would be a good first sniff at Xen.
The Citrix Website has two movies about the first steps; installing and connecting the management GUI, and they don’t lie: it’s easy and quick. Connecting the Management GUI however does expose the commercial nature of the product. Actually, where Microsoft’s Hyper-V just had an embedded license and VMWare’s ESXi a perpetual license, Citrix wants you to keep in touch. The license is free, but only valid for a year, after which you have to renew it online. Putting on the aluminum-foil hat, this would allow them to stop renewing for older versions, leaving me with a non-working system. I’m not even suggesting I have any indication they might, it’s just that the option is explicitly there. For a commercial situation no problem, for a hobbyist (who is likely to forget about such things) something to keep in mind.
The XenCenter Management GUI
As the installation video shows, you just point a browser to the server and you get a page with a clickable link for an installer. After installation and start, you connect to the server. Next comes the license, which is at first a month-long trial. The dialog provides a button to send you to a web page where you can request a free license, which is sent to you by email. This however assumes you are associated with a company: the company field is required on the form. Ah, yes, and Citrix being a U.S. company, requires me to select a “State or Province”, which is possible (we have provinces) but completely useless from an address perspective. Anyways, saving the license file and import it into the License Manager dialog gets me a nag-free year.
Creating and Running a VM
Setting up a Virtual Machine is becoming quite a standard task. With XenCenter it is pretty quick and easy, but I do note a certain lack of options when compared to the other Hypervisors. XenCenter pretty much tells me that life has been made easy for me, so just use the offered possibilities. Need a network connection? All your NICs are belong to us and already set up as virtual networks. Storage? We’ll gladly create a virtual one for you. All simple and easy.
Starting the VM did bring out some unexpected new things. First of all, the consoles are simple black-and-white text screens. When I started the Ubuntu Server installation, I initially thought I had entered the wrong CD, because I didn’t recognize the first dialog. Whereas all the other Hypervisors gave me a VM with a simple graphics card, XenServer doesn’t, you just get a simple text-enabled, eighty by twenty five character screen. Looking at the edition comparison, I notice GPU passthrough is in the Enterprise Edition, but that is not what the others are doing (I think), they are emulating a simple card. Perhaps some of these more advanced options are what you get with the paid versions. I’ll get back on it if and when I get to test Xen on another platform to see if this is indeed a rare thing for it.
The Passthrough Tests
Well, this is getting to be a rather standard test by now; Let’s see what XenServer has to offer for the SATA-to-VM scenario. Unlike vSphere and Hyper-V Manager, XenCenter doesn’t even mention the concept. Again, this may be an Enterprise feature, but that is not much different from the situation for the other two. Luckily, there are more people like myself, so when I Googled, I found questions and answers on the subject. One of the posts I found, here, describes it pretty well. The trick is to declare the disk to be removable storage, which coincidentally describes the major reason for wanting to do this: you want to be able to migrate the storage to another machine, either physical or VM, without having to extract the data from a VM store.
In the case of XenServer you have to add rules to udev, the Linux Kernel device manager, telling it to create links to the disk when it is found and remove them when it disappears. Given that we are talking about SATA disks, they will always be present, but the point is that they are now visible in the collection of removable storage devices, so you can attach them to the VM. Unfortunately, they will not be available during start, so if you just have this disk connected to a VM, it will complain that no boot disk is available. VMWare ESXi could do that, and KVM also.
As for the network adapter, I have not found any reference to a passthrough option, but given the results so far, I would have been surprised if it did.
Ok, let’s summarize the findings.
- Quick and easy installation.
- Nice looking Management GUI with an easy interface.
- The License. Sorry, I just dislike nag-ware. Sure, it’s free, but I have to renew yearly to keep it in working condition, and the Citrix website isn’t really geared towards private persons.
- Unable to boot from a removable disk. I’ll accept that you can only get passthrough by connecting a disk as removable, but why no booting?
- Too much simplicity. I was hesitant to bring this up, but as a hobbyist I like to look at the details. XenCenter hides a lot of features with no “Advanced” button to get at them.