Installation#

Alles auf einem Server#

Anleitung: https://github.com/jitsi/jitsi-meet/blob/master/doc/quick-install.md

Cluster#

Anleitung: https://github.com/jitsi/jitsi-meet/blob/master/doc/scalable-installation.md

Nach Videobridge-Installation auf jeden Fall Passwort in /etc/jitsi/videobridge/config und /etc/jitsi/jicofo/sip-communicator.properties mit prosody-server abgleichen.Falls Login fehlschlägt, mit prosodyctl zurücksetzen.

Bei Fehler "Could not build trust path": auth.meet.example.org.crt in jeder videobridge in ca-certificates aufnehmen

Weitere Doku: https://www.slideshare.net/AnnikaWickert/freifunk-munich-how-to-scale-jitsi-231999167

Skalierungsinfos#

vom Freifunk München: 20 Server für 10000 User, We can run 280 people without issue with ressources compareable with AWS c5.2xlarge. (https://twitter.com/i/status/1253353265158332416)

vom den Matrix-Machern: Roughly speaking we're seeing Jitsi serve around 1000 concurrent streams (i.e. 25x 50-user conferences) on a typical 4 core box with 8GB of RAM. However, it's worth noting that Jitsi is pretty low resource - all it's doing is forwarding streams of data around the place. All the heavy lifting is done by the clients when displaying all the concurrent videos, so it's the clients which tend to be the bottleneck. (https://news.ycombinator.com/item?id=22804401)

Eigene Tests:

  • 4 User: 25% CPU-Auslastung für CCX21
  • 4 User: 10% CPU-Auslastung für L-16 HDD
  • 12 User: 26% CPU-Auslasting für L-16 HDD, 30 MBit/s eingehend, 25 MBit/s ausgehend

Anpassung#

Jitsi per User/Passwort schützen, wenn nicht jeder eine Konferenz starten soll: https://github.com/jitsi/jicofo#secure-domain

Um ein Impressum, Datenschutz etc auf Startseite einzufügen:

Dateien von /usr/share/jitsi-meet nicht editieren, sondern nach /etc/jitsi/meet kopieren, dort anpassen und via Webserver-Regeln ausliefern.

Als Beispiel:

/etc/jitsi/meet/static/welcomePageAdditionalContent.html

	
%%welcome-page-content 

        	
%%welcome-footer 

            		
%%welcome-footer-content 

                		
%%welcome-footer-about 

					
						[Powered by Jitsi Meet|https://jitsi.org/jitsi-meet/|rel='noopener' target='_blank'] | [Impressum|https://example.org/imprint|rel='noopener' target='_blank'] | [Datenschutz|https://example.org/privacy|rel='noopener' target='_blank']
					
				
/%

	    		
/%

		
/%

	
/%


/etc/jitsi/meet/plugin.head.html:

    .welcome-page-content {
        display: flex;
        flex-direction: column;
        flex-grow: 1;
        justify-content: space-between;
        position: relative;
        z-index: 1;
        margin-top: 35px;
        width: 100%
    }
    .welcome-page-content .welcome-footer {
        color: #FFF;
        display: flex;
        padding-bottom: 20px;
        padding-top: 20px;
        width: 100%;
        z-index: 1
    }
    .welcome-page-content .welcome-footer-content a {
        color: #fff !important;
        text-decoration: underline
    }    .welcome-page-content .welcome-footer-content {
        display: flex;
        justify-content: center;
        width: 100%;
        z-index: 2
    }    .welcome-page-content .welcome-footer-about {
        display: flex;
        flex-direction: column;
        flex: 1;
        font-size: 14px;
        line-height: 20px;
        text-align: center;
        justify-content: center
    }    .welcome-page-content .welcome-footer-about:last-child {
        margin-left: 4px
    }

Ausschnitt aus apache-vhost-config:

  Alias "/static/welcomePageAdditionalContent.html" "/etc/jitsi/meet/static/welcomePageAdditionalContent.html"
  
    Require all granted
    Alias "/plugin.head.html" "/etc/jitsi/meet/plugin.head.html"
  
    Require all granted
  

Wenn die Datei /usr/share/jitsi-meet/interface_config.js angepasst werden soll, ebenfalls mit Kopie unter /etc/jitsi/meet arbeiten.

Außerdem sind folgende Anpassungen in der /etc/jitsi/meet/meet.example.org-config.js empfohlen:

/// Nur letzte 6 Sprecher als Video anzeigen, schont CPU auf Clients und Bandbreite
channelLastN: 6,/// Sprecherdetektion aus Clientseite deaktivieren, schont CPU auf Clients
disableAudioLevels: true,defaultLanguage: 'de',
    
/// Schaltet Gravatar und STUN ab
disableThirdPartyRequests: true,/// Auf eigene Hilfe-/Impressumsseite und Desktop-Apps während Call im Menü hinweisen
deploymentUrls: {
//    // If specified a 'Help' button will be displayed in the overflow menu with a link to the specified URL for
//    // user documentation.
    userDocumentationURL: 'https://example.org/jitsi',
//    // If specified a 'Download our apps' button will be displayed in the overflow menu with a link
//    // to the specified URL for an app download page.
    downloadAppsUrl: 'https://github.com/jitsi/jitsi-meet-electron'
},