State of DevOps Working Group (March 2023)
Date: March 16th 2023
Introduction
The DevOps working group focuses primarily on all areas related to the operations of an Open edX patform, both in production and development. We work to keep Open edX operations both simple and featureful.
The central point of information for the working group is the openedx/wg-devops repository.
Consider this report as a compilation of what we’ve done over the past year, what we’re looking at doing in the next 6 months, and a wider vision of the group’s future beyond that.
Accomplishments
The DevOps working group was created at the beginning of this year, mostly as an umbrella of the following sub-working groups:
The Build/Test/Release working group
The Large Instances working group
The Developer Experience working group
At the moment, most of the work is accomplished within the scope of these sub-working groups. The DevOps working group acts mostly as a placeholder for an upcoming DevOps tasks that would not fit within the scope of these sub-working groups.
Concrete Plans - Next 6 Months
Over the next six months, we need to gather some energy around specific action items and topics of interest. After consideration, I propose the following items:
Resolving Docker image build time: this is an issue that concerns every Tutor user, both in development and production. The useless CPU cycles are killing our joy and our planet. A conversation was started here and the issue is tracked here. The problem can be attacked from different angles. So we will:
Schedule a meetup to discuss ideas.
Assign exploratory tasks to individuals and measure their impact on the image build time.
Actually implement those ideas that have the most impact.
DevOps talks: the job of DevOps can be rather solitary. Sometimes it’s hard to understand how Open edX works in practice for other platform operators. Details are seldom shared in public. During these informal meetups, we will share nitty-gritty technical details and tips on how we operate our production and development environments. The goal will be to foster good practices, discover issues and discuss solutions that will work best in practice. To that end, I will reach out to platform operators and to core contributors and schedule informal presentations once every couple weeks. Given the sensitive nature of production environment, I’m not yet confident that we will be able to share video recordings of the meetups.
Future Vision for the Group
It might be too early to consider moving away from docker-compose and to Kubernetes, but the DevOps working group needs to keep a tab on innovations that are happening in the k8s space. At the moment there might be too little in-depth knowledge of k8s in the Open edX community to make that move. Yet, we need to find members of the community who are willing to explore that space. A first conversation was started here.