ronivay / XenOrchestraInstallerUpdater

Xen Orchestra install/update script
GNU General Public License v3.0
1.14k stars 189 forks source link

installation fails on "waiting for port to be open" #191

Closed Solarbotics closed 11 months ago

Solarbotics commented 11 months ago

OS: Debian 12 Bookworm Node.js version: v18.17.0 Yarn version: 1.22.19

Server specs 8 VCPUs, 4GB memory

Issue Running the script as found and linked to from here. Seems to operate properly until it gets to the stage: "waiting for port to be open"

I've since added iptables parameters to allow both 80 and 443, and reran the installation to no avail: iptables -A INPUT -p tcp --dport 443 -j ACCEPT

Error log reports it to be a problem with SOAP.

Thanks for having a link to a prebuilt Debian 11 build; that gets me on the way, but thought I should report the glitch I'm seeing here.

Installation logfile

xo-install.log-202307191123.log

zware commented 11 months ago

I just ran into the same thing, and it appears to be an XO issue rather than a problem with this script. In particular, it seems that vatesfr/xen-orchestra@f0c94496b really is a breaking change :)

I was able to roll back to vatesfr/xen-orchestra@0e1207292 using xo-install.sh --rollback to keep running.

kevnich2 commented 11 months ago

Running into same error. I just reverted to a previous snapshot from before the update and will try again once this error has been resolved.

ronivay commented 11 months ago

As was already mentioned. Due to a change in XO repo. Not really an issue in the script. Correct to report here though.

I guess this might've fixed it. Anyone tried yet? https://github.com/vatesfr/xen-orchestra/commit/363d7cf0d0bcc0dc65d56cbf976f9678b5c5eedb

zware commented 11 months ago

Can confirm that vatesfr/xen-orchestra@1c23bd5ff is working fine (or at least started up :) )

ronivay commented 11 months ago

Can confirm that vatesfr/xen-orchestra@1c23bd5ff is working fine (or at least started up :) )

Cheers. Considering this fixed :) feel free to comment back if any others still have issues and i'll reopen.

goofy7264 commented 10 months ago

I know it's a month later and I'm happy to open a new issue, but I am running into the same "waiting for port to open" issue.
What is the best approach to provide the details you need to trouble shoot. Here is my install log `+ command -v git /usr/bin/git

PORT="80" INSTALLDIR="/opt/xo" SELFUPGRADE=true CONFIGUPDATE=true REPOSITORY="https://github.com/vatesfr/xen-orchestra" BRANCH="master" PLUGINS="all" AUTOUPDATE="true" OS_CHECK="true" ARCH_CHECK="true" PRESERVE="3"

Creating config file /etc/idmapd.conf with new version

Creating config file /etc/nfs.conf with new version Adding system user statd' (UID 116) ... Adding new userstatd' (UID 116) with group nogroup' ... Not creating home directory/var/lib/nfs'. Created symlink /etc/systemd/system/multi-user.target.wants/nfs-client.target → /lib/systemd/system/nfs-client.target. Created symlink /etc/systemd/system/remote-fs.target.wants/nfs-client.target → /lib/systemd/system/nfs-client.target. auth-rpcgss-module.service is a disabled or a static unit, not starting it. nfs-idmapd.service is a disabled or a static unit, not starting it. nfs-utils.service is a disabled or a static unit, not starting it. proc-fs-nfsd.mount is a disabled or a static unit, not starting it. rpc-gssd.service is a disabled or a static unit, not starting it. rpc-statd-notify.service is a disabled or a static unit, not starting it. rpc-statd.service is a disabled or a static unit, not starting it. rpc-svcgssd.service is a disabled or a static unit, not starting it. rpc_pipefs.target is a disabled or a static unit, not starting it. var-lib-nfs-rpc_pipefs.mount is a disabled or a static unit, not starting it. Processing triggers for man-db (2.10.2-1) ... Processing triggers for libc-bin (2.35-0ubuntu3.1) ...

Done in 174.36s.

Installation failed xo-server service log:

swtrse commented 9 months ago

I did run into the same error, so it seams to be back. Running the install script on Debian 12 and RockyLinux 9 On both system I used a user with sudo rights to run the script with `sudo ./xo-install.sh'. The config I used in both OSes is

# Optional user that runs the service
# default: root
# no effect to Xen Orchestra proxy
XOUSER="xoa"

# Optional parameter if running as non privileged user to use sudo when mounting/umounting shares inside Xen Orchest>
# no effect if XOUSER is root
# options true/false
# no effect to Xen Orchestra proxy
USESUDO=true

# Optional parameter to generate sudoers config when missing completely if USESUDO is set to true
# no effect if XOUSER is root
# options true/false
# no effect to Xen Orchestra proxy
GENSUDO=true

# Port number where xen-orchestra service is bound
# no effect to Xen Orchestra proxy
PORT="443"

# Base dir for installation and future updates
INSTALLDIR="/opt/xo"

# Script will update itself if there's a newer version available. This assumes that script inside a git directory an>
# options: true/false
SELFUPGRADE=true

# Xen Orchestra configuration file is stored in XOUSER's home directory ($HOME/.config/xo-server/config.toml) and by>
# You may disable this if you edit configuration by hand and don't want an update to overwrite it. Note that some of>
# options: true/false
# no effect to Xen Orchestra proxy
CONFIGUPDATE=true

# Location of Xen Orchestra repository where source code is fetched
REPOSITORY="https://github.com/vatesfr/xen-orchestra"

# Git branch, tag (append tags/ before the tag name) or individual commit where xen-orchestra sources are fetched.
BRANCH="master"

# Installation log path
# default: ./logs
#LOGPATH=

# Only one PLUGINS variable can be used at a time. Comment out the other one if you change these below. Comment out >

# Comma separated list of plugins to be installed, check README for more information. Note that 3rd party plugins de>
#PLUGINS="xo-server-transport-email,xo-server-usage-report,xo-server-perf-alert"

# (default) all plugins will be installed, including possible 3rd-party plugins if defined.
PLUGINS="all"

# Additional 3rd-party plugins to fetch. Keep the .git suffix.
#ADDITIONAL_PLUGINS="https://github.com/user/repo.git,https://github.com/user/repo2.git"

# NodeJS and Yarn are automatically updated when running update/install. Can be disabled but not recommended (instal>
# Note that if nodejs is updated when script's update feature is used, it might not be possible to use rollback opti>
# options: true/false
AUTOUPDATE=true

# yarn cache can consume a lot of disk space over time. Setting this to true will clear cache after update.
# this can have a negative impact on how long update will take with slower internet connections
# options: true/false
#YARN_CACHE_CLEANUP="false"

# enable/disable OS check. Installation refuses to run on any other than supported OS versions if this is enabled. C>
# options: true/false
OS_CHECK=true

# enable/disable architecture check. Installation refuses to run on any other than x86_64 if enabled. Can be disable>
# options: true/false
ARCH_CHECK=true

# Define the number of previous successful installations you want to keep. Needs to be at least 1. Determines how fa>
PRESERVE="3"

# certificate settings have no effect to Xen Orchestra proxy, it'll generate it's own self-signed certificates always

# Location of pem certificate/key files. Installation will automatically configure HTTPS if these are defined. Remem>
PATH_TO_HTTPS_CERT=$INSTALLDIR/xo.crt
PATH_TO_HTTPS_KEY=$INSTALLDIR/xo.key

# location of CA certificate file.
# define this if your host certificate is issued by a custom CA and you want XO to trust it.
# file can contain multiple certificates
#PATH_TO_HOST_CA=

# If set to true together with cert/key paths, defined pem key/certificate will be created if neither exists.
# options: true/false
AUTOCERT=true

# Enable automatic ACME (eq. Let's Encrypt) certificate creation.
# Setting this to true will configure HTTP and HTTPS listeners to ports 80/443 (overwrites PORT variable),
# enables autocert, sets certificate paths if missing and adds http to https redirect.
#ACME="false"

# ACME domain for which the certificate is generated.
# Domain needs to be pointed towards XO server public ip-address and ports 80 and 443 allowed.
#ACME_DOMAIN=""

# Optional email address to receive notifications related to certificate
#ACME_EMAIL=""

# Optional ACME CA to use. Will default to Let's Encrypt
# Available ones listed here: https://www.npmjs.com/package/acme-client#directory-urls
#ACME_CA="letsencrypt/production"

# If set to true, this will install the rpm/deb repositories necessary for the Xen Orchestra install.
# If set to false, these repositories will not be installed. Also automatic nodejs upgrade will be disabled.
# Note that installation will fail if all needed packages aren't available from configured repositories. See README >
# options: true/false
# default: true
#INSTALL_REPOS="true"

# Send xo-server logs to remote syslog
# syntax is: <protocol>://<target-address>:<port>
# supported protocols are udp and tcp
# example: tcp://syslog.company.lan:514
#SYSLOG_TARGET=""
ronivay commented 9 months ago

This is a very generic error and there can be multiple reasons for it. Original issue here shouldn't be related at all. Please open up a new issue with logs attached for further investigation.