Install Xen Orchestra on Ubuntu 20 Rumi, March 21, 2023 Prework apt-get update && apt-get dist-upgrade Node.js For this particular installation node 16 is needed to be installed. Lets install- Add NodeSource PPA This command will add PPA sources required to be able to install NodeJS 16 on your Ubuntu 20.04 installation: curl -s https://deb.nodesource.com/setup_16.x | sudo bash Install NodeJS 16 Now that the PPA source has been added, we can install NodeJS 16 on our Ubuntu 20.04 installation. Run the following command: sudo apt install nodejs -y Tip: The -y flag means we’re not prompted to confirm our choices. Yarn To install the Yarn package manager, run: curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --dearmor | sudo tee /usr/share/keyrings/yarnkey.gpg >/dev/null echo "deb [signed-by=/usr/share/keyrings/yarnkey.gpg] https://dl.yarnpkg.com/debian stable main" | sudo tee /etc/apt/sources.list.d/yarn.list sudo apt-get update && sudo apt-get install yarn Confirm installation of Node.js and Yarn $ node -v v14.16.1 $ yarn -v 1.22.5 Packages XO needs the following packages to be installed. Redis is used as a database by XO. apt-get install build-essential redis-server libpng-dev git python3-minimal libvhdi-utils lvm2 cifs-utils Fetching the Code You need to use the git source code manager to fetch the code. Ideally, you should run XO as a non-root user, and if you choose to, you need to set up sudo to be able to mount NFS remotes. As your chosen non-root (or root) user, run the following: cd /opt/ git clone -b master https://github.com/vatesfr/xen-orchestra TIP The same sources are available in below of this post just in order to make sure that an updated version doesn’t colide with this documented installation process. cd /opt/xen-orchestra yarn yarn build Now you have to create a config file for xo-server: cd packages/xo-server mkdir -p ~/.config/xo-server cp sample.config.toml ~/.config/xo-server/config.toml ** Note: If you’re installing xo-server as a global service, you may want to copy the file to /etc/xo-server/config.toml instead. (however I just skipped it- you may use it as per https://xen-orchestra.com/docs/installation.html#from-the-sources repository) In this config file, you can change default ports (80 and 443) for xo-server. If you are running the server as a non-root user, you will need to set the port to 1024 or higher. You can try to start xo-server to see if it works. You should have something like this: yarn start WebServer listening on localhost:80 [INFO] Default user: "admin@admin.net" with password "admin" Running XO The only part you need to launch is xo-server, which is quite easy to do. From the xen-orchestra/packages/xo-server directory, run the following: yarn start That’s it! Use your browser to visit the xo-server IP address, and it works! 😃 Run the below as the user owning XO as orchestra serviceforever start dist/cli.mjs Or you can use forever-service (opens new window)to install XO as a system service, so it starts automatically at boot. Run the following as root: yarn global add forever yarn global add forever-service Be sure to edit the path below to where your install is located! cd /opt/xen-orchestra/packages/xo-server/ Change the username below to the user owning XO (in my case it was root) forever-service install orchestra -r root -s dist/cli.mjs The forever-service command above must be run in the xo-server bin directory. Now you can manage the service, and it will start on boot with the machine: service orchestra start service orchestra status If you need to delete the service: forever-service delete orchestra Ref: https://www.stewright.me/2022/01/tutorial-install-nodejs-16-on-ubuntu-20-04/ https://computingforgeeks.com/install-xen-orchestra-on-ubuntu-debian-linux/ https://xen-orchestra.com/docs/installation.html#from-the-sources Administrations Configurations (Linux) XCP-NG UbuntuUbuntu 20XCP-NGXen OrchestraXO