Versioning in Managed Service for Apache Airflow™
Available Apache Airflow™ versions
Managed Service for Apache Airflow™ supports several Apache Airflow™ versions, each available on one of several Python versions. The following version combinations are supported:
| Version Apache Airflow™ | Python version |
|---|---|
| 2.8 | 3.8 |
| 2.8 | 3.10 |
| 2.10 | 3.10 |
| 2.10 | 3.12 |
| 3.0 | 3.12 |
| 3.1 | 3.12 |
Warning
The package contents in Apache Airflow™ may vary in different versions. Some packages available in earlier versions are not included in Apache Airflow™ 3.0 and higher. If required, you can install them when creating or updating a cluster.
Version update
In Managed Service for Apache Airflow™, version updates are performed according to the following rules:
- You can change your Python version to any supported for the current Apache Airflow™ version.
- You can change your Apache Airflow™ version to the next supported version.
Note that Managed Service for Apache Airflow™ does not allow the following update strategies:
- Dropping every other Apache Airflow™ version update. Each new Apache Airflow™ version requiring a metadata database migration, we recommend that you do your updates sequentially.
- Updating Python and Apache Airflow™ versions simultaneously. Custom dependencies may not work on newer versions of Python, so we recommend you to update your cluster components separately.
- Updating to Apache Airflow™ version 3.0. You can only create a new 3.0 cluster.
With that said, the recommended Managed Service for Apache Airflow™ cluster update strategy from Airflow=2.8, Python=3.8 to Airflow=2.10, Python.3=12 would be as follows:
- Update Python to 3.10, make sure the cluster is up and running with the dependencies in place.
- Update Apache Airflow™ to 2.10, make sure the cluster is up and running following the DB migration.
- Update Python to 3.12, test the dependencies once again.