Update Citrix Xenserver to XCP-ng

The story behind XCP-ng

Since XenServer 7.x, Citrix decided to make changes to their free Version, obviously to make more money with the licensed versions of the product. You can’t use the LTS 7.1 without a subscription, because there are no more updates for this minor without a licence. It’s free to upgrade from 7.1 to the next version, but in 7.2 Citrix started to disable features and with the next releases they also decided to create a limit of max. 3 servers per pool and removed so many important features like HA, Xen Storage Motion or the Rolling Pool Upgrade Wizard, that the most homelabs or little companies had to decide what to do. Of course, you will find a lot of other hypervisors out there and some are free, but if you really love XenServer, you don’t want to move to another product.

Oliver Lambert and his Team – the developers of Xen Orchestra – decided to start a new project: XCP-ng – basically, they hack the code of Citrix XenServer to enable all features and remove the restrictions, but that’s not all, they also implement new features like a very easy updates process and the code of the new “product” is 100% open source plus community supported.

This post should show you my experience with the update from XenServer to XCP-ng, after some tests I wanted to give it a shot and use it on my servers.

use Xen Orchestra or XCP-ng Center to manage the upgraded poolmaster (normal XenCenter will not work anymore!)

start your virtual machines

Your pool is now partially upgraded, so you need to do the slave(s) as well.

stop the VMs

boot the CD / ISO-Image

use “upgrade XenServer”

the installer will perform a backup of your old installation for you

the installer will ask for the management interface and IP configuration – make sure to use the same config as the slave has normally

reboot after the process is finished

use Xen Orchestra or XCP-ng Center to manage the pool

start your virtual machines

the live-update without downtime

it is possible to update the pool without an downtime for the virtual machines, but they have to be on shared storage! during a pool-update, sadly – it’s not possible to move VMs between the nodes via “Xen Storage Motion”