Chaotikum Wiki (Mirror)

Big Blue Button

Verantwortung Malte
Container keine, dedizierter Root-Server
W. Ports keine, dedizierter Root-Server
OS Ubuntu 20.04.6 LTS
Server skaro
Zustand Produktiv

Tags: infrasystem, container, ldapconnected, skaro, productive, malte

Hier findet sich die technische Dokumentation des Chaotikum Big Blue Buttons. Diese Dokumentation beinhaltet alle Konfigurationen, die nicht direkt mit dem Datenschutz in Verbindung stehen.

Alle für den Datenschutz relevanten Konfigurationen stehen hier.

Die allgemeine Nutzungshinweise finden sich hier.

Services

Serviceübersicht Version
BigBlueButton BigBlueButton Server 2.7.1 (425)
Greenlight release-3.0.7.1
BigBlueButton Exporter 0.6.1 ???

BigBlueButton ist eine Sammlung sehr vieler verschiedener Dienste. Die Versionsnummer von BigBlueButton beschreibt eine aufeinander abgestimmte Sammlung von Diensten.

BBB installieren und aktualisieren

wget -qO- https://raw.githubusercontent.com/bigbluebutton/bbb-install/v2.7.x-release/bbb-install.sh | bash -s -- -v focal-270 -s plaudern.chaotikum.org -e infrastruktur@chaotikum.org -g -w

BBB neustarten

Nach Änderungen an der Config muss BBB neugestartet werden:

bbb-conf --restart

Greenlight wird im Ordner /root/greenlight-v3 neugestartet mit

docker-compose down
docker-compose up -d

BBB-Version auslesen

bbb-conf --version

gibt sehr viele verschiedenen Versionen von allem möglichen aus, aber nicht die Gesamt-Version von BBB. Die kriegt man am Anfang als Ausgabe von

bbb-conf --check

Authentifizierung

Es gibt keine LDAP-Unterstützung in Greenlight 3 mehr. Deswegen machen wir jetzt Open ID Connect.

Nachteil: Wir können aktuell noch nicht dafür sorgen, dass nur freigegebene User sich anmelden können. Deswegen können das jetzt erstmal alle. Das ist so mittelgut, aber bei BBB auch nicht sehr schlimm.

Open ID Connect in Greenlight-Konfiguration /root/greenlight-v3/.env aktivieren:

### EXTERNAL AUTHENTICATION METHODS

OPENID_CONNECT_CLIENT_ID=greenlight
OPENID_CONNECT_CLIENT_SECRET=SECRET
OPENID_CONNECT_ISSUER=https://me.chaotikum.org/auth/realms/Chaotikum
OPENID_CONNECT_REDIRECT=https://plaudern.chaotikum.org

Mail-Benachrichtigungen

SMTP-Server in Greenlight-Konfiguration /root/greenlight-v3/.env einrichten:

### SMTP CONFIGURATION
# Emails are required for the basic features of Greenlight to function.
# Please refer to your SMTP provider to get the values for the variables below
SMTP_SENDER_EMAIL=bigbluebutton@chaotikum.org
SMTP_SENDER_NAME=BigBlueButon Greenlight
SMTP_SERVER=mail.chaotikum.net
SMTP_PORT=587
SMTP_DOMAIN=chaotikum.org
SMTP_USERNAME=bigbluebutton@chaotikum.org
SMTP_PASSWORD=uPixoB2TOTVWFWD5l4zL76onwPyV9HtitnX
SMTP_AUTH=plain
SMTP_STARTTLS_AUTO=true
SMTP_STARTTLS=false
SMTP_TLS=false
SMTP_SSL_VERIFY=true

Begrüßungstext

Anpassung des Begrüßungstexts im Chat in der Datei /usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties folgende Konfigurationen anpassen:

defaultWelcomeMessage=Willkommen im Raum <b>%%CONFNAME%%</b>
defaultWelcomeMessageFooter=auf dem <a href="https://wiki.chaotikum.org/hackspace:infrastruktur:bbb" target="_blank"><u>BigBlueButton des Chaotikums</u></a>

Aufzeichnungen deaktivieren

In der /usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties:

BigBlueButton Exporter

Anleitung

Wir verwenden die Docker Installation.

Datei /home/linadmin/bbb-exporter/docker-compose.yaml und /home/linadmin/bbb-exporter/secrets.env nach Anleitung.

Datei /etc/bigbluebutton/nginx/monitoring.nginx:

location /metrics/ {
    proxy_pass http://127.0.0.1:9688/;
    include proxy_params;
}

Läuft unter https://plaudern.chaotikum.org/metrics/

prometheus-node-exporter

Die Version aus Paketquellen

apt install prometheus-node-exporter

ist leider viel zu alt. Deswegen müssen wir selber installieren. Dazu

wget https://github.com/prometheus/node_exporter/releases/download/v1.1.2/node_exporter-1.1.2.linux-amd64.tar.gz
tar xvf node_exporter-1.1.2.linux-amd64.tar.gz
mv node_exporter-1.1.2.linux-amd64/node_exporter /usr/local/bin/node_exporter

User anlegen:

useradd -rs /bin/false node_exporter

Datei /lib/systemd/system/node_exporter.service:

[Unit]
Description=Node Exporter
After=network.target

[Service]
User=node_exporter
Group=node_exporter
Type=simple
ExecStart=/usr/local/bin/node_exporter

[Install]
WantedBy=multi-user.target
systemctl enable node_exporter
systemctl start node_exporter

Port 9100 in Firewall öffnen:

ufw allow 9100/tcp

Läuft nur über IPv6 unter http://plaudern.chaotikum.org:9100/metrics

Default-Präsentation anpassen

Wir haben eine eigene Default-Präsentation unter

/var/www/bigbluebutton-default/chaotikum.pdf

Damit diese verwendet wird, muss in der Datei

/usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties

folgende Zeile angepasst werden:

# Default Uploaded presentation file
beans.presentationService.defaultUploadedPresentation=${bigbluebutton.web.serverURL}/chaotikum.pdf

Anleitung: Change the default presentation

Webcam-Hintergrund-Bilder anpassen

Wir haben eigene Hintergrundbilder unter

/usr/share/meteor/bundle/programs/web.browser/app/resources/images/virtual-backgrounds

Damit diese verwendet werden, muss in der Datei

/usr/share/meteor/bundle/programs/server/assets/app/config/settings.yml

folgende Information angepasst werden:

public:
  virtualBackgrounds:
    enabled: true
    storedOnBBB: true
    showThumbnails: true
    imagesPath: /resources/images/virtual-backgrounds/
    thumbnailsPath: /resources/images/virtual-backgrounds/thumbnails/
    fileNames:
  - sofaecke.jpg
    - werkstatt.jpg
      - chaotikum-logo.jpg
      - chaotikum.jpg
      - home.jpg
      - coffeeshop.jpg
      - board.jpg

Anleitung: Use custom images for virtual background

Die Beschreibungen der Hintergründe könnte man in den Dateien

/usr/share/meteor/bundle/programs/web.browser/app/locales/en.json
/usr/share/meteor/bundle/programs/web.browser/app/locales/de.json

anpassen. Dafür muss man aber die SHA1 der angepasste Dateien neu generieren. Siehe GitHub Issue #12937

Mehr Breakout-Räume erlauben

Man könnte das

breakoutRoomLimit

in der Datei

/usr/share/meteor/bundle/programs/server/assets/app/config/settings.yml 

von 16 erhöhen:

    breakoutRoomLimit: 16

bbbstatus (NICHT INSTALLIERT)

pip3 install uwsgi requests flask flask-caching flask-cors
git clone https://git.chaotikum.org/chaotikum/bbbstatus.git

Datei /home/linadmin/bbbstatus/config.py:

url = 'https://plaudern.chaotikum.org/bigbluebutton/api/'
action = 'getMeetingInfo'
meetingID = 'sb5cz439t1u5cxgflyehsqszzvv23arldqe7qxsz'
secret = 'SECRET_SECRET_SECRET'

Secret übernehmen aus bbb-conf --secret

Datei /etc/bigbluebutton/nginx/bbbstatus.nginx:

location /status {
    proxy_pass http://127.0.0.1:9009/status;
    include proxy_params;
}

Datei /lib/systemd/system/bbbstatus.service:

[Unit]
Description=uWSGI BBB Status
After=syslog.target

[Service]
ExecStart=/usr/local/bin/uwsgi --socket localhost:9009 --protocol=http --chdir /home/linadmin/bbbstatus -w status

# Requires systemd version 211 or newer
RuntimeDirectory=uwsgi
Restart=always
KillSignal=SIGQUIT
Type=notify
StandardError=syslog
NotifyAccess=all

[Install]
WantedBy=multi-user.target
systemctl enable bbbstatus
systemctl start bbbstatus

Läuft unter https://plaudern.chaotikum.org/status

Wartung

SeiteBeschreibung
Wartung Big Blue ButtonWartung Big Blue Button | Wann | 07.10.2023 10:00 | | Warum | Update | | System | bbb | | Ansprechperson | schmitz | Agenda Server komplett neu aufsetzen und ak…
Wartung Big Blue ButtonWartung Big Blue Button | Wann | 07.11.2021 11:00 | | Warum | Update | | System | bbb | | Ansprechperson | Malte | Agenda Update
Wartung Big Blue ButtonWartung Big Blue Button | Wann | 08.03.2022 23:00 | | Warum | Update | | System | bbb | | Ansprechperson | Malte | Agenda Update auf BigBlueButton Server 2.4.4 …
Wartung Big Blue ButtonWartung Big Blue Button | Wann | 19.09.2021 11:00 | | Warum | Update | | System | bbb | | Ansprechperson | Malte | Agenda Update auf BBB 2.3.13 und Greenlight 0…
Wartung Big Blue ButtonWartung Big Blue Button | Wann | 15.01.2022 11:00 | | Warum | Update auf 2.4 | | System | bbb | | Ansprechperson | Malte |
Wartung Big Blue ButtonWartung Big Blue Button | Wann | 20.07.2023 22:00 | | Warum | Update und Aufzeichnungen deaktivieren | | System | bbb | | Ansprechperson | Malte | Agenda Update…
BBB Wartung (28.03.2021)BBB Wartung (28.03.2021) | Wann | 28.03.2021 13:00 bis 14:00 | | Warum | Wartung | | System | BBB | | Ansprechperson | Malte | Agenda System aktualisieren Green…
BBB Wartung (21.02.2021)BBB Wartung (21.02.2021) | Wann | 21.02.2021 12:11 bis 13:32 | | Warum | Wartung | | System | BBB | | Ansprechperson | Malte | Agenda System aktualisieren Green…
BBB Wartung (13.07.2021)BBB Wartung (13.07.2021) | Wann | 13.07.2021 19:00 bis 23:53 | | Warum | Wartung | | System | BBB | | Ansprechperson | Malte | Agenda Update auf (oder eher Neui…
BBB Wartung (10.01.2021)BBB Wartung (10.01.2021) | Wann | 10.01.2021 19:00 bis 22:30 | | Warum | Wartung und Experimente | | System | BBB | | Ansprechperson | Malte |
BBB Wartung (03.05.2021)BBB Wartung (03.05.2021) | Wann | 03.05.2021 15:00 bis 16:00 | | Warum | Wartung | | System | BBB | | Ansprechperson | Malte | Agenda Serverausfall laut Monitor…
BBB Wartung (01.08.2021)BBB Wartung (01.08.2021) | Wann | 01.08.2021 11:00 bis 13:00 | | Warum | Wartung | | System | BBB | | Ansprechperson | Malte | Agenda Updates Eventuell Partitio…