OpenVidu CE remote video not showing (KMS IceComponentStateChange fails)

Hi,

I’ve currently deployed an OpenVidu CE instance on premise through GCP compute engine VM and am running into an issue with establishing remote connections. In particular, every-time someone else joins a room I’m in, I cannot see their video, and they cannot see mine (https://ov.meetcha.org). Testing my connection on /dashboard also fails with the error below:


Looking at similar situations/issues, the problem seems to be network config related. I’m hosting my OV instance on https and have opened the ports specified here on my VM and under GCP VPC/firewall network as shown below:


I also tried adding a firewall rule to allow all Ingress traffic for all ports for all ips, but that didn’t seem to work either.

If anyone can offer some advice/help I’d greatly appreciate it, thanks.

Ports looks ok to me.

  1. Please check that your openvidu is valid for this regex: ^[a-zA-Z0-9_-]+$ It is a known issue that deployment breaks with weird characters.
  2. If this does not fix your problem, please can you show your redis, coturn, and nginx logs? Also if you show your .env, that would be helpful.

Regards,
Carlos

Sorry, what do you mean by testing my OV with that regex?

I’ve attached the following logs below:

Coturn:

Redis:

Nginx:

root@instance-1:/opt/openvidu# docker-compose logs -f nginx
Attaching to openvidu_nginx_1
nginx_1 |
nginx_1 | =======================================
nginx_1 | = INPUT VARIABLES =
nginx_1 | =======================================
nginx_1 |
nginx_1 | Config NGINX:
nginx_1 | - Http Port: 80
nginx_1 | - Https Port: 443
nginx_1 | - Allowed Access in Openvidu Dashboard: all
nginx_1 | - Allowed Access in Openvidu API: all
nginx_1 |
nginx_1 | Config Openvidu Application:
nginx_1 | - Domain name: ov.meetcha.org
nginx_1 | - Certificated: letsencrypt
nginx_1 | - Letsencrypt Email: xxxxxxxxxxxxx@gmail.com
nginx_1 | - Openvidu Application: true
nginx_1 | - Openvidu Application Type: CE
nginx_1 |
nginx_1 | =======================================
nginx_1 | = CONFIGURATION NGINX =
nginx_1 | =======================================
nginx_1 |
nginx_1 | Configure ov.meetcha.org domain…
nginx_1 | - New configuration: letsencrypt
nginx_1 | - Old configuration: letsencrypt
nginx_1 | - LetsEncrypt certificate already exists, using them…
nginx_1 |
nginx_1 | =======================================
nginx_1 | = ALLOWED ACCESS =
nginx_1 | =======================================
nginx_1 |
nginx_1 | Adding rules…
nginx_1 |
nginx_1 | Finish Rules:
nginx_1 | Openvidu Dashboard:
nginx_1 | - allow all;
nginx_1 | Openvidu API:
nginx_1 | - allow all;
nginx_1 |
nginx_1 | =======================================
nginx_1 | = START OPENVIDU PROXY =
nginx_1 | =======================================
nginx_1 |
nginx_1 | 2020/11/11 03:20:37 [notice] 59#59: signal process started
nginx_1 | ==> /var/log/nginx/access.log <==
nginx_1 | 2020/11/11 03:20:37 [warn] 61#61: no resolver defined to resolve ocsp.int-x3.letsencrypt.org w
hile requesting certificate status, responder: ocsp.int-x3.letsencrypt.org, certificate: “/etc/letsencrypt/live/ov.
meetcha.org/fullchain.pem
nginx_1 | 2020/11/11 03:20:37 [error] 61#61: *1 connect() failed (111: Connection refused) while connect
ing to upstream, client: 99.240.140.67, server: ov.meetcha.org, request: “GET /openvidu HTTP/1.1”, upstream: “http:
//127.0.0.1:5443/openvidu”, host: “ov.meetcha.org
nginx_1 | 2020/11/11 03:20:41 [error] 61#61: *4 connect() failed (111: Connection refused) while connect
ing to upstream, client: 99.240.140.67, server: ov.meetcha.org, request: “GET /openvidu HTTP/1.1”, upstream: “http:
//127.0.0.1:5443/openvidu”, host: “ov.meetcha.org
nginx_1 | 2020/11/11 03:20:45 [error] 61#61: *6 connect() failed (111: Connection refused) while connect
ing to upstream, client: 99.240.140.67, server: ov.meetcha.org, request: “GET /openvidu HTTP/1.1”, upstream: “http:
//127.0.0.1:5443/openvidu”, host: “ov.meetcha.org
nginx_1 | 2020/11/11 03:21:09 [warn] 61#61: *14 an upstream response is buffered to a temporary file /va
r/cache/nginx/proxy_temp/1/00/0000000001 while reading upstream, client: 99.240.140.67, server: ov.meetcha.org, req
uest: “GET /dashboard/main.c981b8db3f94ca16f40a.js HTTP/1.1”, upstream: “http://127.0.0.1:5443/dashboard/main.c981b
8db3f94ca16f40a.js”, host: “ov.meetcha.org”, referrer: “https://ov.meetcha.org/dashboard/
nginx_1 | 2020/11/11 03:36:19 [warn] 61#61: *34 an upstream response is buffered to a temporary file /va
r/cache/nginx/proxy_temp/2/00/0000000002 while reading upstream, client: 99.240.140.67, server: ov.meetcha.org, req
uest: “GET /dashboard/main.c981b8db3f94ca16f40a.js HTTP/1.1”, upstream: “http://127.0.0.1:5443/dashboard/main.c981b
8db3f94ca16f40a.js”, host: “ov.meetcha.org”, referrer: “https://ov.meetcha.org/dashboard/
nginx_1 | 2020/11/11 03:38:32 [warn] 60#60: *48 an upstream response is buffered to a temporary file /va
r/cache/nginx/proxy_temp/3/00/0000000003 while reading upstream, client: 99.240.140.67, server: ov.meetcha.org, req
uest: “GET /dashboard/main.c981b8db3f94ca16f40a.js HTTP/1.1”, upstream: “http://127.0.0.1:5443/dashboard/main.c981b
8db3f94ca16f40a.js”, host: “ov.meetcha.org”, referrer: “https://ov.meetcha.org/dashboard/
nginx_1 | 2020/11/11 03:50:19 [warn] 61#61: *127 an upstream response is buffered to a temporary file /v
ar/cache/nginx/proxy_temp/4/00/0000000004 while reading upstream, client: 173.252.83.118, server: ov.meetcha.org, r
equest: “GET /main.059bc9d7fcc0db699d41.js HTTP/1.1”, upstream: "http://127.0.0.1:5442/main.059bc9d7fcc0db699d41.js
", host: “ov.meetcha.org
nginx_1 | 2020/11/11 03:50:19 [warn] 61#61: *126 an upstream response is buffered to a temporary file /v
ar/cache/nginx/proxy_temp/5/00/0000000005 while reading upstream, client: 173.252.83.3, server: ov.meetcha.org, req
uest: “GET /polyfills-es5.22cc424fa5ec4bb14309.js HTTP/1.1”, upstream: “http://127.0.0.1:5442/polyfills-es5.22cc424
fa5ec4bb14309.js”, host: “ov.meetcha.org
nginx_1 | 2020/11/11 04:22:12 [warn] 61#61: no resolver defined to resolve ocsp.int-x3.letsencrypt.org w
hile requesting certificate status, responder: ocsp.int-x3.letsencrypt.org, certificate: “/etc/letsencrypt/live/ov.
meetcha.org/fullchain.pem
nginx_1 | 2020/11/11 05:38:11 [warn] 61#61: no resolver defined to resolve ocsp.int-x3.letsencrypt.org w
hile requesting certificate status, responder: ocsp.int-x3.letsencrypt.org, certificate: “/etc/letsencrypt/live/ov.
meetcha.org/fullchain.pem
nginx_1 | 2020/11/11 06:59:00 [warn] 61#61: no resolver defined to resolve ocsp.int-x3.letsencrypt.org w
hile requesting certificate status, responder: ocsp.int-x3.letsencrypt.org, certificate: “/etc/letsencrypt/live/ov.
meetcha.org/fullchain.pem
nginx_1 | 2020/11/11 08:19:46 [warn] 61#61: no resolver defined to resolve ocsp.int-x3.letsencrypt.org w
hile requesting certificate status, responder: ocsp.int-x3.letsencrypt.org, certificate: “/etc/letsencrypt/live/ov.
meetcha.org/fullchain.pem
nginx_1 | 2020/11/11 09:34:29 [warn] 61#61: *196 an upstream response is buffered to a temporary file /v
ar/cache/nginx/proxy_temp/6/00/0000000006 while reading upstream, client: 184.154.139.3, server: ov.meetcha.org, re
quest: “GET /styles.2cf7afcf0a3d24af8cf7.css HTTP/1.1”, upstream: “http://127.0.0.1:5442/styles.2cf7afcf0a3d24af8cf
7.css”, host: “www.meetcha.org”, referrer: “Redirect Notice
nginx_1 | 2020/11/11 09:34:32 [warn] 61#61: *198 an upstream response is buffered to a temporary file /v
ar/cache/nginx/proxy_temp/7/00/0000000007 while reading upstream, client: 184.154.139.3, server: ov.meetcha.org, re
quest: “GET /polyfills-es5.22cc424fa5ec4bb14309.js HTTP/1.1”, upstream: “http://127.0.0.1:5442/polyfills-es5.22cc42
4fa5ec4bb14309.js”, host: “www.meetcha.org
nginx_1 | 2020/11/11 09:44:56 [warn] 61#61: no resolver defined to resolve ocsp.int-x3.letsencrypt.org w
hile requesting certificate status, responder: ocsp.int-x3.letsencrypt.org, certificate: “/etc/letsencrypt/live/ov.
meetcha.org/fullchain.pem
nginx_1 | 2020/11/11 11:00:52 [warn] 61#61: no resolver defined to resolve ocsp.int-x3.letsencrypt.org w
hile requesting certificate status, responder: ocsp.int-x3.letsencrypt.org, certificate: “/etc/letsencrypt/live/ov.
meetcha.org/fullchain.pem
nginx_1 | Saving debug log to /var/log/letsencrypt/letsencrypt.log
nginx_1 | Cert not yet due for renewal
nginx_1 | 2020/11/11 12:21:10 [warn] 61#61: no resolver defined to resolve ocsp.int-x3.letsencrypt.org w
hile requesting certificate status, responder: ocsp.int-x3.letsencrypt.org, certificate: “/etc/letsencrypt/live/ov.
meetcha.org/fullchain.pem
nginx_1 | 2020/11/11 13:26:47 [warn] 61#61: no resolver defined to resolve ocsp.int-x3.letsencrypt.org w
hile requesting certificate status, responder: ocsp.int-x3.letsencrypt.org, certificate: “/etc/letsencrypt/live/ov.
meetcha.org/fullchain.pem
nginx_1 | 2020/11/11 14:45:02 [warn] 61#61: no resolver defined to resolve ocsp.int-x3.letsencrypt.org w
hile requesting certificate status, responder: ocsp.int-x3.letsencrypt.org, certificate: “/etc/letsencrypt/live/ov.
meetcha.org/fullchain.pem
nginx_1 | 2020/11/11 17:17:38 [warn] 61#61: no resolver defined to resolve ocsp.int-x3.letsencrypt.org w
hile requesting certificate status, responder: ocsp.int-x3.letsencrypt.org, certificate: “/etc/letsencrypt/live/ov.
meetcha.org/fullchain.pem
nginx_1 | 2020/11/11 18:24:36 [warn] 61#61: no resolver defined to resolve ocsp.int-x3.letsencrypt.org w
hile requesting certificate status, responder: ocsp.int-x3.letsencrypt.org, certificate: “/etc/letsencrypt/live/ov.
meetcha.org/fullchain.pem
nginx_1 | 2020/11/11 21:13:01 [warn] 61#61: no resolver defined to resolve ocsp.int-x3.letsencrypt.org w
hile requesting certificate status, responder: ocsp.int-x3.letsencrypt.org, certificate: “/etc/letsencrypt/live/ov.
meetcha.org/fullchain.pem
nginx_1 | 2020/11/11 22:20:10 [warn] 61#61: no resolver defined to resolve ocsp.int-x3.letsencrypt.org w
hile requesting certificate status, responder: ocsp.int-x3.letsencrypt.org, certificate: “/etc/letsencrypt/live/ov.
meetcha.org/fullchain.pem
nginx_1 | 2020/11/11 22:21:10 [error] 61#61: *386 upstream timed out (110: Operation timed out) while re
ading response header from upstream, client: 99.240.140.67, server: ov.meetcha.org, request: “POST /call HTTP/1.1”,
upstream: “http://127.0.0.1:5442/call”, host: “ov.meetcha.org”, referrer: “https://ov.meetcha.org/
nginx_1 | 2020/11/11 22:22:10 [error] 61#61: *386 upstream timed out (110: Operation timed out) while re
ading response header from upstream, client: 99.240.140.67, server: ov.meetcha.org, request: “POST /call HTTP/1.1”,
upstream: “http://127.0.0.1:5442/call”, host: “ov.meetcha.org”, referrer: “https://ov.meetcha.org/
nginx_1 | 2020/11/11 22:28:23 [warn] 60#60: *432 an upstream response is buffered to a temporary file /v
ar/cache/nginx/proxy_temp/8/00/0000000008 while reading upstream, client: 99.240.140.67, server: ov.meetcha.org, re
quest: “GET /dashboard/main.c981b8db3f94ca16f40a.js HTTP/1.1”, upstream: “http://127.0.0.1:5443/dashboard/main.c981
b8db3f94ca16f40a.js”, host: “ov.meetcha.org”, referrer: “https://ov.meetcha.org/dashboard/
nginx_1 | 2020/11/11 22:37:45 [warn] 61#61: *449 an upstream response is buffered to a temporary file /v
ar/cache/nginx/proxy_temp/9/00/0000000009 while reading upstream, client: 99.240.140.67, server: ov.meetcha.org, re
quest: “GET /dashboard/main.c981b8db3f94ca16f40a.js HTTP/1.1”, upstream: “http://127.0.0.1:5443/dashboard/main.c981
b8db3f94ca16f40a.js”, host: “ov.meetcha.org”, referrer: “https://ov.meetcha.org/dashboard/
nginx_1 | 2020/11/11 22:39:31 [warn] 60#60: *476 an upstream response is buffered to a temporary file /v
ar/cache/nginx/proxy_temp/0/01/0000000010 while reading upstream, client: 99.240.140.67, server: ov.meetcha.org, re
quest: “GET /dashboard/main.c981b8db3f94ca16f40a.js HTTP/1.1”, upstream: “http://127.0.0.1:5443/dashboard/main.c981
b8db3f94ca16f40a.js”, host: “ov.meetcha.org”, referrer: “https://ov.meetcha.org/dashboard/

I’ve also tested my STUN server against Trickle ICE and it fails with the error below:

From the Coturn logs, it doesn’t seem like there’s any success acknowledgment after “Waiting turnserver to be running”, can I interpret this to mean it isn’t running? In that case, how should I go about debugging or fixing this (I’ve tried ./openvidu start/stop but that doesn’t seem to resolve it even though it stops/removes/creates openvidu_coturn_1).

@meetcha, did you ever figure out a solution to your issue? Am having something similar w/OV-CE on VPS/Ubuntu LTS20.04. I set up successfully a month ago on my own box (using for dev/testing). Suspect COTURN’s not functioning right but not clear how to troubleshoot. If you solved, would be grateful for any tips. Thanks!

Unfortunately no, I ended up hosting on Vultr (haven’t ran into the issue since).