Sunbird Installation
Sunbird is an open source repository of learning management microservices architected for scale and designed to support diverse teaching and learning solutions. Sunbird is the open source contribution by EkStep Foundation and is licensed under MIT licence.
This doc explains the steps to setup Sunbird on your cloud infra.
This installation has been tested with 10 VMs running the vanilla Ubuntu 16 image;
- a Public IP
- with all ports opened
- key based ssh possible to the machines.
Sunbird consists of 3 major subsystems
- Knowledge platform aka Learning platform ( Taxonomy, Content and Content Management )
- Data-pipeline ( Creating insights from telemetry)
- Core ( User/Org, Courses, Badges, Content Studio)
Prerequisites
1. Servers to be provisioned
Application | server | count |
---|---|---|
Jenkins | 4core 16G 250G HDD | 1 |
LP | 2core 8G 60G HDD | 2 |
DP | 2core 8G 60G HDD | 5 |
Core | 2core 8G 60G HDD | 2 |
LoadBalancers | 4 |
2. Private GitHub repository to store ansible hosts and secrets
3. FQDN(fully qualified domain name) with SSL
4. Azure Storage account
5. Docker hub account
Installation Procedure
Jenkins
- Provision
- Bootstrap user
Updating Variables
Data-pipeline
- Build
- Provision
- Deploy
Knowledge Platform
- Build
- Provision
- Deploy
CORE
- Build
- Provision
- Deploy