My working setup is broken after upgrading from stable-7648-4 to stable-7830. I am not seeing any error in jvb, jicofo, prosody services except I see an error on my web service that’s complaining about not able to reach prosody service.
This is my configuration inside web-deployment.yaml file and is unable to reach shard-0-prosody somehow after upgrade.
:@mehtapaxshal thx a lot for sharing
I tried to stick to your config as close as possible, but to no avail.
I still get (from log in web component)
my server ip - - [15/Oct/2022:12:57:45 +0200] “GET /pwa-worker.js HTTP/1.1” 200 1511 “https://jitsi.my domain/pwa-worker.js” “Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36 Edg/106.0.1370.42”
2022/10/15 12:58:14 [error] 261#261: *2 jitsi-meet-prosody could not be resolved (110: Operation timed out), client: 10.42.0.1, server: _, request: “GET /xmpp-websocket?room=foldingoppositesequiptoo HTTP/1.1”, host: “jitsi.my domain”
where jitsi-meet-prosody is the name of my prosody pod which can be resolved from the web pod
Nothing worthwile in the other logs.
I found that my config works as long as the web pod uses the container jitsi/web:stable-7648-4. The others (prosody, jigasi and jvb) are on stable-7882. Once I switch to jitsi/web:stable-7830 or jitsi/web:stable-7882 the setup ceases to work with “You have been disconnected” and the above error is logged.
@saghul Do you have any ideas where to look and what to check?
I am not able to ping or telnet (cmds are missing inside the container) the prosody pod, but for both web container versions, I am able to wget http://jitsi-meet-prosody:5280 and get back the index.html from prosody. So, name resolution works in general.
I have started to do tcpdumps for both web container versions and found out using wireshark that with web:stable-7882 the error is occuring inside “GET /xmpp-websocket?room=…”
The name jitsi-meet-prosody cannot be resolved and DNS requests are sent to the outside which fails as this name is a cluster-internal one.
This name is used in the env variable XMPP_BOSH_URL_BASE which is set to “http://jitsi-meet-prosody:5280” in my setup (and my setup does not work without it, checked that).
So drilling further I noted this change in meet.conf of the web container: web: fix setting prefix for subdomains. In there the proxy_pass command of nginx has been altered (the ?prefix … has been added)
By changing the meet.conf in the running web container removing the “?prefix …” and restarting nginx I was able to verify that this causes the above behavior. Without “?prefix …” it works.
Unluckily I found no way to log what the proxy_pass command generates as a resulting URL. The name in the DNS request going to the outside seems to be ok (jitsi-meet-prosody)
So, hope this gives you @saghul an idea and enough infos for if and how this can be fixed. Thx in advance for your help
Resolution is to set the NGINX_RESOLVER variable like LeBaton (@LeBaton Thx again!) hinted above
AND
to use the FDQN for prosody inside XMPP_BOSH_URL_BASE.
So, in my case jitsi-meet-prosody (the shortened name) does not work, with the FDQN jitsi-meet-prosody.default.svc.cluster.local it works with stable-7882.
Cudos to this issue
which gave me the final hint.
@saghul Perhaps you may have a look especially at the comment of devium in this issue thread which explains how the behavior of proxy_pass function changes once a variable is added to the URL. Possibly, this also affects Jitsi for Docker somehow. Above my paygrade of understanding if this is the case, so just to make sure