Open edX is the most powerful, flexible and reliable open source LMS in the market. Being an open source project, all the code is publicly available to read, use and modify. Open edX can be installed in Ubuntu in the cloud or in a local computer. However, achieving a successful Open edX installation can be complicated.
First, note that Open edX and edX are different services. If you have doubts about this, read our article about this.
The core of Open edX is in a github repository called edx-platform. You can download the source code, but it will not be enough to have a working installation of Open edX. This is because Open edX is a complex platform that needs a lot of elements to work, including front ends, databases and other modules.
Fortunately we have another open source project, called Tutor, that automates the installation of Open edX. Tutor is currently the only officially supported installation method for Open edX. Even though there are other options to make Open edX work, your or your partner should only use Tutor. This is the only way you can make sure that everything is properly installed and configured and you get all the support from the community.
Even if you are hiring a professional to make the installation for you, or contracting an Open edX service from a service partner, you should know how your platform is being installed and require that you get only a community supported version of the platform, and it is installed using Tutor with a method that guarantees the reliability that your project needs.
How to install Open edX using Tutor
Dev
The first Open edX Installation option is the development option. It has a lot of tools useful for troubleshooting and debugging Open edX. It is addressed to developers, and definitely not appropriate for any production setup. You would need the development installation only if you are planning to make changes to the platform or developing code on top of it. I wouldn’t recommend it unless you are an experienced developer. It is installed using the tutor dev launch command. You can install Open edX on Ubuntu 20.04 or higher in a local computer, or on MacOS.
Local
The second Open edX Installation option is the local option, which is the simplest way to have a functional Open edX installation. It can run in your local computer or in the cloud in a virtual machine. You can install Open edX on Ubuntu 20.04 or higher. If you plan to put a local installation in production, it is a good practice have your MySQL and MongoDB databases in separate servers.
Local installations are monolithic, it means that everything runs in the same server. If it starts receiving many users it can run out of resources and experience performance or even availability issues. Local installation is difficult to escalate, so it is not recommended if your site is critical for your business or is likely to grow. It is installed using tutor local launch
Kubernetes
The third Open edX Installation option uses Kubernetes. Kubernetes is an infrastructure technology that allows systems to distribute its workloads into multiple computers. It can automatically escalate up or down depending on resource usage, and detects if any component is failing and will try to recreate it somewhere else.
Open edX can be installed using the tutor k8s commands. This is definitely the right option to install Open edX in the cloud if the platform is critical for your business, no matter the size. When the usage diminishes (as during the night or in vacations), the resources will be automatically reduced to the minimum, to keep infrastructure costs low. When usage grows, additional resources are automatically provisioned to satisfy the increasing needs. Kubernetes allows Open edX to be installed in a high availability configuration, making it highly reliable, scalable and robust.
Summary – How to install Open edX
To recap, we have three options to install open edx:
- dev only for development
- local for testing and small implementations
- kubernetes for a reliable and scalable installation
If you are contracting an Open edX platform, ask your service provider which option are they using.
We can help you! Please feel free to contact us for any question or support.