Giter VIP home page Giter VIP logo

xenorchestrainstallerupdater's Introduction

XenOrchestraInstallerUpdater - Install / Update Xen-Orchestra from sources

In a nutshell

This repo consist of script to install and update Xen Orchestra for CentOS 8/Ubuntu 18/Debian 10

Installation is done using latest xo-server and xo-web sources by default. With this method Xen-Orchestra has all features unlocked which are normally available only with monthly fee.

Optional plugins can be installed. They are included in XO repository, but not installed by default. Check list from Xen Orchestra plugins and edit xo-install.cfg accordingly.

Xen-Orchestra is a great project and i strongly encourage you to consider the supported version of their product.

Paid version comes with pro support and appliance and is the suggested option for larger environments. Method that this script offers comes with no support and is not the officially recommended way of using Xen-Orchestra. This is mainly intended for testing purposes and small environments which don't require support.

Instructions

platform

Suggested platform is a VM with fresh install of any of the supported OS. You should put at least 3GB of RAM to the machine, but preferably 2vCPU/4GB RAM. Otherwise you may encounter OOM error during installation because of running out of memory.

script

Clone this repository, copy sample.xo-install.cfg as xo-install.cfg and edit variables to suit your preferences and run xo-install.sh as root. Sample configuration will be copied as xo-install.cfg if doesn't exist

basic functionality including menu:
./xo-install.sh

non-interactive update task (option 2):
./xo-install.sh --update

non-interactive install task (option 1):
./xo-install.sh --install

quick option to rollback (option 4):
./xo-install.sh --rollback

Tool makes some checks and offers options:

  1. Autoinstall
  • Installs all dependencies (necessary packages and Xen-Orchestra itself). Doesn't do firewall changes, so make sure you allow access to port specified in xo-install.cfg.
  • Packages listed in the end of this README
  1. Update / Install without dependencies
  • Updates NodeJS and Yarn packages if AUTOUPDATE variable is set to true (it is by default)
  • Installs Xen-Orchestra from latest sources (doesn't install any new packages)
  1. Deploy container
  • Offers options to pull ready docker image from dockerhub, also maintained by me
  1. Rollback installation
  • Offers option to choose which installation to use from existing ones (if more than 1)

notes:

  • If you choose to install with option 2, you need to take care that required packages are already installed
  • You can change xo-server and xo-web git branch/tag by editing xo-install.cfg $BRANCH variable

Notes

Tool has been tested to work with following distros:

  • CentOS 8 (note LVM file level restore issue from below)
  • Debian 10
  • Ubuntu 18.04

Installation works but not tested frequently:

  • CentOS 7
  • Debian 8
  • Debian 9
  • Ubuntu 16.04

In order to use file level restore from delta backups, the service needs to be ran as root. CentOS installation is currently not able to do file level restore if the backed up disk contains LVM or only sees some of the partitions.

CentOS setup is confirmed to work with fresh minimal installation and SELinux enabled. Although script doesn't do any SELinux checks or modifications, so you need to take care of possible changes by yourself according to your system.

Tool makes all necessary changes required for Xen-Orchestra to run (including packages, user creation, permissions). Please evaluate script if needed. I take no responsibility of possible damage caused by this tool.

Below is a list of packages that will be installed if missing.

CentOS:
- curl
- epel-release
- nodejs (v12)
- npm (v3)
- yarn
- gcc
- gcc+
- make
- openssl-devel
- redis
- libpng-devel
- python
- git
- nfs-utils
- libvhdi-tools
- cifs-utils
- lvm2

Debian/Ubuntu:
- apt-transport-https
- ca-certificates
- libcap2-bin
- curl
- yarn
- nodejs (v12) (possible debian 10 default nodejs v10 will be replaced)
- npm (v3)
- build-essential
- redis-server
- libpng-dev
- git
- python-minimal
- libvhdi-utils
- lvm2
- nfs-common
- cifs-utils
- gnupg (debian 10)

xenorchestrainstallerupdater's People

Contributors

ronivay avatar tymcauley avatar oscartbeaumont avatar tssva avatar mlatorre31 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.