37 Commits

Author SHA1 Message Date
Dan Pollak
b8382da30d Update yarn install (#106) 2022-06-06 10:33:23 -05:00
Dustin B
b1272516b9 Update README.md
Sorting out credentials issue with prepackaged installation.
2022-02-28 10:35:38 -05:00
Dustin B
91869f1d73 Merge pull request #98 from Jarli01/Danp2-patch-1
Remove existing service file, approved
2021-07-02 11:44:10 -04:00
Dan Pollak
0cebde394a Remove existing service file 2021-07-02 08:39:54 -05:00
Dustin B
efb9114bcc Update xoce-import.sh 2021-06-16 06:19:10 -04:00
Dustin B
99a4ee7590 Update README.md 2021-06-16 06:18:47 -04:00
Dan Pollak
4ed35c8fa3 Fix: Update launched module (#94) 2021-05-20 11:01:59 -05:00
Dustin B
722080371c Update README.md
Separate lines for the checksums
2021-01-19 11:06:32 -05:00
Dustin B
1e38e80b20 Update README.md 2021-01-12 09:14:54 -05:00
Dustin B
8779dd628d Update README.md 2021-01-12 09:14:23 -05:00
Dustin B
f61fdcdff3 Update README.md
Added details regarding the XOCE updater to the readme
2021-01-12 09:11:58 -05:00
Dustin B
b7638ef28f Update xoce-import.sh
Chore: translation clarifications
2020-12-21 15:25:56 -05:00
Dustin B
095c7baf3c Merge pull request #91 from Jarli01/dp-python3
Switch to Python3
2020-12-16 21:16:19 -05:00
Dan Pollak
b9815e4271 Revert "Use python-minimal"
This reverts commit bd6fcddf04.
2020-12-15 14:06:26 -06:00
Dan Pollak
bd6fcddf04 Use python-minimal 2020-12-15 13:56:53 -06:00
Dan Pollak
1a19441859 Chore: Switch to Python3 2020-12-14 12:27:46 -06:00
Dustin B
7d07d1ba9f Update README.md
Corrected checksums for the current XOCE prepackaged build.
2020-08-01 11:32:35 -04:00
Dustin B
8e8a3148c6 Update README.md 2020-07-30 08:48:27 -04:00
Dustin B
de67943d03 Update README.md 2020-07-26 14:32:45 -04:00
Dustin B
6f8fd30e78 Update README.md
checksum update for an updated xva
2020-07-26 14:30:36 -04:00
Dustin B
f1d4008d23 Update xoce-import.sh
Updated compressed- directly exported from XCP-ng shouldn't have any extra details 

sha256 checksum c487d63f2eef67fcaf0e9c4e4998d4a3948fdad960cb1af5a70fcb80b07c2551
2020-07-26 14:29:54 -04:00
Dustin B
51e9248f5e Update xoce-import.sh
Compressed XVA
2020-07-26 14:06:51 -04:00
Dustin B
3d1721dd69 Update xoce-import.sh
Updated link, not the smallest XVA, still testing. please confirm
2020-07-26 13:29:51 -04:00
Dustin B
3a635498fc Update README.md
Fixed link for Import
2020-07-25 09:50:13 -04:00
Dustin B
93e0f96829 Update README.md 2020-07-25 07:10:21 -04:00
Dustin B
b720be1b1d Update xoce-import.sh 2020-07-24 13:56:48 -04:00
Dustin B
31967f4d17 Update README.md 2020-07-24 13:56:32 -04:00
Dustin B
a8713722d4 Update README.md 2020-07-24 13:20:08 -04:00
Dustin B
957c441f4d Update README.md 2020-07-24 13:19:44 -04:00
Dustin B
f3ef162d1f Update README.md 2020-07-24 13:17:52 -04:00
Dustin B
574cb48d9b Update README.md
Capitalization corrections
2020-07-24 13:11:57 -04:00
Dustin B
c16ee4617c Merge pull request #80 from Jarli01/IPO
Installation process operations
2020-07-24 12:33:22 -04:00
Dustin B
aee34338cd Merge pull request #82 from Jarli01/prepackaged-install
Update README.md
2020-07-24 12:31:39 -04:00
Dustin B
8123839694 Rename xoce to xoce-import.sh 2020-07-22 18:13:52 -04:00
Dustin B
e4efbc06c0 Update README.md 2020-07-22 09:19:19 -04:00
Dustin B
831a11ce8a Update README.md 2020-07-22 09:13:39 -04:00
Dustin B
4e8afcf2b7 Installation process operations
Added clarity to the installation steps to draw attention to the order of operations required to install XOCE.
2020-07-22 09:10:59 -04:00
3 changed files with 49 additions and 32 deletions

View File

@@ -1,39 +1,53 @@
# Xen-Orchestra (Community Edition) Installer
Xen-Orchestra (Community Edition) allows you to administer Citrix XenServer and XCP-ng as well as backup any VM's running on these systems.
Xen-Orchestra (Community Edition) allows you to administer Citrix Hypervisor (aka XenServer) and XCP-ng as well as backup any VM's running on these systems. The single line installation script allows you to go from a bare-minimal installation of [Ubuntu](https://ubuntu.com/download/server) or [Debian (Server)](https://www.debian.org/distrib/netinst) to fully operational XOCE server.
The single line installation script allows you to go from a bare-minimal installation of [Ubuntu](https://ubuntu.com/download/server) or [Debian (Server)](https://www.debian.org/distrib/netinst) to fully operational XOCE server. Run the following steps from a root shell.
## System Minimum Requirements for installation
* 1 vCPU
* 3 GiB RAM
* 10 GiB disk space
## System recommendations for operation
* 2 vCPU recommended
* 3 GiB of RAM (for environments containing 500+ VMs increase the amount RAM)
* 20 GiB disk space (for system updates)
## Assumptions
* We assume you have a Virtual or physical server running a currently supported Ubuntu or Debian server installation with internet connectivity
* You've read this community and understand what installation entails and does on your soon to be XOCE server
## Installation
Run the following steps from a root shell on your **Ubuntu or Debian** host.
curl https://raw.githubusercontent.com/Jarli01/xenorchestra_installer/master/xo_install.sh | sudo bash
<password>
The default username and password are applied, admin@admin.net and admin for the password
If you don't want NFS capabilities run ```sudo apt-get remove nfs-common```.
* Do not use LAMP
* SSH Access is optional, but highly recommended
# Declaration
## Updates
To maintain your installation from Source or from this repo. (either prepackaged or scripted installation) we recommend using the update script which this community maintains. This can be [found here](https://github.com/Jarli01/xenorchestra_updater) and doesn't require you to download or install a separate package to your XOCE installation. Simply run it via shell session of your XOCE host.
# Declarations
This script automates the manual process which can be [found here](https://xen-orchestra.com/docs/from_the_sources.html) as well as removes a few feature restrictions that otherwise would need to be changed manually if following the manual installation process. This script is not officially supported by the Vates team, but is supported by this community.
# Prepacked Installation option
To download and deploy a prepacked Ubuntu 20.04 installation of Xen Orchestra (CE) run the below from an SSH session on your XCP-NG/Citrix Hypervisor (XenServer) host(s)
bash -c "$(curl -s https://raw.githubusercontent.com/Jarli01/xenorchestra_installer/master/xoce)"
SHA256 Checksum "0ae7e283518f9b12b9a3756c58fbf357aea852df062be842adbb45eb1e42dcec"
For verification of SHA256 checksum the XVA file can be downloaded directly and verified/imported.
XVA Direct Download https://srv-file19.gofile.io/download/Kt6nJu/20200722T183158Z%20-%20XOCE.xva
## Prepackaged Installation temporarily disabled while I sort out the credentials issue.
# Self-signed SSL
If you are running this internally and need SSL (recommended) follow the below steps to create a self-signed SSL key and certificate; while browsers will still say the connection is unsecured, this is because the certificate isn't from a public authority and is on your LAN. Alternatively a reverse proxy can be used for public facing installations.
If you are running this internally and need SSL (recommended) follow the below steps to create a self-signed SSL key and certificate; while browsers will still say the connection is unsecured, this is because the certificate isn't from a public authority and is on your LAN. You can add this cert to your systems root authority if it want to to remove the warning. Alternatively a reverse proxy can be used for public facing installations.
## Generate your key and cert
## Generate your key and cert from your XOCE installation
sudo openssl req -x509 -nodes -days 3650 -newkey rsa:4096 -keyout /etc/ssl/private/key.pem -out /etc/ssl/certs/certificate.pem

View File

@@ -5,7 +5,7 @@
# Check for required memory
totalk=$(awk '/^MemTotal:/{print $2}' /proc/meminfo)
if [ "$totalk" -lt "3000000" ]; then echo "XOCE Requires at least 3GB Memory!"; exit 1; fi
if [ "$totalk" -lt "2000000" ]; then echo "XOCE Requires at least 2GB Memory!"; exit 1; fi
distro=$(/usr/bin/lsb_release -is)
if [ "$distro" = "Ubuntu" ]; then /usr/bin/add-apt-repository multiverse; fi
@@ -13,7 +13,7 @@ if [ "$distro" = "Ubuntu" ]; then /usr/bin/add-apt-repository multiverse; fi
xo_branch="master"
xo_server="https://github.com/vatesfr/xen-orchestra"
n_repo="https://raw.githubusercontent.com/tj/n/master/bin/n"
yarn_repo="deb https://dl.yarnpkg.com/debian/ stable main"
yarn_repo="deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/yarnkey.gpg] https://dl.yarnpkg.com/debian stable main"
yarn_gpg="https://dl.yarnpkg.com/debian/pubkey.gpg"
n_location="/usr/local/bin/n"
xo_server_dir="/opt/xen-orchestra"
@@ -27,7 +27,7 @@ xo_service="xo-server.service"
#Install yarn
cd /opt
/usr/bin/curl -sS $yarn_gpg | apt-key add -
/usr/bin/curl -sSL $yarn_gpg | gpg --dearmor | sudo tee /usr/share/keyrings/yarnkey.gpg >/dev/null
echo "$yarn_repo" | tee /etc/apt/sources.list.d/yarn.list
/usr/bin/apt-get update
/usr/bin/apt-get install --yes yarn
@@ -43,7 +43,7 @@ n lts
ln -s /usr/bin/node /usr/local/bin/node
# Install XO dependencies
/usr/bin/apt-get install --yes build-essential redis-server libpng-dev git python2-minimal libvhdi-utils nfs-common lvm2 cifs-utils
/usr/bin/apt-get install --yes build-essential redis-server libpng-dev git python3-minimal libvhdi-utils nfs-common lvm2 cifs-utils
/usr/bin/git clone -b $xo_branch $xo_server
@@ -71,7 +71,9 @@ for source in $(ls -d /opt/xen-orchestra/packages/xo-server-*); do
fi
done
if [[ ! -e $systemd_service_dir/$xo_service ]] ; then
if [[ -e $systemd_service_dir/$xo_service ]] ; then
rm $systemd_service_dir/$xo_service
fi
/bin/cat << EOF >> $systemd_service_dir/$xo_service
# Systemd service for XO-Server.
@@ -82,14 +84,15 @@ After=network-online.target
[Service]
WorkingDirectory=/opt/xen-orchestra/packages/xo-server/
ExecStart=/usr/local/bin/node ./bin/xo-server
ExecStart=/usr/local/bin/node ./dist/cli.mjs
Restart=always
SyslogIdentifier=xo-server
[Install]
WantedBy=multi-user.target
EOF
fi
/bin/systemctl daemon-reload
/bin/systemctl enable $xo_service

View File

@@ -1,6 +1,6 @@
#!/bin/bash
XOCE_URL=https://srv-file19.gofile.io/download/Kt6nJu/20200722T183158Z%20-%20XOCE.xva
XOCE_URL=https://nc.nl.tab.digital/s/WQmCwmH4e9EdTTA/download
# Welcome message
printf "\n\033[1mWelcome to the XOCE auto-deploy script!\033[0m\n\n"
@@ -10,7 +10,7 @@ then
echo
echo 'Sorry, the xe command is required for this auto-deploy.'
echo
echo 'Please, make sure you are on a XenServer host.'
echo 'Please, make sure you are on a XCP-ng/XenServer host.'
echo
exit 1
fi
@@ -18,8 +18,8 @@ fi
# Basic check: are we on a XS host?
if grep -Fxq "XenServer" /etc/issue
then
printf "\nSorry, it seems you are not on a XenServer (XCP-ng) host.\n\n"
printf "\n\033[1mThis script is meant to be deployed on XenServer (or XCP-ng) only.\033[0m\n\n"
printf "\nSorry, it seems you are not on a XCP-ng/XenServer host.\n\n"
printf "\n\033[1mThis script is meant to be deployed on XCP-ng or XenServer only.\033[0m\n\n"
exit 1
fi
@@ -36,7 +36,7 @@ then
read -p "dns? [8.8.8.8] " dns
dns=${dns:-8.8.8.8}
else
printf "\nYour XOCE will be started using DHCP\n\n"
printf "\nYour XOCE installation will be started using DHCP\n\n"
fi
# Downloading and importing the VM
@@ -56,7 +56,7 @@ fi
import=$?
if [ $import -ne 0 ]
then
printf "\n\nAuto deploy failed. Please contact us on xen-orchestra.com live chat for assistance.\nError:\n\n %s\n\n" "$uuid"
printf "\n\nAuto deploy failed. Please contact us on https://github.com/Jarli01/xenorchestra_installer/issues for assistance.\nError:\n\n %s\n\n" "$uuid"
exit 0
fi
@@ -75,7 +75,7 @@ sleep 2
# Waiting for the VM IP from Xen tools for 60 secs
printf "Waiting for your XOCE to be ready…\n"
printf "Waiting for XOCE to be ready…\n"
url=$(xe vm-param-get uuid=$uuid param-name=networks param-key=0/ip 2> /dev/null)
wait=0
limit=60
@@ -95,7 +95,7 @@ done
if [ "$ip" != 'dhcp' ]
then
printf "\n\033[1mYour XOCE is ready on https://%s/\033[0m\n" "$ip"
printf "\n\033[1mYour XOCE is ready at https://%s/\033[0m\n" "$ip"
# clean the xenstore data
xe vm-param-remove param-name=xenstore-data param-key=vm-data/dns param-key=vm-data/ip param-key=vm-data/netmask param-key=vm-data/gateway uuid=$uuid
@@ -105,7 +105,7 @@ elif [ -z "$url" ]
then
printf "\n\033[1mYour XOCE booted but we couldn't fetch its IP address\033[0m\n"
else
printf "\n\033[1mYour XOCE is ready on https://%s/\033[0m\n" "$url"
printf "\n\033[1mYour XOCE is ready at https://%s/\033[0m\n" "$url"
fi
printf "\nDefault UI credentials: admin@admin.net/admin\nDefault console credentials: xoce/xoce\n"
printf "\nVM UUID: %s\n\n" "$uuid"