Xen Orchestra on Ubuntu 15.10 - Complete installation instructions
-
This guide assumes you already have a running Ubuntu 15.10 system on which you want to configure Xen Orchestra, everything else is documented below.
TL;DR: Run this command as root on Ubuntu 15.10...
sudo curl https://raw.githubusercontent.com/scottalanmiller/xenorchestra_installer/master/xo_install.sh | bash
During the installation of your OS, you'll want to create a user outside of root, I made my user account xoadmin
How to Install Xen Orchestra Source on Ubuntu 15.10 (self compiled) AKA MANUAL installation
sudo apt-get install --yes nfs-common curl -sL https://deb.nodesource.com/setup_5.x | sudo -E bash - sudo apt-get install --yes nodejs curl -o /usr/local/bin/n https://raw.githubusercontent.com/visionmedia/n/master/bin/n chmod +x /usr/local/bin/n n stable node -v npm -v sudo apt-get install --yes build-essential redis-server libpng-dev git python-minimal git clone -b stable https://github.com/vatesfr/xo-server git clone -b stable https://github.com/vatesfr/xo-web cd xo-server sudo npm install && npm run build cp sample.config.yaml .xo-server.yaml nano .xo-server.yaml #Edit and uncomment it to have the right path to XO-Web, because XO-Server embeds an HTTP server (we assume that XO-Server and XO-Web are on the same directory). It's near the end of the file: # mounts: '/': '../home/xoadmin/xo-web/dist/ # save and exit cd ~ cd ../xo-web sudo npm i lodash.trim@3.0.1 sudo npm install sudo npm run build cd ../xo-server sudo npm start
The scripted installation thanks to @scottalanmiller
Below is the preferred Installation method. It includes the systemctl xo-server.service written by @Danp
sudo bash <password> sudo curl https://raw.githubusercontent.com/scottalanmiller/xenorchestra_installer/master/xo_install.sh | bash <password>
In your favorite web-browser go to this VM's IP Address, login with the default user: admin@admin.net and "admin" for the password. Update your Login Details!!
Add your Xen Server(s) and go to town.
Automatically Start XO at Boot - See this Post by @Danp Also copied below.
Create a file in /etc/systemd/system/xo-server.service and enter the below into it.
# systemd service for XO-Server. [Unit] Description= XO Server After=network-online.target [Service] WorkingDirectory=/opt/xo-server/ ExecStart=/usr/local/bin/node ./bin/xo-server Restart=always SyslogIdentifier=xo-server [Install] WantedBy=multi-user.target
Save the file, and then run to enable the service at start up.
sudo systemctl enable xo-server.service
To monitor the service you can then run
journalctl -u xo-server -f -n 50
For everyone on the newer releases of the "stable build" at least as of April-8-2016 there appears to be a bug when attempting to mount an NFS share; to resolve this follow the short process below
- Login to your XO web console
- Go to Backup
- Select Remote Stores
- Add your NFS Share, it'll likely fail out(unless it's been fixed since this posting)
- Back on your XO console go to /tmp/xo-server/mounts
- Run "ls" to see what mount is listed on your server
- Next run "mount -t nfs nfs-server-ip-address:/path/to-share remote-#"
Replacing nfs-server-ip-address with the actual IP of the remote server and the remote-# with whatever is listed on your console.
-
I've updated the above guide as some things weren't working when I tested the How-To.
sudo -s may be usable, but for simplicity of the guide I've removed it. sudo is required before each command for the purposes of this guide.
Sorry folks.
-
Are we ALL kicking the tires on Xen Orchestra now?
-
I have my "production" server running a XO VM. I just need a USB flash drive to configure my backup host to run Xen (and subsequently a CentOS SMB file Server) as the backup target.
Those should be in tomorrow so it should be a pretty good setup.
And yeah, as soon as @olivier posted the sources, and the delta backup capabilities I was sold. Now to test it
-
I've got it running in a container and it's been pretty nice. Haven't had any issues so far.
-
I went ahead and got a Debian ova made for anyone who wants the easy way out. http://mangolassi.it/topic/7371/xen-orchestra-v4-11-ova/7
-
I am trying to do this using Ubuntu 14.04.3 but I get Cannot GET /
xo@xo:~/xo-server$ sudo npm start > xo-server@4.11.0 start /home/xo/xo-server > node bin/xo-server app-conf /home/xo/xo-server/config.json +0ms app-conf /home/xo/xo-server/.xo-server.yaml +3ms xo:main Configuration loaded. +13ms xo:main Web server listening on http://[::]:80 +9ms xo:perf blocked for 209ms +265ms
-
Why such an old Ubuntu version? I'm surprised there are issues, but still, that's old.
-
What Node.js version do you have installed?
-
@scottalanmiller Because it's the lastest LTS release. Isn't using LTS best practice?
-
@anonymous said:
@scottalanmiller Because it's the lastest LTS release. Isn't using LTS best practice?
No, it's a bad practice. Using something with "long term support" is a good practice, but with Ubuntu it is just a naming thing for marketing purposes. Even Canonical themselves do not recognize it as an LTS. It's just letters that they slap on every fourth release to make it sound like an enterprise product like RHEL. It isn't. Ubuntu is a rolling release will full support only for the latest build. So sticking to LTS is just "not updating" in this case. One of the many reasons that Ubuntu isn't that good. It's not "bad", but it isn't up to par.
Ubuntu is like Fedora, you always want to be on the latest unless there is a compatibility issue. You would never intentionally use an LTS release unless you are doing something like MongoDB which only releases for certain versions. And the answer there is not to use Ubuntu but to use CentOS which is kept up to date.
If you want a true LTS, Ubuntu is not an option for you. RHEL and SLES are the only enterprise long term support options in the Linux world.
-
So your idea of sticking to a long term supported product is sound, it just doesn't apply to Ubuntu where LTS doesn't actually mean it is getting long term support.
-
Does Long Term Support even matter though? Is that for a situation where you can't upgrade the OS because of some limitation of the software running on top of it?
Assuming the software will run on the latest, isn't that really the only place to be, support and patch wise?
-
@Dashrender said:
Does Long Term Support even matter though? Is that for a situation where you can't upgrade the OS because of some limitation of the software running on top of it?
Assuming the software will run on the latest, isn't that really the only place to be, support and patch wise?
So that's an interesting thought and I lean the way that you are thinking. But you can't guarantee forward compatibility in all cases. So I'd say "it depends." For most things, especially desktops, web apps and non-critical systems, I would go for "rolling releases" like Fedora and OpenSuse Tumbleweed or Ubuntu "current release" to make sure that I was always completely up to date. This eliminates a lot of migration risk and deprecation risk down the road.
But when running apps that needs serious stability, long term testing and vendor support, it is often best to choose CentOS or OpenSuse Leap with super long, very stable release cycles and hard core support so that you can be sure that everything is going to work.
-
So I am going to try again with the latest version of Ubuntu Server, or Debian.
-
or should I try CentOS 7? Everything else I run is on CentOS 7.....
-
Since you are at the point of "trying", I would definitely do CentOS 7.
-
@scottalanmiller You are a bit of a CentOS fanboy, and you made me one too! =P
-
@scottalanmiller said:
@Dashrender said:
Does Long Term Support even matter though? Is that for a situation where you can't upgrade the OS because of some limitation of the software running on top of it?
Assuming the software will run on the latest, isn't that really the only place to be, support and patch wise?
So that's an interesting thought and I lean the way that you are thinking. But you can't guarantee forward compatibility in all cases. So I'd say "it depends." For most things, especially desktops, web apps and non-critical systems, I would go for "rolling releases" like Fedora and OpenSuse Tumbleweed or Ubuntu "current release" to make sure that I was always completely up to date. This eliminates a lot of migration risk and deprecation risk down the road.
But when running apps that needs serious stability, long term testing and vendor support, it is often best to choose CentOS or OpenSuse Leap with super long, very stable release cycles and hard core support so that you can be sure that everything is going to work.
So we basically said the same thing - I did put the assuming the software will run on the latest bit in there. Of course if the software won't run on the latest, you need to stay on the version you're at.
-
You have to uncommend mounts! =/