jitsi-contrib/jitsi-helm

Upgrade of jitsi using helm charts broke

rishu06 opened this issue · 8 comments

Hi
I have upgrade my jitsi helm charts from version 1.2.2 to 1.3.2, I have followed all the changes that are in newer version like clusterdomain setting, websockets and jvb public ip
I see this error in prosody

speakerstats.meet.jitsi:speakerstats_component error No muc_component specified. No muc to operate on!
But jicofo and jvb are able to authenticate

2s55ee61b7faa0 info Authenticated as jvb@auth.meet.jitsi
c2s55ee61ae2ce0 info Client connected
c2s55ee61ae2ce0 info Stream encrypted (TLSv1.3 with TLS_AES_256_GCM_SHA384)
c2s55ee61ae2ce0 info Authenticated as focus@auth.meet.jitsi
I dont see any error in jvb and jicofo logs

I am not able to start meeting
In console it says -
lib-jitsi-meet.min.js?v=6918:2 WebSocket connection to ‘wss://jitsi.xxxxxxxxxxxx’ failed:

<Object.getGlobalOnErrorHandler>: UnhandledError: Strophe: Websocket error [object Event] Script: null Line: null Column: null StackTrace: Error: Strophe: Websocket error [object Event]

I have enabled in websocket in values file

websockets:
## Colibri (JVB signalling):
colibri:
enabled: false
## XMPP (Prosody signalling):
xmpp:
enabled: true
Am i missing something or doing wrong ?
Thank you

I am running jitsi 8218 version in this issue, but if I change it to 7648-4 for all components, it works

Hello @rishu06!

Can you please describe your setup? Do you use HTTPS? Do you use any kind of Ingress controller, or maybe you just expose jitsi/web service via NodePort?

Using WebSockets nowadays requires properly-setup HTTPS. So if you don't have an HTTPS setup, it might be better to try installing this chart with both WebSocket options disabled, like this:

websockets:
  colibri:
    enabled: false
  xmpp:
    enabled: false

Other possible culprit might be your proxy, Ingress controller or some external proxy service — some of them don't work with WebSockets.

Hi @spijet
yes we use gke nginx-ingress-controller and use https.

I wrote a micro-guide on how to check if the websockets actually work in your Jitsi Meet installation in #64 (reply in thread). You can try checking if this shows any WSS activity in your case.
Also, please check if it works for you with WS support disabled — I found it working quite well in some setups.

Hi @spijet
Screenshot 2023-04-13 at 11 07 04 AM
this is how response looks like for websocket

Prosody logs
`meet.jitsi:http info Serving 'bosh' at http://meet.jitsi:5280/http-bind

meet.jitsi:http info Serving 'websocket' at http://meet.jitsi:5280/xmpp-websocket`

Hmm, I don't see any response code here (the window is too narrow, probably), which may mean that the client (app or browser) didn't receive any response at all. It should return an HTTP 101 Switching Protocols response and then switch to WebSocket mode. See screenshots below:
image
image

Hi
It works now.
Issue was this: clusterDomain: ""
Now I tried with
clusterDomain: cluster.local

Good to know you've figured it out! clusterDomain: cluster.local is actually the global default in this chart, so probably something has overridden it in the process in your case.

Since it works now, I'll close the issue. Feel free to re-open or open a new one if need arises. :)