XCP-ng is a turnkey open source virtualization platform based on Xen Source and Citrix® Hypervisor (formerly XenServer). XCP-ng stands for Xen Cloud Platform, a tribute to the old Open Source project XCP, which was abandoned when XenServer was open-sourced in 2013.

XCP-ng project is a result of massive cooperation between individuals and companies, to deliver a powerful type 1 hypervisor. The product components, documentation, repositories and dev process are easily accessible and available to the general public.

xcp ng virtualization platform

A functional XCP-ng platform is comprised of the following infrastructure components:

  • Compute
  • Network
  • Storage
  • API (Xen API)

We will perform a step-by-step installation of XCP-ng virtualization platform. This will be the first article with subsequent guides put into mini-series for easy reference in building your ultimate virtualization solution.

Ezoic

Installation requirements

XCP-ng can only be installed on a 64-bit x86 server-class machine that has been devoted to hosting Virtual Machines – Linux, Unix, Windows e.t.c. An optimized and hardened Linux partition is created after the installation of XCP-ng, with a Xen-enabled kernel. The kernel is what controls the interaction between the virtual machines hardware and the real physical hardware.

In an XCP-ng virtualization platform supported hardware at the compute level are:

Ezoic

  • Up to 5 TB of RAM
  • Up to 16 physical NICs
  • Up to 288 logical processors per host.

The devices listed on Citrix Hypervisor’s Hardware Compatibility List are supported by XCP-ng.

Step 1: Download XCP-ng 8.x ISO

We’ll be performing an installation of XCP-ng version which in an LTS release with support until 2025-06-25. There are many options for the installation you can choose from, namely:

ISO installation is the most used method as can be done purely offline without the need for DHCP, PXE and Web server.

Ezoic

In this article we’ll use the ISO installation method. But first you need to download the latest LTS ISO image of XCP-ng from the iso releases page.

install XCP ng virtualization platform 01

As of this article writing this is version 8.2.0

wget https://updates.xcp-ng.org/isos/8.2/xcp-ng-8.2.1.iso

You can as well download the file directly from the URL in your browser.

install XCP ng virtualization platform 02

Step 2: Create bootable USB or attach ISO Media

If doing the installation over a KVM switch or direct server console, you can create a bootable USB key with the commands below:

Ezoic

dd if=xcp-ng-8.2.1.iso of=/dev/sdX bs=8M oflag=direct

On Windows, you can use Rufus to create the bootable USB stick.

For installation over IPMI you can then attach the ISO to the virtual media:

Ezoic
install XCP ng virtualization platform 03

Step 3: Install XCP-ng 8.2 Virtualization Platform

Boot off created medium – USB or attached ISO to begin installation of XCP-ng 8.2 Virtualization Platform on your physical box.

install XCP ng virtualization platform 04

Select keyboard keymap you’re using in this installation.

install XCP ng virtualization platform 06

Agree to clear data so that installation of XCP-ng Virtualization server can begin.

install XCP ng virtualization platform 07

Accept the End User License Agreement to progress with the installation.

install XCP ng virtualization platform 08

Select the disk that will be used for the Virtual Machine storage. Extra configurations can be done after the installation.

install XCP ng virtualization platform 09

Select the source of files for the installation. Since we’re doing the ISO installation method, this will be “Local media“.

Ezoic

install XCP ng virtualization platform 10

Verify installation source to check integrity of the files.

Ezoic
install XCP ng virtualization platform 11

A successful message is expected before we proceed.

install XCP ng virtualization platform 12

Specify root user password – this has to be at least 6 characters in length.

install XCP ng virtualization platform 13

Choose the network interface used for connecting to the management server on the host.

install XCP ng virtualization platform 14

Specify whether to use DHCP or Static IP address for the management interface. For static networking, provide the server IP address, Subnet mask and Gateway IP address.

Ezoic

install XCP ng virtualization platform 15

If the interface is trunk and VLAN is required, set IP information and specify VLAN ID:

Ezoic
install XCP ng virtualization platform 16

Set correct DNS server(s) IP addresses:

install XCP ng virtualization platform 17

Select XCP-ng host geographical area

install XCP ng virtualization platform 18

Select the city in geographical area chosen.

Ezoic
install XCP ng virtualization platform 19

Select local time configuration method. NTP is preferred over manual time configuration.

install XCP ng virtualization platform 20

If you chose NTP you need to input NTP servers details in the next screen.

Ezoic

install XCP ng virtualization platform 21

Once all the information required to install XCP-ng is provided you can confirm to proceed.

Ezoic
install XCP ng virtualization platform 22

The installation preparation begins shortly after you confirm.

install XCP ng virtualization platform 23

Installation could take quite some minutes, so be patient!

install XCP ng virtualization platform 24

Select “No” for Supplemental packs installation.

Ezoic
install XCP ng virtualization platform 25

You’re almost through with the installation steps if your screen shows output similar to below.

install XCP ng virtualization platform 26

Here is my successful installation message. You need to detach installation media then reboot the system,

Ezoic
install XCP ng virtualization platform 27

After reboot you’re greeted TUI console which looks like this:

Ezoic
install XCP ng virtualization platform 28

You can start the command shell by hitting “Local Command Shell” from the selection.

install XCP ng virtualization platform 29

Login the root username and the password set during installation

install XCP ng virtualization platform 30

The installer creates small partition for the OS and dedicate the remaining to Virtual Machines using LVM.

install XCP ng virtualization platform 32

Upgrade the system’s packages before you use XCP-ng installed to manage Virtual Machines.

yum update

Confirm upgrades using key:

install XCP ng virtualization platform 31

Reboot the host after a successful upgrade.

Step 4: Install XenServer | XCP-ng Management tools (Optional)

Refer to the guides in the links below:

Step 5: Adding ISO Storage repository

Refer to the guide in below link:

Conclusion

In this guide we’ve been able to install XCP-ng 8.2 Virtualization Platform on a dedicated server using ISO downloaded from the website. In the next guides we’ll dive deeper into more configurations and environment preparation before creating Virtual Machines in the platform.