Managing XenServer with a XenCenter and Xen Orchestra Web Interfaces – Part – 7

Installation of Xen Orchestra

Xen Orchestra, as mentioned earlier, is a web based method for managing XenServer infrastructures. The officially supported and suggested product to use in a production environment is the Xen Orchestra Appliance, or often called XOA.

This appliance is a pre-built and highly stable Debian virtual guest that can be installed to a XenServer host or run through VirtualBox.

Once XOA is up and running, the Xen Orchestra web interface is available and can be used to manage XenServers.

There are many benefits to using the official XO appliance but there is also the ability to install Xen Orchestra from sources as well. Installing from sources provides all of the latest and greatest bug fixes and feature enhancements directly from the Xen Orchestra development team.

The next few paragraphs will walk through the process of manually installing Xen Orchestra on a Debian 8 Jessie install. It is assumed that a Debian 8 system is already running and fully updated from the official Debian repositories.

To see how to install Debian 8 please see the walk through found here Installation of Debian 8 Jessie.

The official guide to building XO from source can be found here. The following are modified steps to accomplish the same task on a host running Debian 8 Jessie.

The first step to building Xen Orchestra (XO) from sources is to install the necessary dependencies. According to the XO documentation the dependencies can be installed with the following command.

# apt-get install wget build-essential redis-server libpng-dev git python-minimal

Next node.js needs to be installed as it is required by XO. The installation of node.js can be accomplish by following the next few steps.

# wget -c https://raw.githubusercontent.com/visionmedia/n/master/bin/n
# chmod u+x n
# ./n lts
# npm i -g npm

Be sure to check that the proper versions of both 'node' and 'npm' are installed with the following commands.

# node -v
# npm -v
Check Nodejs and NPM Version
Check Nodejs and NPM Version

After the successful completion of these commands, all the necessary dependencies are installed and the system is ready to begin the installation of the XO server and XO web components.

# git clone -b stable http://github.com/vatesfr/xo-server 
# git clone -b stable http://github.com/vatesfr/xo-web
# ls -l
Installation of Xen Orchestra
Installation of Xen Orchestra

The first step is to prepare the XO-Server. All of the commands to prepare the XO server must be issued from within the 'xo-server' directory.

# cd xo-server
# npm install && npm run build

This process will take some time (circa 5 minutes) and does require an active Internet connection. Once complete the server configuration file needs to be created and modified to point to the web information that will be built in the next paragraphs.

The 'xo-server' and 'xo-web' folders are assumed to be in the same parent directory according to the installation instructions; modify to fit the environment as needed.

To accomplish the server’s configuration issue the following commands.

# cp sample.config.yaml .xo-server.yaml
# nano .xo-server.yaml

Once the '.xo-server.yaml' file is opened, navigate toward the bottom of the file and locate the line ‘# List of files/directories which will be served.’. Below this line there is a line that will be commented out with a ‘#’ and the comment needs to be removed.

If xo-server and xo-web directories are in the same parent folder, change the line to: '/': '../xo-web/dist' (single quotes are needed in the preceding code).

Otherwise, make the appropriate changes to the path for the 'xo-web/dist/' folder. (NOTE: A privileged user is required to bind to port 80).

If a non-privileged user is to be used, locate the line 'port: 80' in the '.xo-server.yaml' file and change the port value to a port number above 1024. This guide will use port 8080 by setting the port directive as such 'port: 8080'.

Configure Xen Orchestra
Configure Xen Orchestra

Save the changes to this file and exit the text editor. At this point the server should be able to be started successfully. Test this before continuing by issuing the following command (To stop the server, hit 'ctrl' + 'c' keys).

$ su -c 'npm start'
Start NPM Service
Start NPM Service

Now the web files for the XO server need to be prepared. This is a simple process that must be done from within the 'xo-web' directory.

$ cd ../xo-web
$ npm install
$ npm run build

The build process for the web files will take time and requires an active Internet connection as well. Once the process is complete, the server can be started again and will deliver the newly created web files.

$ cd ../xo-server
$ su -c 'npm start'

At this point open a web browser and navigate to the XO-Server's IP address and port number. In the configuration above, the server was opened on port 8080 so to connect to Xen Orchestra, the following url will be needed:

http://:8080

Once successfully connected, the default user-name and password are as follows:

User-name: [email protected]
Password: admin

A successful login should result in the following web page loading.

Xen Orchestra Web Interface
Xen Orchestra Web Interface

At this point Xen Orchestra is working and ready to be used to manage XenServer hosts.

NOTE: As mentioned earlier, it is strongly recommended that the official Xen Orchestra appliance be used to manage production XenServer hosts! These instructions walked the reader through installing the absolute newest feature set of Xen Orchestra from sources.

Rob Turner
Rob Turner is an avid Debian user as well as many of the derivatives of Debian such as Devuan, Mint, Ubuntu, and Kali. Rob holds a Masters in Information and Communication Sciences as well as several industry certifications from Cisco, EC-Council, ISC2, Linux Foundation, and LPI.

Each tutorial at TecMint is created by a team of experienced Linux system administrators so that it meets our high-quality standards.

Join the TecMint Weekly Newsletter (More Than 156,129 Linux Enthusiasts Have Subscribed)
Was this article helpful? Please add a comment or buy me a coffee to show your appreciation.

14 Comments

Leave a Reply
    • hello sandro i came across a project call archipel archipelproject.org looks like an alternative solution to XO but am not sure its in active development!

      Reply
      • Sandro/Biyi,

        There is openxenmanager available in most distributions. Personally have had hit or miss luck with it but it is a viable option if you don’t wish to use Xen Orchestra or XenCenter.

        Reply
        • Rob,
          i think Sandro is looking for an alternative solution similar to XO, something more of a web app, i think OXM is a native app. Have you seen archipel ( archipelproject.org )? maybe you could review it!

          Reply
          • Biyi,

            Ah, you’re correct OXM is a local package for most distros. I’ve not heard of archipel but will definitely take a look at it!

    • Abdul,

      Which part are you wanting to update? XenCenter can be downloaded from a XenServer running XenServer 7.

      Reply
      • Hi Rob,
        I’m looking to update Xen Orchestra, I’ve installed it from the tutorial above, and its running fine. I’m just concerned if I pull the latest release, would it affect my existing setup?

        Reply
        • Abdul,

          The open source Xen Orchestra appliance will sadly require the use of ‘git’ commands in order to update it. One of the benefits of buying the actual appliance is that it has an ‘upgrade’ button to make upgrading easier. I’m reviving my old install from a snapshot and I will share the steps/results.

          Reply
  1. Biyi,

    Indeed the backup functionality is available from the sources. From the Xen Orchestra main page (one where all the XenServer host and guests are displayed) next to the user currently logged in name, there is an icon of nine little tiles. Click on that icon and halfway down there will be a link to the backup manager. From the backup manager, a schedule of VM back ups can be created as well as rolling snapshots. Let me know if this is what you are needing.

    Reply
    • Biyi,

      Indeed the backup functionality is available from the sources. From the Xen Orchestra main page (one where all the XenServer host and guests are displayed) next to the user currently logged in name, there is an icon of nine little tiles. Click on that icon and halfway down there will be a link to the backup manager. From the backup manager, a schedule of VM back ups can be created as well as rolling snapshots. Let me know if this is what you are needing.

      Reply
      • yes exactly what i need thanks, i really need to convince my organization to adopt server virtualization, i needed to be sure of all the tools that can be used on non-windows OS (not using xencenter). Thanks a lot rob

        Reply
        • You’re quite welcome. The one thing I know off the top is that High Availability tools currently aren’t manageable through Xen Orchestra. You have to enable/disable it manually through the CLI on the XenServer master host.

          Reply

Got Something to Say? Join the Discussion...

Thank you for taking the time to share your thoughts with us. We appreciate your decision to leave a comment and value your contribution to the discussion. It's important to note that we moderate all comments in accordance with our comment policy to ensure a respectful and constructive conversation.

Rest assured that your email address will remain private and will not be published or shared with anyone. We prioritize the privacy and security of our users.