ILIAS-7-Install-Tutorial for Ubuntu 20.04
Scalelite - Loadbalancer
- It is possible to use a vserver for this or an existing BBB server
- I recomend a mid scale vserver for this
Written for: Ubuntu 18.04
Thanks to: https://jffederico.medium.com/scalelite-lazy-deployment-745a7be849f6
Ad a swap file (not recommended for vservers)
Install Docker
apt install apt-transport-https ca-certificates curl software-properties-commonapt install apt-transport-https ca-certificates curl software-properties-commoncurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"apt updateapt install docker-ce
Install Docker Compose
curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-composechmod +x /usr/local/bin/docker-compose
Installation
git clone https://github.com/jfederico/scalelite-runcd scalelite-runcp dotenv .env
nano .env- Change the following lines:
1 | SECRET_KEY_BASE=BBBSecret |
I use for every server the same secret. That may be a security issue but it works for now. Dünnes Eis.Â
- Get letsencrypt cert:
./init-letsencrypt.sh - Start service:Â
docker-compose up -d - Initialize the database:
docker exec -i scalelite-api bundle exec rake db:setup
Configuration
cd /root/scalelite-run
- Check server status:Â
docker exec -i scalelite-api bundle exec rake status - Show list of servers with load index:Â
docker exec -i scalelite-api bundle exec rake servers - Add a server:Â
docker exec -i scalelite-api bundle exec rake servers:add[https://bbb1.example.com/bigbluebutton/api/,bbb-secret,1]- The last value 1 means: Load multiplier is 1
- After that, an ID is shown. Use it for the following command:
docker exec -i scalelite-api bundle exec rake servers:enable[...id...]
- Remove a Server:
- Get a server out of the pool:Â
docker exec -i scalelite-api bundle exec rake servers:panic[...id...] - Remove a server:Â
docker exec -i scalelite-api bundle exec rake servers:remove[...id...]
- Get a server out of the pool:Â
Use the server in ILIAS
- For the IILIAS-BBB plugins we do not use ../api/
- MultiVC does not seem to work well with Scalelite
- URL:Â
- Public URL: https://scalelite.example.com/bigbluebutton/
- Private URL: https://scalelite.example.com/bigbluebutton/
- Secret:Â LOADBALANCER_SECRET
Options
- Start:
- Normal:
docker-compose up -d - With log output:
 docker-compose up
- Normal:
- Stop:
docker-compose down - Status:
docker exec -i scalelite-api bundle exec rake status - Logfiles:
docker logs scalelite-api- ..?
Enable recordings
https://jffederico.medium.com/scalelite-lazy-deployment-part-ii-ca3e4bf82f8d
Monitoring
- If you perform this script below, a html file will be created in /opt/scripts/sload/slload.html
apt install txt2html- Crontab line:
*/1 *  * * *  root  /opt/scripts/slload.sh > /dev/null 2>&1
1 | #!/bin/bash |
- Get the file via ssh in the webserver:
1 | pass=123 |