====== BigBlueButton selbst betreiben ====== Am 20. April 20 fand das (erste?) deutschsprachige BigBlueButton-User-Meeting statt. Die Geteilten Notizen dieser Sitzung sind der Grundstock dieser Seite und dürfen gerne nach und nach um Best Practices, Links zu weiterführenden Infos etc. ergänzt werden. Für den weiteren Austausch gibt es seitdem den Slack Channel #bigbluebutton im Slack der deutschen OpenKnowledge Foundation. Und weil gerade viele Universitäten, Schulen, Unternehmen, Behörden, Vereine,.. den Bedarf haben, eine eigene Videokonferenz-Plattform einzurichten und zu betreiben, und der Bedarf zum Teilen von Erfahrungen groß ist, werden wir dieses Format noch einige Zeit fortsetzen. Die **kommenden Montage, um 21-22h** findet das BBB selbst betreiben Meetup unter [[https://meet.systect.de/b/hol-jn7-4yr|BigBlueButton@systect]] statt. Asnychrone Austauschmöglichkeit gibt es ab heute via (Nach-)DiVOC-BBB-Austausch-Matrix: https://matrix.to/#/!jdgaJrEEvmmrJPBKHi:matrix.org?via=matrix.org (#bigbluebutton-de:matrix.org). Verknüpft mit #bigbluebutton im OKF-Slack. ====Über BigBlueButton - Onlinekonferenzen mit Datenschutz!=== Lizenz: LGPL - freie Open Source software Website: https://bigbluebutton.org/ WebRTC Technik: MCU für Audio und SFU für Video (deshalb bessere Skalierung als Jitsi) ==== Betrieb ==== === gehortete Lösungen - BBB as service === kostenfrei nutzbare Instanzen: * https://meeten.statt-drosseln.de/ * https://bigblue.cccfr.de/ * https://yolo-bbb.starletp9.de/ (record=true) * https://bbb.daten.reisen/ (record=false) * https://treffen.kbu.freifunk.net/ff (record=false) * https://bbb.jitsi.world/b (record=false) * https://senfcall.de/ kommerzielle Anbieter: * https://www.hostsharing.net/ * https://collocall.de/ * IServ? === BBB selber hosten === Server-Hosting Empfehlungen * Hetzner * Netcup Root Server (dedizierte CPU Kerne) * Amazon EC2 x4.large oder größer == Installationsbeschreibungen == * https://mo1300.schule.hessen.de/course/view.php?id=83 * https://release.bbb.uni-ulm.de/#/ * Ansible-Playbook LFB BaWue: https://codeberg.org/DigitalSouveraeneSchule/bbb * Ansible-Rolle: https://github.com/n0emis/ansible-role-bigbluebutton * ein ganzes cluster, eher zum reingucken, nicht zum 1:1 ausrollen: https://github.com/stadtulm/a13-ansible * Post zu sipgate Einrichtung: https://groups.google.com/forum/#!searchin/bigbluebutton-setup/sipgate%7Csort:date/bigbluebutton-setup/-9kRZQE8lLw/6geKiQHuCgAJ * Installation Notes, Admin Account, Port 5060 Blocking wegen SIP bots, Recording abschalten: https://blog.wirelessmoves.com/2020/04/bigbluebutton-installation-notes.html == Bandbreiten-/Resourcenbedarf? == * Screensharing braucht Bandbreite * 2 MBit Upload für Dozenten (?), Mit "medium" Video Qualität ca. 350 kbit/s * Erfahrung mit 4 vCPU Server bei Hetzner: 1 Konferenz mit 18-20 Leute, alle gleichzeitig Video mit 70% CPU Load: https://blog.wirelessmoves.com/2020/04/new-lets-have-a-go-at-bigbluebutton.html * 230 Leute auf einer Instanz 12 Kerne 48 GB Ram. (dabei 30-50% CPU Auslastung!) * Mehr als 8 oder 12 Kerne pro BBB Server lohnt sich nicht, da der Node.js Singlethreaded ist (als nur einen CPU Kern für Chat, Teilnehmerliste und Whiteboard). Mehr als 12GB Ram bringt auch keine Zugewinn * 1 Video braucht 0,3 Mbit/s (default Medium Quality) - 1 MBit/s im Upload (HD Quality), 100 MBit outbound bei 100 Zuschauern. * Sollen viele Webcam nutzen können, sollte Qualität der Kamera reduziert werden. Hier gibt es ein paar Zahlen: * https://www.hostsharing.net/blog/2020/03/30/bigbluebutton-im-lasttest/ * https://blog.wirelessmoves.com/2020/04/new-lets-have-a-go-at-bigbluebutton.html * https://blog.wirelessmoves.com/2020/04/running-bigbluebutton-week-one.html * https://www.octopuce.fr/retour-dexperience-sur-bigbluebutton-a-fort-charge/ (FR) ==== Best Practices ==== === Datenschutz-Einstellungen === * Logging reduzieren oder abschalten zwecks Datenschutz * '' disableRecordingDefault = true'' (Deaktivieren), da nur schwer DSGVO konform nutzbar siehe https://github.com/bigbluebutton/greenlight/issues/1163 === Webcam-Auflösung reduzieren === Default-Stufe Webcam Auflösung auf Low, höchste Webcam-Auflösung deaktiveren/löschen Das reduziert gerade bei vielen Teilnehmern enorm Bandbreite, da die meisten die Einstellungen beibehalten. Selbst mit niedriger Auflösung lassen sich Gesten und Mimik gut erkennen: $ sudo nano /usr/share/meteor/bundle/programs/server/assets/app/config/settings.yml ... cameraProfiles: - id: low name: Low quality default: true bitrate: 100 - id: medium name: Medium quality default: false bitrate: 200 ... === Update-sichere Konfiguration === Alle custom Settings in der apply-config.sh eintragen, damit diese Updates überleben siehe https://docs.bigbluebutton.org/2.2/customize.html#automatically-apply-configuration-changes-on-restart === sipgate basic für call in === Sipgate Basic bietet auf Rückfrage 2 parallele Sprachkanäle pro Anschluss. (sipgate basic) 20. Apr., 09:39 CEST vielen Dank für Ihre Nachricht. Wir bieten bei sipgate basic zwei parallele Sprachkanäle pro Anschluss an. Viele Grüße TODO sipgate bsp.Config. === Weiteres === * Audio Configs https://pastebin.com/r5m5Hzgj (vielleicht besser?) * UDP flood protection aus machen * keinen Proxy zwischen Internet und BBB Server betreiben * zu TURN beachten: https://www.rtcsec.com/2020/04/01-slack-webrtc-turn-compromise/ * Audio-Verbindungszeit für Chrome reduzieren: https://github.com/bigbluebutton/bigbluebutton/pull/9084 * Loadbalancing über Scalelite https://github.com/blindsidenetworks/scalelite * Direkt Joinen: https://github.com/stadtulm/bbb-easy-join * STUN/TURN, konfigurieren an vier stellen: * bbb-web (tun-strun-servers.xml) * kurento (WbeRtcEndpoint.conf.ini) * freeswitch: vars.xml * ???: sip.js moment ==== Probleme und Lösungen ==== === Knacken in Sound-Übertragung === Energy-level (wann sendet der Client UDP Pakete / Wann geht das Mic auf) anpassen: $ sudo /opt/freeswitch/etc/freeswitch/autoload_configs/conference.conf.xml # cdquality energy-level von 200 auf 100 reduzieren === Chat lagged, keine neuen Räume === /var/lib/ war voll gelaufen, keine Ahnung warum dort Videos abgelegt worden sind. === Telefoneinwahl meldet keinen Anschluss unter dieser Nummer === Im Log keine Einwahl oder Verbindungsaufbau zu Sip-Provider erkennbar: sipgate.xml war in falschen Freeswitch config-Verzeichnis abgelegt ==== Wanted Docs ==== Wenn Ihr Infos zu folgenden Themen findet oder selbst ein paar Zeilen dokumentieren möchtet, sind nachfolgend ein paar Themen, zu denen Bedarf geäußert wurde: * Screenrecording: https://obsproject.com/de * DSGVO konforme Einrichtung? * live-streaming über externe Plattform?