Professional Documents
Culture Documents
Small Institutions
A working Native Open edX Ubuntu 16.04 64 bit installation
Small Institutions
Small Institutions
Fixed Costs
&
No Revenue
FOREWORD
Fit
FOREWORD
IS SMALL
FOREWORD
Support team
is
ISOLATED
FOREWORD
ASYMETRIC
when you’re managing an Open edX platform in
isolation.
FOREWORD
Asymetric Risk
You read about platform improvement X
On A Deep Dive
Installation Pattern
1. Pristine native build
2. Github repository for all configuration
• Custom theme
• Software configuration
• Nginx configuration
• Administration scripts
3. SMTP email
4. SSL encryption
5. Devops for mere mortals
Important Resources
Installation
Stuff
I wish we’d known about these sooner
Let’s Build A Server
Infrastructure
#smart
Server Build Procedure
Do Not Deviate
From The Plan!
Ansible scripts will fail if you do not set a locale.
export LC_ALL="en_US.UTF-8"
export LC_CTYPE="en_US.UTF-8"
export OPENEDX_RELEASE=master
pretty please.
one of these things
Application configuration
This is the other pinned repository
python virtual environment for edxapp user in github.com/edx
Green Unicorn configuration
Application configuration
More subsystems …
Python binaries
Subsystem configurations
User & Course data, logs
Installation Pattern
1. Pristine native build
2. Github repository for all configuration
• Custom theme
• Software configuration If you started with a pristine build
then your Github repository ideally
• Nginx configuration
contains everything that causes your
• Administration scripts build to no longer be pristine.
3. SMTP email
4. SSL encryption
5. Devops for mere mortals
Configuration
edx-platform Configuration repository:
repository for all applications
& sub-systems
# copy any other configuration files that you might have modified for some reason.
cp /home/ubuntu/edx.configuration/edx/etc/ecommerce.yml /edx/etc/ecommerce.yml
3. SMTP email
4. SSL encryption
5. Devops for mere mortals
SMTP Email
To prevent your platform’s emails being flagged as spam you’ll
need to setup SMTP email.
SMTP Email
SMTP Email
Installation Pattern
1. Pristine native build
2. Github repository for all configuration
• Custom theme
• Software configuration
• Nginx configuration
• Administration scripts
3. SMTP email
4. SSL encryption
5. Devops for mere mortals
SSL Encryption
• Remember: Open edX is just like any other web app running on Nginx
• I recommend using Let’s Encrypt
• Installation takes less than one hour
• It’s Free!!
• Easy to maintain
SSL Encryption
Installation Pattern
1. Pristine native build
2. Github repository for all configuration
• Custom theme
• Software configuration
• Nginx configuration
• Administration scripts
3. SMTP email
4. SSL encryption
5. Devops for mere mortals
DevOps
What if you achieve 100% up-time
• Sharing the EC2 Ubuntu instance with other apps is a bad idea.
Pro Tip:
Do it with a script
Your backup script saved my bacon!
Add the minimum permissions
necesary for your service
Pro Tip:
• Ansible scripts
• Database migrations
• Virtual environments
• Data backups
If you could migrate
MySQL to AWS RDS
That’d be great.
Pro Tip:
https://lawrencemcdaniel.com