Note: This repository is in active development. Contributions are welcomed!
Automation for BigBlueButton stack. Use Terraform and Ansible to provision one or many bigbluebutton and scalelite servers with just few commands.
- AWS Account
- Route53 Domain Name and Domain Zone
- Terraform 13.0+
- Ansible 2.9+
Adjust configurations:
Note, Ansible inventory has to be adjusted after ec2 provisioning.
Infrastructure creation is done in multiple steps:
- Bootstrapping - creating shared resources, like security groups and SSH keys.
- Provisioning - creating actual bigbluebutton and scalelite servers
Initiate a new Terraform project in bootstrap
directory:
terraform init
Plan and apply your changes, provisionning the resources:
terraform apply -var-file=../vars/variables.tfvars
Initiate a new Terraform project in template
directory:
terraform init
Plan and apply your changes, provisionning the resources:
terraform apply -var-file=../vars/variables.tfvars
Install required Ansible roles:
ansible-galaxy install nickjj.docker
Run Ansible playbook for bigbluebutton:
ansible-playbook playbooks/bigbluebutton.yaml
Run Ansible playbook for scalelite:
ansible-playbook playbooks/scalelite.yaml
Post installation configuration is still pretty much manual. You will need to refer to scalelite official docs to learn more how to administer your pool.
In case you need to destroy the resources, the process is similar for both bootstrap
and template
:
terraform destroy --auto-approve -var-file=../vars/variables.tfvars