Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
knb:meet-server [2020/03/21 10:36] – [Bonus: Monitoring] awickert | knb:meet-server [2020/09/02 07:46] (aktuell) – Django | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== | + | ~~NOTOC~~ |
+ | /* *** Titelbalken *** */ | ||
+ | <WRAP center box 100%> | ||
+ | <fs xx-large>< | ||
+ | {{ : | ||
+ | </ | ||
==== Brief overview ==== | ==== Brief overview ==== | ||
The setup consists of multiple Jitsi videobridges which can be added and removed on demand as well as one control server which does the loadbalancing decisions. | The setup consists of multiple Jitsi videobridges which can be added and removed on demand as well as one control server which does the loadbalancing decisions. | ||
- | Each server has at least 2vCPUs, 4GB RAM and 10GB disc space. But the most important thing is bandwidth so a 1Gbit/s link is necessary for smooth operation. | + | Each server has at least 8vCPUs, 16GB RAM and 10GB disc space. But the most important thing is bandwidth so a 1Gbit/s link is necessary for smooth operation. |
+ | |||
+ | The more CPUs you have the better, also you need good network hardware as you can expect many pps. | ||
+ | |||
+ | <WRAP center round alert 60%> | ||
+ | This page is outdated at the moment we don't use pubsub anymore but switched to MUC and do OCTO. | ||
+ | </ | ||
+ | |||
+ | We did some presentations about the setup you can find them at [[https:// | ||
+ | |||
+ | If you want to ask us questions join our [[https:// | ||
===== Initial setup (control server) ===== | ===== Initial setup (control server) ===== | ||
- | We installed the first instance as described on https:// | + | We installed the first instance as described on https:// |
Disable the videobridge: | Disable the videobridge: | ||
Zeile 21: | Zeile 37: | ||
defaultLanguage: | defaultLanguage: | ||
disableThirdPartyRequests: | disableThirdPartyRequests: | ||
+ | p2p: { enabled: false }, | ||
enableLipSync: | enableLipSync: | ||
</ | </ | ||
+ | |||
+ | |||
==== Prosody Setup for loadbalancing (control server) ==== | ==== Prosody Setup for loadbalancing (control server) ==== | ||
<WRAP center round important 60%> | <WRAP center round important 60%> | ||
- | Most important thing is to get hostnames and DNS settings correct for each instance, otherwise your setup will fail.</ | + | Most important thing is to get hostnames and DNS settings correct for each instance, otherwise your setup will fail. |
+ | </ | ||
Zeile 38: | Zeile 58: | ||
" | " | ||
" | " | ||
- | "jvb3.meet.ffmuc.net", | + | " |
- | " | + | |
- | " | + | |
- | " | + | |
- | " | + | |
- | " | + | |
- | " | + | |
- | " | + | |
- | " | + | |
- | " | + | |
- | " | + | |
- | " | + | |
- | "jvb15.meet.ffmuc.net" | + | |
} | } | ||
+ | </ | ||
+ | |||
+ | As we want to scale beyond 1024 connections we also switch to epoll in prosody.cfg.lua. | ||
+ | < | ||
+ | -- for better scaling | ||
+ | -- https:// | ||
+ | network_backend = " | ||
+ | </ | ||
+ | |||
+ | And as we want external videobridges we need to listen on the external interface and not just localhost: | ||
+ | < | ||
+ | component_interface = " | ||
</ | </ | ||
Zeile 62: | Zeile 82: | ||
component_secret = " | component_secret = " | ||
Component " | Component " | ||
- | component_secret = " | ||
- | Component " | ||
- | component_secret = " | ||
- | Component " | ||
- | component_secret = " | ||
- | Component " | ||
- | component_secret = " | ||
- | Component " | ||
- | component_secret = " | ||
- | Component " | ||
- | component_secret = " | ||
- | Component " | ||
- | component_secret = " | ||
- | Component " | ||
- | component_secret = " | ||
- | Component " | ||
- | component_secret = " | ||
- | Component " | ||
- | component_secret = " | ||
- | Component " | ||
- | component_secret = " | ||
- | Component " | ||
- | component_secret = " | ||
- | Component " | ||
component_secret = " | component_secret = " | ||
</ | </ | ||
Zeile 91: | Zeile 87: | ||
==== Videobridges for loadbalancing ==== | ==== Videobridges for loadbalancing ==== | ||
- | On those servers **only** the jitsi-videobridge | + | On those servers **only** the '' |
<WRAP center round important 60%> | <WRAP center round important 60%> | ||
Zeile 97: | Zeile 93: | ||
</ | </ | ||
- | First you need to change / | + | First you need to change |
<WRAP center round tip 60%> | <WRAP center round tip 60%> | ||
Zeile 104: | Zeile 100: | ||
<WRAP center round tip 60%> | <WRAP center round tip 60%> | ||
- | The " | + | The " |
We also enable statistics for later polling via Telegraf (--apis). | We also enable statistics for later polling via Telegraf (--apis). | ||
Zeile 152: | Zeile 148: | ||
We use telegraf to poll the statistics of the videobridges. We just use the exec section of Telegraf, to get the data. | We use telegraf to poll the statistics of the videobridges. We just use the exec section of Telegraf, to get the data. | ||
- | Example: https:// | + | Example: |
/ | / | ||
Zeile 161: | Zeile 157: | ||
] | ] | ||
| | ||
- | | + | data_format = " |
</ | </ | ||
+ | |||
+ | ===== Hint for smooth operation ===== | ||
+ | |||
+ | <WRAP center round tip 60%> | ||
+ | Use Chrome or it's derivates as client. The Mobile and Desktop Apps of jitsi-meet work as well. | ||
+ | |||
+ | Avoid using Firefox! It causes problems for the Firefox-user but as well the other parties which do not use Firefox. | ||
+ | </ | ||