Wij jitsi server: Difference between revisions

From Hobbynet Admin Wiki
Jump to navigation Jump to search
Line 24: Line 24:
   curl https://download.jitsi.org/jitsi-key.gpg.key | sudo sh -c 'gpg --dearmor > /usr/share/keyrings/jitsi-keyring.gpg'
   curl https://download.jitsi.org/jitsi-key.gpg.key | sudo sh -c 'gpg --dearmor > /usr/share/keyrings/jitsi-keyring.gpg'
   echo 'deb [signed-by=/usr/share/keyrings/jitsi-keyring.gpg] https://download.jitsi.org stable/' | sudo tee /etc/apt/sources.list.d/jitsi-stable.list > /dev/null
   echo 'deb [signed-by=/usr/share/keyrings/jitsi-keyring.gpg] https://download.jitsi.org stable/' | sudo tee /etc/apt/sources.list.d/jitsi-stable.list > /dev/null
zorg er voor dat er CEPH share is naar het juiste certificaat
Nu bereiden we vast de configuratie voor voor op alle servers dit scheelt hoop apt vragen, vervang hier bij de vet gedrukte delen door de juiste hostnamen ('''let op FQDN''') en het juiste pad naar het certificaat
  cat << EOF | sudo debconf-set-selections
  jitsi-videobridge  jitsi-videobridge/jvb-hostname  string  '''wij-test-web.hobby.nl'''
  jitsi-meet  jitsi-meet/jvb-serve    boolean false
  jitsi-meet-prosody  jitsi-videobridge/jvb-hostname  string  '''wij-test-web.hobby.nl'''
  jitsi-meet-web-config  jitsi-meet/cert-choice  select  I want to use my own certificate
  jitsi-meet-web-config  jitsi-meet/cert-path-crt    string  '''/disk/site/etc/ssl/hobby.nl/hobby.nl.crt'''
  jitsi-meet-web-config  jitsi-meet/cert-path-key    string  '''/disk/site/etc/ssl/hobby.nl/hobby.nl.key'''
  EOF


== videobrige ==
== videobrige ==

Revision as of 21:05, 10 February 2022

doel

De server wij.hcc.nl verzorgt een jitsi server voor hcc

opzet

File:Jitsi diagram.dia De jitsi frontend fungeert als dirigent: hij bepaalt welke sessie op welke videobridge plaats vindt, hij is sessie broker. Elke videobridge handelt zijn eigen video verkeer af

Het cluster bestaat uit 4 servers

  1.     Frontend           : deze is zeg maar de sessie broker
  2,3,4. Videobridge 1 t/m 3: deze handelen al het video verkeer rechtstreeks af

installatie

Dit moet op alle server gebeuren:

frontend (meet server

Voer op alle server het volgende uit:

  apt install debconf-utils ca-certificates ca-certificates-java apt-transport-https
  apt-add-repository universe
  apt update
  apt full-upgrade -y
  curl https://download.jitsi.org/jitsi-key.gpg.key | sudo sh -c 'gpg --dearmor > /usr/share/keyrings/jitsi-keyring.gpg'
  echo 'deb [signed-by=/usr/share/keyrings/jitsi-keyring.gpg] https://download.jitsi.org stable/' | sudo tee /etc/apt/sources.list.d/jitsi-stable.list > /dev/null

zorg er voor dat er CEPH share is naar het juiste certificaat

Nu bereiden we vast de configuratie voor voor op alle servers dit scheelt hoop apt vragen, vervang hier bij de vet gedrukte delen door de juiste hostnamen (let op FQDN) en het juiste pad naar het certificaat

  cat << EOF | sudo debconf-set-selections
  jitsi-videobridge   jitsi-videobridge/jvb-hostname  string  wij-test-web.hobby.nl
  jitsi-meet  jitsi-meet/jvb-serve    boolean false
  jitsi-meet-prosody  jitsi-videobridge/jvb-hostname  string  wij-test-web.hobby.nl
  jitsi-meet-web-config   jitsi-meet/cert-choice  select  I want to use my own certificate
  jitsi-meet-web-config   jitsi-meet/cert-path-crt    string  /disk/site/etc/ssl/hobby.nl/hobby.nl.crt
  jitsi-meet-web-config   jitsi-meet/cert-path-key    string  /disk/site/etc/ssl/hobby.nl/hobby.nl.key
  EOF

videobrige

update van jitsi

Nadat updates van jitsi zijn geweest moet het volgende script gedraaid worden

  /usr/local/hobbynet/home/jitsi-images/update-jitsi.sh

Dit zorgt er voor dat het hcc logo etc etc wordt teruggezet, samen met nog wat settings.

update script jitsi-frontend

Bij apt upgrade/full-upgrade wordt automatisch door middel van een hook bepaalde settings goed gezet na de upgrade, dit gebeurt altijd, ook al is er geen jitsi update.

Het update script vindt je hier: /etc/apt/apt.conf.d/80upgradehook en ziet er als volgt uit:

DPkg::Post-Invoke {"/usr/local/hobbynet/local/jitsi/update-jitsi.sh";};

Het script wat hij aanroep is /usr/local/hobbynet/local/jitsi/update-jitsi.sh

#!/bin/bash
echo "Jitsi frontend bijwerken"
echo "plaats watermark"
cp /usr/local/hobbynet/local/jitsi/Logo_hcc_RGB_png.png /usr/share/jitsi-meet/images/watermark.png
echo "plaats favoicoonen"
cp /usr/local/hobbynet/local/jitsi/favicon.ico /usr/share/jitsi-meet/images/favicon.ico
cp /usr/local/hobbynet/local/jitsi/favicon.ico /usr/share/jitsi-meet/favicon.ico
echo "backup oude interface config"
cp /usr/share/jitsi-meet/interface_config.js /usr/local/hobbynet/local/jitsi/interface_config.js.old
echo "vervang nodige variable in interface config, ipv oude config herbruiken"
cat /usr/share/jitsi-meet/interface_config.js |sed "s/'Jitsi Meet'/'Wij HCC'/g"|sed "s/PROVIDER_NAME: 'Jitsi'/PROVIDER_NAME: 'Wij HCC'/g"|sed "s/'Jitsi Meet'/'Wij HCC'/g"|sed "s/DISABLE_JOIN_LEAVE_NOTIFICATIONS: false/DISABLE_JOIN_LEAVE_NOTIFICATIONS: true/g" >/usr/local/hobbynet/local/jitsi/interface_config.js.new
echo "plaats nieuwe interface config"
cp /usr/local/hobbynet/local/jitsi/interface_config.js.new /usr/share/jitsi-meet/interface_config.js

Het script plaatst het watermark en favicon op de juiste plek. Daarnaast doet hij de nodige aanpassingen in interface_config.js file met sed. Gebruik sed omdat er nog steeds nieuwe config opties bij komen en op deze manier gaan die niet verloren.

wanneer kan server herstart worden

cacti

Open cacti en kijk naar de statistieken en je ziet over wat actief is

cacti command line

voer het onderstaand script op cacti uit op cacti .

php /disk/site/hobbynet/cacti.hobby.nl/www/scripts/jitsi_get_total.php
Bijeenkomsten:0 Deelnemers:5

Dit script laat alleen het aantal deelnemers zien niet aantal bijeenkomsten

accesslog op jitsi-frontend

kijk in /var/log/nginx/access.log en je ziet of er wat actief is je ziet alleen geen ip addressen hier in

truc op jitsi-frontend

Er is geen 'nette' manier om te zien hoeveel er van de server gebruik gemaakt wordt van af de command line op jitsi server

Maar er is wel een betrouwbare truc: kijk hoeveel sessies er naar TCP poort 443 ESTABLISHED zijn. (dit doe je op jitsi-frontend)

root@jitsi-frontend:~# netstat -an |grep ESTABLISHED | grep 443
tcp        0      0 212.72.224.120:443      94.213.158.57:55432     ESTABLISHED
tcp        0      0 212.72.224.120:443      62.163.167.30:51728     ESTABLISHED
tcp        0      0 212.72.224.120:443      178.84.60.147:61423     ESTABLISHED
tcp        0      0 212.72.224.120:443      178.84.60.147:61432     ESTABLISHED
tcp6       0      0 2a02:968:1:2:212:72:443 2001:981:97b8:1:2:62328 ESTABLISHED
tcp6       0      0 2a02:968:1:2:212:72:443 2a02:a44e:56c8:1::62139 ESTABLISHED
tcp6       0      0 2a02:968:1:2:212:72:443 2a02:a44f:39df:1::50801 ESTABLISHED