I’ve seen a few posts on this topic but the steps listed within weren’t helpful. Is there a detailed document on how to setup the UI on a separate server? I’m familiar with this one but it is too high level.
My experience thus far is I deploy the opennebula package to my front-end and then deploy opennenbula-fireedge and opennebula-guacd to a separate server. The relevant configurations I change are as follows:
On the FrontEnd Server:
/etc/one/oned.conf
PORT = 2633
LISTEN_ADDRESS = "0.0.0.0"
onezone show 0
ZONE 0 INFORMATION
ID : 0
NAME : OpenNebula
STATE : ENABLED
ZONE TEMPLATE
ENDPOINT="http://localhost:2633/RPC2"
ENDPOINT_GRPC="localhost:2634"
On the UI Server:
/etc/one/fireedge-server.conf
# FireEdge server IP
host: '0.0.0.0'
# FireEdge server port
port: '2616'
# OpenNebula: use it if you have oned and fireedge on different servers
one_xmlrpc: 'http://front-end.my.com:2633/RPC2'
# Guacamole daemon
guacd:
port: 4822
host: 'localhost'
# Local zone in a Federation setup
# This attribute must point to the Zone ID of the local OpenNebula to which this FireEdge belongs to.
default_zone:
id: 0
name: 'OpenNebula'
endpoint: 'http://front-end.my.com:2633/RPC2'
I previously tried also updating the zone on the front-end to use an IP address rather than localhost.
In all of these cases, requests to the UI server at http://ui.my.com:2616 hang with no response. I’ve dialed up the debuggin in the fireedge config file to 5 and don’t get any useful messages. No idea why this isn’t working, I can only imagine I’m missing something.
The machines are in the same subnet (no firewall) and do not have IPTable rules or UFW set up. I’m running Ubuntu Linux 24.04.
I’ve tried replacing the DNS FQDNS with IPs in all of the relevant places to no avail.
I’m missing something, but I don’t know what. Any ideas? Thanks!
Additional Details:
I’m running OpenNebula version 7.2
I do see an error occasionally pop up in the UI Fireedge server log, but it’s incomplete so I’m unsure what the issue is:
Error: No forecast configuration files found
at getForecastConfig (/usr/lib/one/fireedge/dist/index.js:1:133560)
at /usr/lib/one/fireedge/dist/index.js:1:125220
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
Is there something I need to copy over from the front-end server? I did have to copy over the sunstone_auth file already.