Leveraging Citrix XenServer Tools

Watch out! This tutorial is over 6 years old. Please keep this in mind as some code snippets provided may no longer work or need modification to work on current systems.
Tutorial Difficulty Level    

Ideally, you should use the “Quick Instances” and other VM templates provided by our Xen Orchestra Dashboard when creating virtual servers for your project. These have been optimised with tools and drivers designed to get the best performance from your virtual machine, and to access advanced features such as safe shutdown in the event of power outage. But what if your VM was built from scratch, can you still access these tools?

The missing piece of the puzzle is “Citrix XenServer Tools” (aka XenTools or XenServer Guest Utilities), which provide high performance I/O services without the overhead of traditional device emulation. XenTools consists of I/O drivers (also known as Paravirtualized drivers or PV drivers) and the Management Agent.

The I/O drivers contain storage and network drivers, and low-level management interfaces. These drivers replace the emulated devices and provide high-speed transport between Windows and the XenServer software. During the installation of a Windows operating system, XenServer uses traditional device emulation to present a standard IDE controller and a standard network card to the VM. This allows Windows to complete its installation using built-in drivers, but with reduced performance due to the overhead inherent in emulation of the controller drivers.

The Management Agent , also known as the Guest Agent, is responsible for high-level virtual machine management features and provides full functionality to XenCenter, including quiesced snapshots.

XenServer has a simple mechanism to install and update the I/O drivers and the Management Agent. The I/O drivers and the Management Agent are combined together and issued as ‘XenServer Tools’ for ease of installation.

Students should install XenTools on each VM to be able to allow the following operations by Computer Services when supporting the student or carrying out scheduled maintenance:

  • Cleanly shut down, reboot, or suspend a VM
  • View VM performance data in the XenCenter Management Interface
  • Migrate a running VM to another host
  • Create quiesced snapshots or snapshots with memory (checkpoints), or revert to snapshots
  • Adjust the number of vCPUs on a running Linux VM (Windows VMs require a reboot for this to take effect)

Important: Running a VM without installing XenTools is not a supported configuration. While a Windows VM can function without them, performance is significantly hampered when the I/O drivers (PV drivers) are not installed. Running Windows VMs without these drivers is not supported. Some features, such as live relocation across physical hosts, will only work with the I/O drivers installed and active.

So, if you are still following, you will see that you really, REALLY should have XenTools installed on your VM! Here are 2 good use case scenarios to consider.

  • In the event of a campus wide power outage, the Dell PowerEdge R830 servers (4 of them, in a “pool”) that sit behind our XOA Dashboard will shutdown safely. Before they do that, all optimised VMs will be told to shutdown safely to avoid data loss or hard disk corruption. Non-optimised VMs however, will be shutdown rather abruptly!
  • Computer Services have scheduled an upgrade of the RAM on all 4 Dell PowerEdge R830 servers, sometime before St. Patrick’s Day 2019 (really, this isn’t just made up). In order to do this, all 4 servers will need to be shutdown. Similar to above, only VMs with XenTools installed will shutdown safely. All others will halt as if someone yanked out the power lead on the server.

How to Install XenTools on a Windows VM

  • On your VM, open a browser and download the XenTools ISO file from http://files.comp.dkit.ie/isofiles/xentools.iso
  • Double-click the ISO file to mount it. Yuo can also right-click an ISO file and select the “Mount” option
  • Click Run Setup.exe to begin XenServer Tools installation. This opens the Citrix XenServer Windows Management Agent Setup wizard. Follow the instructions on the wizard to get your VM to an optimized state and perform any actions that are required to complete the installation process
  • Reboot the VM

How to Install XenTools on a Linux VM

Switch to root user for this VM

sudo -i

Download the XenTools archive using the wget command

wget http://files.comp.dkit.ie/oslab/XenTools.tar.gz .

Extract the file

tar -xvzf XenTools.tar.gz

Run the installer

./install.sh

Follow the steps on screen. When installed, reboot your VM

shutdown -r now

 

If you used a Quick Instance or one of the other templates provided for your VM, you do not need to do the above.

However, if you built your VM from scratch, it is HIGHLY recommended you carry out the above to avoid data loss due to corrupt virtual disks!