Upgrade
Here we cover how to upgrade to the latest Longhorn from all previous releases.
There are no deprecated or incompatible changes introduced in v1.7.3.
Starting with v1.5.0, Longhorn only allows upgrades from supported versions. When you attempt to upgrade from an unsupported version, the operation automatically fails but you can revert to the previously installed version without any service interruption or downtime.
Moreover, Longhorn does not support downgrades to earlier versions. This restriction helps prevent unexpected system behavior and issues associated with function incompatibility, deprecation, or removal.
Warning:
- Once you successfully upgrade to v1.7.3, you will not be allowed to revert to the previously installed version.
- The Downgrade Prevention feature was introduced in v1.5.0 so Longhorn is unable to prevent downgrade attempts in older versions. However, downgrading is completely unsupported and is therefore not recommended.
The following table outlines the supported upgrade paths.
Current version | Target version | Supported | Example |
---|---|---|---|
x.y.* | x.(y+1).* | ✓ | v1.4.2 to v1.5.1 |
x.y.* | x.y.(*+n) | ✓ | v1.5.0 to v1.5.1 |
x.y1.* | (x+1).y.* | ✓ | v1.30.0 to v2.0.0 |
x.(y-1).* | x.(y+1).* | X | v1.3.3 to v1.5.1 |
x.(y-2).* | x.(y+1).* | X | v1.2.6 to v1.5.1 |
Automated checks are only performed on some upgrade paths, and the pre-upgrade checker may not cover some scenarios. Manual checks, performed using either kubectl or the UI, are recommended for these schenarios. You can take mitigating actions or defer the upgrade until issues are addressed.
There are normally two steps in the upgrade process: first upgrade Longhorn manager to the latest version, then manually upgrade the Longhorn engine to the latest version using the latest Longhorn manager.
After Longhorn Manager is upgraded, Longhorn Engine also needs to be upgraded using the Longhorn UI.
Since Longhorn v1.1.1, we provide an option to help you automatically upgrade engines
With the introduction of the new label-driven Recurring Job
feature, Longhorn has removed the RecurringJobs
field in the Volume Spec and planned to deprecate RecurringJobs
in the StorageClass.
During the upgrade, Longhorn will automatically:
recurringJobs
field in Volume Spec and convert them to the volume labels.recurringJobs
in the StorageClass and convert them to the new recurringJobSelector
parameter.Visit Recurring Snapshots and Backups for more information about the new Recurring Job
feature.
Visit Some old instance manager pods are still running after upgrade for more information about the cleanup strategy of instance manager pods during upgrade.
If you have any issues, please report it at https://github.com/longhorn/longhorn/issues and include your backup yaml files as well as manager logs.
Longhorn only allows upgrades from any patch version of the last minor release before the new major version. For example, if v1.3.0 is the last minor version before v2.0, you can upgrade from any patch version of v1.3.0 to any patch version of v2.0. ↩︎
© 2019-2024 Longhorn Authors | Documentation Distributed under CC-BY-4.0
© 2024 The Linux Foundation. All rights reserved. The Linux Foundation has registered trademarks and uses trademarks. For a list of trademarks of The Linux Foundation, please see our Trademark Usage page.