Table of Contents |
---|
Target Dates
Django 4. |
2 |
Python 3.8
MySql 5.7
Ubuntu 20.04
Django 3.2
Arbi-BOM | ||
Elasticsearch 7.10 | ? | |
MongoDB 4.2 | ? | SRE |
Ongoing Upgrades
Keeping software up to date is important and can be quite difficult when multiple teams and code bases are involved. This page can be used as a reference for product + engineering and lists the major platform upgrades that are in progress. Please keep it up to date. Items are roughly listed from most active/urgent to least so.
...
A chart of our foundational dependencies, and their support windows is at Support Windows.
...
Django 3.
...
2 → 4.2
What is this?
Two of our production services are still using Python versions which have reached end of life. We’re deprecating one of them and upgrading the other one to 3.8, which is the newest stable version and will be supported until October 2024.
What do I do?
Respond to requests from the arch-bom and arbi-bom teams to schedule deployments on Python 3.8 to stage and production.
Where are we now?
Python 3.8 Upgrade Most services are now on 3.8 in production. There are just two services still needing updates/deprecation, and work to address those is in progress.
Ubuntu 20.04
Our primary operating system in production is Ubuntu 16.04 which is going out of support in April 2021
The recommended Ubuntu version is 20.04.
The supported Open edX installation (Native Installation) puts everything on a single Ubuntu box, so all services must run on the same version. Koa will release on December 9th, and will be supported for six months. Since 16.04 goes out of support in April 2021, we need Koa to run on 20.04. To get into Koa, the upgrade should happen before we create the Koa master branches on November 9th.
Deadline: November 9, 2020.
What do I do?
Each IDA owner will need to follow these guidelines to update their IDAsThe next LTS release of Django after the 3.2 LTS release we currently use. Django 3.2 support ends in April 2024, but we’d like to largely complete the upgrade before September 30, 2023 in order to be included in the Quince release so Open edX operators have time to upgrade before the end of support.
What do I do?
If you are part of the owning squad for one of the IDAs to be upgraded, we will reach out to you soon with next steps.
Where are we now? Upgrade base OS from Ubuntu 16.04 to 20.04
...
Service
...
Ubuntu Version
...
Notes
...
...
Everything Else
...
16.04
New Relic dashboard tracking Ubuntu versions in production: Ubuntu/MySQL Versions (internal edX access only).
PSRE Epic: https://openedx.atlassian.net/browse/PSRE-300
We plan to complete these upgrades in time for the Koa release.
MySQL 5.7
...
Our primary relational database systems are Aurora 5.6 and MySQL 5.6 which are going out of support in April 2021.
...
The project has been kicked off and is tracked in Django 4.2 Upgrade .
Elasticsearch 7.8 → 7.10
What is this?
Most of our services which perform full-text search use Elasticsearch 7.8, which reaches EOL on . We are upgrading to the latest release currently supported by the AWS hosted offering, which will be supported through .
What do I do?
Each IDA owner will need to follow these guidelines to update their IDAsPlease respond promptly to any requests from SRE related to the upgrade.
Where are we now? Upgrade RDS Databases from MySQL 5.6 to 5.7
...
Service
...
MySQL Version
...
Everything
...
5.6.x
New Relic dashboard tracking MySQL versions in production: Ubuntu/MySQL Versions (internal edX access only).
...
The project has been kicked off and is tracked in Elasticsearch 7.10 .
Mongo 4.0 → 4.2
What is this?
Most of our services which perform full-text search use the 4-year-old Elasticsearch 1, which is still supported by AWS but not upstream. We’re edx-platform and cs-comments-service store some data structures in MongoDB 4.0, which reaches EOL in April 2022 . We are upgrading to the latest release compatible with our current backup solution, which doesn’t yet have an announced end of life date.
What do I do?
Respond Please respond promptly to any requests from the Elasticsearch Upgrade Task Force SRE related to the upgrade.
Where are we now?
Per-project status: Elasticsearch Ownership and Rollout
This is being actively worked on as a blended development project with a team from Raccoon Gang. The goal is to be finished by mid-October. See [BD-19, BD-20] Elasticsearch & Haystack Upgrades for details.
...
The project has been kicked off and is tracked in Mongo 4.2 Upgrade .
Node.js 12 → 14
What is this?
The next LTS release of Django after the 2.2 LTS release we currently use. Django 2.2 support ends in April 2022, but we’d like to largely complete the upgrade before October 15, 2021 in order to be included in the Maple release so Open edX operators have time to upgrade before the end of supportMany of our services use Node.js 12 to bundle and optimize static assets such as JavaScript files, and this version of Node.js will reach EOL on . We are upgrading to the newest release which is currently considered stable enough for LTS support, which will reach EOL on .
What do I do?
If you are part of the owning squad for one of the IDAs to be upgraded, we will reach out to you soon with next stepsStand by for further guidance from the still-forming front end working group.
Where are we now?
The project has been kicked off and is tracked in Django 3.2 UpgradeWe have a tentative owner for coordinating the upgrade, but the process is just starting.
Child Pages
Child pages (Children Display) | ||||
---|---|---|---|---|
|
...