Opennebula 6.0.0.2 and VMRC

Hello everyone,

I’m having issue using VMRC within opennebula sunstone.

The following error : VMRC Disconnected

Did I miss something in the installation process ?

Regards.

Hi

Also not working with vnc : tunnel_error message.

Regards.

Hi @Yacine_FETOUH ,

Also not working with vnc : tunnel_error message.

Is this error by noVNC?

I’m having issue using VMRC within opennebula sunstone.
The following error : VMRC Disconnected

To use VMRC, you need to have FireEdge endpoint configured in sunstone-server.conf

In any case, you could check Sunstone and FireEdge logs for more information

Best,
Sergio

Hi,

Thank you for your response.

I’m not (currently) going to use fire edge so I tried to setup noVNC over SSL.

I’m using HAproxy to provide ssl certificates, there is my configuration file :

frontend www-https
bind x.x.x.x:443 ssl crt-list /var/etc/haproxy/www-https.crt_list
mode http
log global
option http-keep-alive
option forwardfor
acl https ssl_fc
http-request set-header X-Forwarded-Proto http if !https
http-request set-header X-Forwarded-Proto https if https
timeout client 30000
acl host_ws hdr_beg(Host) ws.
acl host_ws hdr(Upgrade) -i websocket
acl aclcrt_www-https var(txn.txnhost) -m reg -i ^example.fr.fr(:([0-9]){1,5})?$
http-request set-var(txn.txnhost) hdr(host)
use_backend websocket_ipvANY if host_ws aclcrt_www-https
use_backend websocket_ipvANY if host_ws aclcrt_www-https
use_backend www-backend_ipvANY if aclcrt_www-https

There are my backends:

backend www-backend_ipvANY
mode http
id 100
log global
timeout connect 30000
timeout server 30000
retries 3
redirect scheme https if !{ ssl_fc }
server www-backend 192.168.1.4:9869 id 101

backend websocket_ipvANY
mode http
id 102
log global
timeout connect 30000
timeout server 30000
retries 3
server websocket 192.168.1.4:29876 id 103

On my firewall : 443 and 29876 are allowed.

There is my novnc configuration :

:vnc_proxy_port: 29876
:vnc_proxy_support_wss: only
:vnc_proxy_cert: /etc/one/certs/example.fr/fullchain.cer
:vnc_proxy_key: /etc/one/certs/example.fr/cloud-skills.fr.key
:vnc_proxy_ipv6: false
:vnc_request_password: false
:allow_vnc_federation: no

On firefox, I got the following error :

firefox can’t establish a connection to the server wss://example.fr:29876/?port=29876&encrypt=yes&password=null&token=b88bjc0a049zxbvqkd00&info=eyJpZCI6IjIiLCJuYW1lIjoidm0wMiIsInN0YXRlIjoiUlVOTklORyIsInN0YXJ0X3RpbWUiOiIxNjI0NTQyODcwIiwibmV0d29ya3MiOlsiMTkyLjE2OC4xLjEwIl19.

thanks !

Well I think that I get it.

I’ve turned on fireedge and added a haproxy acl to handle wss for fireedge endpoint. Both VMRC and VNC are working now.

Thank your for the documentation :slight_smile:

2 Likes

Nice to hear that!

Hi there, Hope u doing well !

I’ve a small issue which I cannot determine the origin. On a regular basis, VMRC goes into disconnected state and I got the following logs :

in /var/log/one/fireedge.error :

events.js:291
throw er; // Unhandled ‘error’ event
^

Error: read ECONNRESET
at TCP.onStreamRead (internal/stream_base_commons.js:209:20)
Emitted ‘error’ event on Socket instance at:
at emitErrorNT (internal/streams/destroy.js:92:8)
at emitErrorAndCloseNT (internal/streams/destroy.js:60:3)
at processTicksAndRejections (internal/process/task_queues.js:84:21) {
errno: ‘ECONNRESET’,
code: ‘ECONNRESET’,
syscall: ‘read’
}

And in /var/log/one/fireedge.log

192.168.1.1 - - [02/Jul/2021:13:58:57 +0000] “OPTIONS / HTTP/1.0” 204 0 “-” “-”
192.168.1.1 - - [02/Jul/2021:13:58:58 +0000] “OPTIONS / HTTP/1.0” 204 0 “-” “-”
192.168.1.1 - - [02/Jul/2021:13:58:59 +0000] “OPTIONS / HTTP/1.0” 204 0 “-” “-”
[HPM] Router new target: http://localhost:2616 → “https://x.x.x.x:443
[HPM] GET /fireedge/vmrc/af93b57e4c2bf9ad?info=eyJpZCI6IjQwNSIsIm5hbWUiOiJPUEdDUDAyIiwic3RhdGUiOiJSVU5OSU5HIiwic3RhcnRfdGltZSI6IjE2MjUyMjkzNzciLCJuZXR3b3JrcyI6WyIxOTIuMTY4LjEuMTkiXX0= ≈> https://x.x.x.x:443
[HPM] Upgrading to WebSocket
tail: /var/log/one/fireedge.log : fichier tronqué
[HPM] Proxy created: /fireedge/vmrc → http://localhost:2616
[HPM] Subscribed to http-proxy events: [ ‘error’, ‘close’ ]
Server listen in 192.168.1.4:2616

PS1: x.x.x.x is my public IP.
PS2 : service opennebula-fireedge goes down
PS3: when I have a vmrc session and I clic on the refresh tab of my browser it goes disconnected and fireedge service goes down also → opennebula-fireedge.service: main process exited, code=exited, status=1/FAILURE

Thank you :slight_smile:

Also , i noticed that vnc icone dissaper in cloud view. So no alternative to use vmrc.

Regards

I am running vOneCLoud with OpenNebula v6.0.0.1 and I too cannot seem to select VMRC in the Cloud layout, I think its defaulted to VNC and there are no other options. The Admin View is fine and VMRC is shown as a selection. Is there anyway to allow VMRC in the Cloud Layout?

Hi both,

This issue is already solved in version 6.0.0.2

Hi,

I’m using 6.0.0.2 version.

2 issues :

1 - fireedge.service goes down if user clic on the refresh button on his web browser.

2 - vnc not available in cloud view.

Regards .

Apologies, the fix is indeed not included in 6.0.0.2. It will be included in the next CE maintenance release. Meanwhile you can apply the fix manually from this commit

I can confirm that VMRC works on v6.0.0.2. Thanks heaps.

What did you do to make it work?
We have set up everything correctly,and able to connect directly to port 2616 to FireEdge GUI, however when we try to login to admin console of Opennebula, we’re getting pink error in low right corner:
“FireEdge public endpoint is not working, please contact your cloud administrator”. My config in sunstone-server.conf last 2 lines are:
:private_fireedge_endpoint: http://localhost:2616
:public_fireedge_endpoint: http://my.public.ip.com:2616

Public name is resolvable, all services live on the same machine. Running CentOS 7 and OpenNebula 6.0.2. Firewall is disabled while testing, selinux too.

Anybody have any ideas what can be wrong?

Hello everyone, I have a problem with VMRC and VNC not working. VMRC is immediately disconnected, and VNC is trying to connect. Tell me what i need to pay attention to and how to properly set up the service?