BigBlueButton - web conferencing system for on-line learning
-
@robi said in BigBlueButton - web conferencing system for on-line learning:
@girish bbb-install.sh supports installing BigBlueButton 2.3 and coturn on Ubuntu 18.04.
Yes but 2.3 is not stable.
TL;DR
It's not time yet. ~ Sound warning!I also talked to Fred Dixon some weeks before last Christmas about the state of 2.3.
Here a quote from him, which I gather from my memory (all statements without guarantee):
We will not give a release date because we only ship a functional product and don't work with due dates.
This only sets false expectations and leads to bad code.I can share this 2.3-draft where you could get some information about current state of 2.3.
Lets talk BBB and turnserver.
There is a turn addon default by Cloudron.
Problem is, its a docker containercloudron/turn:1.1.0
running on port:listening-port=3478 tls-listening-port=5349
This turnserver is kinda useless.
In short terms, a app is needed for turn, so the turn can listen to port 80/443.
Why?
Company / School with a firewall.
Only Ports 80,443,22,993,587 outbound is allowed. (Everything else blocked).
The turn server should now act like as a MITM (big empasis - like a) so this client can use webRTC via turn.
But since it's running on port 5349/3478 its useless.afaik girish and nebulon are aware of this but it's not a big priority right now. (Which I fully support)
Also BBB takes a lot of resources. For running small sessions 2-5 People or even 10 it could work out.
But since BBB is running alongside other Apps this could lead to quite a problem if to many people turn on their webcam. -
@brutalbirdie said in BigBlueButton - web conferencing system for on-line learning:
afaik girish and nebulon are aware of this but it's not a big priority right now. (Which I fully support)
Actually, I am just fixing this for 6.1. I am trying out https://jitsi.github.io/handbook/docs/devops-guide/turn and hopefully that works. The main motivation for us is to move to using kopano meet internally and I suspect maybe this use of different port is what is causing many issues (which have been reported on this fourm). I hope the config there works because https://github.com/coturn/coturn/issues/43 was initially closed stating it was not possible (i.e turn requires a dedicated server to run on 443!)
-
@doodlemania2 ARG I think I read something about nextcloud talk not support turnservers with TLS?
"(D)TLS is currently not supported by Nextcloud Talk and does not have any real security benefit anyway. For more details see the changelog below." -- https://help.nextcloud.com/t/howto-setup-nextcloud-talk-with-turn-server/30794/93703
So be aware of this.
-
What we really need then is a TURN server integrated with Nginx.
Doing a quick search I haven't found an extension for Nginx, but then I thought why not front the TURN server we have with Nginx as a proxy load balancer which can include port 80/443 and UDP ports.
This post goes into the configuration of something like that:
https://stackoverflow.com/questions/51566225/nginx-load-balancing-a-turn-server@staff could easily adapt this to handle non HTTP traffic via the TURN server and the rest going to the Apps.
-
-
@girish said in BigBlueButton - web conferencing system for on-line learning:
Actually, I am just fixing this for 6.1. I am trying out https://jitsi.github.io/handbook/docs/devops-guide/turn and hopefully that works.
Did this get into 6.1?
-
@jdaviescoates unfortunately, no
-
Hi,
from time to time there is an app request for jitsi & BigBlueButton here in the forum. I would like to throw my 2 cents into this discussion.
First: We need a turn server on port 443 and 80 to help people join conferences. There are so many stupid networks / firewalls that a turn server is mandatory. Good news: We have a turn server as an app on Cloudron. Maybe later, it's possible to configure this app.
Second: What is the background to this request? A video conference with friends? Say up to 10 people on the server? A combination of moodle and BigBlueButton for your local school? All my experience with video conferencing for larger groups brings me to the conclusion: forget these apps on Cloudron. They are hungry. In terms of RAM, CPU and bandwidth. The underlying software stack is real-time critical. Better use bare metal instead of cheap VMs. For schools, you need a cluster of BBB nodes and an upstream load balancer. Because of latency, you need a hosting provider close to most of the people using the video conference. For really huge conferences you need a dedicated 10 Gbit network. You need a lot of customisation under the hood. In short, to have a reliable infrastructure for videoconferencing, you need a lot of time to dig deep into the subject.
(My) conclusion: We have Kopano Meet as an app. Let's make this app better for our use case (having a self hosted videoconference for our family and friends meetings). We have Greenlight as a frontend for dedicated BigBlueButton infrastructure. We can use Moodle, Nextcloud and WordPress as alternative frontends for BBB servers. We have Grafana and Prometheus for the metrics of BBB servers. We can use Statping.
Good news is:
The installation process for a dedicated BBB server is painless.
https://github.com/bigbluebutton/bbb-installWait for the configurable turn app on Cloudron or install a coturn yourself.
- Click yourself a dedicated bare metal. Let's say https://www.hetzner.com/de/dedicated-rootserver/ax41-nvme
- Install ubuntu 16 on it.
- SSH into it
- wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s -- -w -v xenial-22 -s bbb.example.com -e info@example.com -c <hostname>:<secret>
- Install Greenlight on Cloudron
- Take the output of bbb-conf --secret and put it into .env of Greenlight.
- Restart the Greenlight app.
- Happy videoconferencing with many users.
For a better understanding of "What's going on?" install https://github.com/greenstatic/bigbluebutton-exporter to your BBB instance and add Grafana and Prometheus to your Cloudron.
The basic installation of a dedicated Jitsi instance is also trouble-free.
https://jitsi.github.io/handbook/docs/devops-guide/devops-guide-quickstartSince my larger conferences rely on BigBlueButton, I didn't feel the need to dig deep into jitsi's scaling. That's why I've installed jitsi meet on cheap VMs for up to 30 users.
But if you want to go deeper into this topic, here is a link to a talk by a maintainer of jitsi meet -> https://fosdem.org/2021/schedule/event/jitsi_scaling/ -
@luckow These are good points. I don't think its a bad idea to have the option (like with Jitsi) still but BBB specifically should stay out. Especially when considering how resource hungry it is and that it requires older versions of Ubuntu. That being said Cloudron should probably never be used for truly large scale conferences simply because those tasks are better suited for distributed setups behind a loadbalancer as you said.
I did also want to mention that there are cloudron instances that have more resources available. I'm running an i3-9100 and 128GB of RAM. My CPU and 300Mbps network bandwidth are the bottlenecks now and would still not be suited to this sort of high load scenario (large conferences)
-
@atrilahiji I'm increasingly inclined to agree - and the Greenlight interface being available and usable by Cloudron LDAP seems like the best of all worlds for that split. That's a really elegant solution that meets needs in my opinion for anyone who needs heavier-duty conferencing.
-
@luckow Thanks! I put your instructions here - https://docs.cloudron.io/apps/greenlight/#installing-bigbluebutton
-
@atrilahiji said in BigBlueButton - web conferencing system for on-line learning:
BBB specifically should stay out. Especially when considering how resource hungry it is and that it requires older versions of Ubuntu.
BBB 2.3 that'll work on Ubuntu 18.04 is getting there (currently alpha-8) and with Cloudron 7.0 we should be getting multi-host support, which would make it easier to give BBB it's own server.
I'd still love it on here!
-
@jdaviescoates yeah same. For me itβs mostly because Iβm cheap. If I can avoid paying for a VPS I want to try. Everything I run now (except for my BBB backend) is on my home server
-
@atrilahiji heh, fair enough. Like lots of people I don't have good enough internet at home to be able to do that
-
Version 2.3 just released
https://github.com/bigbluebutton/bigbluebutton/releases/tag/v2.3.0But the documentation is not yet up to date, especially about the installation which is now possible on Ubuntu 18.04 and about the improvements and new features.
-
Use the "official" ansible role for the deployment -> https://github.com/ebbba-org/ansible-role-bigbluebutton/tree/develop/2.3