forked from switnet/quick-jibri-installer
Add recommendation on resources and jibri nodes.
This commit is contained in:
parent
f1185d95d5
commit
92e6e36a79
46
README.md
46
README.md
|
@ -1,49 +1,75 @@
|
|||
# Quick Jibri Installer
|
||||
Bash installer for Jibri on **\*buntu LTS** based systems using **nginx** as default webserver.
|
||||
Bash installer for Jibri on **Ubuntu LTS** based systems using **nginx** as default webserver.
|
||||
|
||||
## Usage
|
||||
As for our current latest release, as we have integrated more and more features, we highly recommend to use a purpose specific-newly spawn server to host the jitsi-meet framework, making sure you stick to the requirements and recommendations as much as possible, in order to avoid issues.
|
||||
|
||||
|
||||
### Main Server
|
||||
Login into your clean server, clone git repository and run the installer,
|
||||
|
||||
```
|
||||
git clone https://github.com/switnet-ltd/quick-jibri-installer
|
||||
cd quick-jibri-installer
|
||||
bash quick-jibri-installer.sh
|
||||
```
|
||||
Please check more details on our wiki.
|
||||
|
||||
### Add Jibri node
|
||||
|
||||
Copy the modified `add-jibri-node.sh` file from your early cloned installation directory once it's completed to the new server meant to be a jibri node using your preferred method, then run it
|
||||
|
||||
**WARNING:** This file contains sensitive information from your setup, please handle with care.
|
||||
|
||||
```
|
||||
bash add-jibri-node.sh
|
||||
```
|
||||
|
||||
|
||||
Check more details on our wiki.
|
||||
|
||||
## Requirements
|
||||
* Clean VM/VPS/Server using Ubuntu LTS
|
||||
* Valid domain with DNS record, **mandatory** for SSL certs via Let's Encrypt.
|
||||
* Ports open for ACME (SSL) interaction & validation.
|
||||
* Minimum recommended for video recording: 8 GB RAM / 4 Cores.
|
||||
* Highly recommended: 8 GB RAM / 4 Cores.
|
||||
* Webcam
|
||||
|
||||
### Jigasi Transcript
|
||||
* SIP account
|
||||
* Google Cloud Account with Billing setup.
|
||||
|
||||
### Jibri Recodings Access via Nextcloud
|
||||
* Valid domain with DNS record for Nextcloud SSL.
|
||||
|
||||
## Kernel warning
|
||||
For AWS users or any cloud service provider that might use their own kernel on their products (servers/vm/vps), might cause Jibri failure to start due not allowing `snd_aloop` module.
|
||||
|
||||
Make sure that you update your grub to boot the right one.
|
||||
|
||||
Feel free to use our (new) `test-jibri-env.sh` tool to find some details on your current setup.
|
||||
|
||||
## Features
|
||||
* Enabled Session (video) Recording using Jibri
|
||||
* Enabled Session Recording using Jibri
|
||||
* Enabled Jitsi Electron app detection server side.
|
||||
* Standalone SSL Certbot/LE implementation
|
||||
* Jigasi Transcript - Speech to Text powered by Google API
|
||||
* JRA (Jibri Recordings Access) via Nextcloud
|
||||
* Improved recurring updater
|
||||
* Customized brandless mode
|
||||
* (New) Setting up custom interface_config.js
|
||||
* (New) Grafana Dashboard
|
||||
* (New) Lobby Rooms - Secure Rooms
|
||||
* (New) Conference Duration - Secure Rooms
|
||||
* Setting up custom interface_config.js
|
||||
* Grafana Dashboard
|
||||
* Lobby Rooms - Secure Rooms
|
||||
* Conference Duration - Secure Rooms
|
||||
* (New) Automatic Jibri nodes network sync ([see more](https://github.com/switnet-ltd/quick-jibri-installer/wiki/Jibri-Nodes)).
|
||||
|
||||
## Tools (New)
|
||||
* (New) Jibri Environment Tester
|
||||
* (New) Jibri Conf Upgrader (late 2020).
|
||||
|
||||
## Optional custom changes
|
||||
* Optional default language
|
||||
* Option to enable Secure Rooms
|
||||
* Option to enable Welcome Page
|
||||
* Option to enable Local audio recording using flac.
|
||||
* Option to use Rodentia static avatar (icon credit: sixsixfive) - Legacy
|
||||
|
||||
## Custom changes
|
||||
* Start with video muted by default
|
||||
|
|
|
@ -125,7 +125,8 @@ if [ "$CPU_MIN" = "Y" ] && [ "$MEM_MIN" = "Y" ];then
|
|||
"
|
||||
else
|
||||
echo "CPU ($(nproc --all))/RAM ($((mem_available/1024)) MiB) does NOT meet minimum recommended requirements!"
|
||||
echo "Even when you can use the videconference sessions, we advice to increase the resources in order to user Jibri."
|
||||
echo "Since this is a Jibri node there is no point on having the necessary resources."
|
||||
echo "We highly advice to increase the resources in order to install this Jibri node."
|
||||
while [[ "$CONTINUE_LOW_RES" != "yes" && "$CONTINUE_LOW_RES" != "no" ]]
|
||||
do
|
||||
read -p "> Do you want to continue?: (yes or no)"$'\n' -r CONTINUE_LOW_RES
|
||||
|
@ -133,7 +134,7 @@ else
|
|||
echo "See you next time with more resources!..."
|
||||
exit
|
||||
elif [ "$CONTINUE_LOW_RES" = "yes" ]; then
|
||||
echo "Please keep in mind that trying to use Jibri with low resources might fail."
|
||||
echo "Please keep in mind that we might not support underpowered nodes."
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
@ -155,7 +156,7 @@ check_var MJS_USER_PASS "$MJS_USER_PASS"
|
|||
|
||||
# Rename hostname for each jibri node
|
||||
hostnamectl set-hostname "jbnode${ADDUP}.${MAIN_SRV_DOMAIN}"
|
||||
sed -i "1i ${PUBLIC_IP} jbnode${ADDUP}.${MAIN_SRV_DOMAIN}" /etc/hosts
|
||||
sed -i "1i 127.0.0.1 jbnode${ADDUP}.${MAIN_SRV_DOMAIN}" /etc/hosts
|
||||
|
||||
# Jitsi-Meet Repo
|
||||
echo "Add Jitsi repo"
|
||||
|
|
|
@ -189,7 +189,38 @@ else
|
|||
echo "See you next time with more resources!..."
|
||||
exit
|
||||
elif [ "$CONTINUE_LOW_RES" = "yes" ]; then
|
||||
echo "Please keep in mind that trying to use Jibri with low resources might fail."
|
||||
echo "We highly recommend to increase the server resources."
|
||||
echo "Otherwise, please think about adding dedicated jibri nodes instead."
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
if [ "$CONTINUE_LOW_RES" = "yes" ]; then
|
||||
echo -e "\nThis server will likely have issues due the lack of resources.
|
||||
If you plan to enable other components such as,
|
||||
|
||||
- JRA via Nextcloud
|
||||
- Jigasi Transcriber
|
||||
- Additional Jibri Nodes
|
||||
- others.
|
||||
|
||||
We higly recommend to increase resources of this server.
|
||||
|
||||
For now we advice to disable the Jibri service locally and add an external
|
||||
Jibri node once this installation has finished, using our script:
|
||||
|
||||
>> add-jibri-node.sh
|
||||
|
||||
So you can add a Jibri server on a instance with enough resources.\n"
|
||||
|
||||
while [[ "$DISABLE_LOCAL_JIBRI" != "yes" && "$DISABLE_LOCAL_JIBRI" != "no" ]]
|
||||
do
|
||||
read -p "> Do you want to disable local jibri service?: (yes or no)"$'\n' -r DISABLE_LOCAL_JIBRI
|
||||
if [ "$DISABLE_LOCAL_JIBRI" = "no" ]; then
|
||||
echo "Please keep in mind that we might not support underpowered servers."
|
||||
exit
|
||||
elif [ "$DISABLE_LOCAL_JIBRI" = "yes" ]; then
|
||||
echo "Please think about adding dedicated jibri nodes see more at the wiki."
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
@ -955,6 +986,11 @@ systemctl enable jibri
|
|||
systemctl enable jibri-xorg
|
||||
systemctl enable jibri-icewm
|
||||
restart_services
|
||||
if [ "$DISABLE_LOCAL_JIBRI" = "yes" ]; then
|
||||
|
||||
systemctl stop jibri*
|
||||
systemctl disable jibri*
|
||||
fi
|
||||
|
||||
enable_letsencrypt
|
||||
|
||||
|
|
Loading…
Reference in New Issue