Skip to content

don't skip minor versions of k8s during upgrades #3259

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
May 16, 2025
Merged

don't skip minor versions of k8s during upgrades #3259

merged 4 commits into from
May 16, 2025

Conversation

paigecalvert
Copy link
Contributor

@paigecalvert paigecalvert commented May 15, 2025

@paigecalvert paigecalvert requested a review from a team as a code owner May 15, 2025 20:00
Copy link

netlify bot commented May 15, 2025

Deploy Preview for replicated-docs ready!

Name Link
🔨 Latest commit c9eaa96
🔍 Latest deploy log https://app.netlify.com/projects/replicated-docs/deploys/68265adc3159410008a24a6e
😎 Deploy Preview https://deploy-preview-3259--replicated-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Copy link

netlify bot commented May 15, 2025

Deploy Preview for replicated-docs-upgrade ready!

Name Link
🔨 Latest commit c9eaa96
🔍 Latest deploy log https://app.netlify.com/projects/replicated-docs-upgrade/deploys/68265adc5207da0008c2fd1d
😎 Deploy Preview https://deploy-preview-3259--replicated-docs-upgrade.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@replicated-ci replicated-ci added type::docs Improvements or additions to documentation type::feature labels May 15, 2025
@@ -1,3 +1,3 @@
:::important
Do not downgrade the Embedded Cluster version. This is not supported but is not prohibited, and it can lead to unexpected behavior.
Do not downgrade the Embedded Cluster version, downgrade the Kubernetes version, nor upgrade Kubernetes by more than one minor version at a time. These actions are not prevented by the Admin Console and can lead to unexpected behavior. For more information, see [Limitations](/vendor/embedded-overview#limitations) in _Embedded Cluster Overview_.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

^ updated this existing warning, which appears in the page on updating with EC, to include the info about how you also can't upgrade by more than one minor version

You must specify which version of Embedded Cluster to install. Each version of Embedded Cluster includes particular versions of components like KOTS (Admin Console) and OpenEBS.
Specify which version of Embedded Cluster to install. Each version of Embedded Cluster includes particular versions of components like KOTS (Admin Console) and OpenEBS.

Additionally, each version of Embedded Cluster also specifies a version of Kubernetes. For example, Embedded Cluster 2.1.3+k8s-1.30 uses Kubernetes 1.30, while 2.1.3+k8s-1.29 uses Kubernetes 1.29.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

^ added this paragraph


For a full list of versions, see the Embedded Cluster [releases page](https://github.com/replicatedhq/embedded-cluster/releases) in GitHub. It's recommended to keep this version as up to date as possible because Embedded Cluster is changing rapidly.
<DoNotDowngrade/>
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

^ added the warning about how you can't downgrade or bump k8s by more than one minor version. This may or may not be overly "loud" for this page. Main idea was to make it easier for vendors to find these limitations when they might be checking the reference on bumping EC versions in their config.

* **Downgrading Kubernetes not supported**: Embedded Cluster does not support downgrading Kubernetes. The admin console will not prevent end-users from attempting to downgrade Kubernetes if a more recent version of your application specifies a previous Embedded Cluster version. You must ensure that you do not promote new versions with previous Embedded Cluster versions.
* **Downgrading Embedded Cluster or Kubernetes not supported**: Downgrading the versions of Embedded Cluster or Kubernetes that are installed in the cluster is not supported. However, the Admin Console does not prevent end-users from attempting to downgrade Emebdded Cluster or Kubernetes. To avoid issues in customer installations that could be caused by downgrading, do not promote new application releases with Embedded Cluster or Kubernetes versions that are earlier than the versions used by the previous release.

* **Upgrading by more than one Kubernetes version at a time not supported**: Embedded Cluster does not support upgrading by more than one minor version of Kubernetes at a time. However, the Admin Console does not prevent end-users from attempting to upgrade to a release that specifies a Kubernetes version more than one minor version later than what is currently installed. To avoid issues that could be caused by skipping a minor version of Kubernetes, Replicated recommends that you select **Prevent this release from being skipped during upgrades** when you promote a new application release that increases the Kubernetes version. For more information about required releases, see [Properties](/vendor/releases-about#properties) in _About Channels and Releases_.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

^ new limitation

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

kubernetes itself doesn't support being upgraded by more than one version at a time. saying that instead of EC might make this look like an inherited limitation rather than one we put on the product ourselves.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah yeah, I see what you mean. I'll rephrase so that's clearer

@@ -113,7 +113,9 @@ Embedded Cluster has the following limitations:

* **KOTS Auto-GitOps workflow not supported**: Embedded Cluster does not support the KOTS Auto-GitOps workflow. If an end-user is interested in GitOps, consider the Helm install method instead. For more information, see [Install with Helm](/vendor/install-with-helm).

* **Downgrading Kubernetes not supported**: Embedded Cluster does not support downgrading Kubernetes. The admin console will not prevent end-users from attempting to downgrade Kubernetes if a more recent version of your application specifies a previous Embedded Cluster version. You must ensure that you do not promote new versions with previous Embedded Cluster versions.
* **Downgrading Embedded Cluster or Kubernetes not supported**: Downgrading the versions of Embedded Cluster or Kubernetes that are installed in the cluster is not supported. However, the Admin Console does not prevent end-users from attempting to downgrade Emebdded Cluster or Kubernetes. To avoid issues in customer installations that could be caused by downgrading, do not promote new application releases with Embedded Cluster or Kubernetes versions that are earlier than the versions used by the previous release.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

^ updated to explain how you can't downgrade either version

Also some rewording for clarity

* **Downgrading Kubernetes not supported**: Embedded Cluster does not support downgrading Kubernetes. The admin console will not prevent end-users from attempting to downgrade Kubernetes if a more recent version of your application specifies a previous Embedded Cluster version. You must ensure that you do not promote new versions with previous Embedded Cluster versions.
* **Downgrading Embedded Cluster or Kubernetes not supported**: Downgrading the versions of Embedded Cluster or Kubernetes that are installed in the cluster is not supported. However, the Admin Console does not prevent end-users from attempting to downgrade Emebdded Cluster or Kubernetes. To avoid issues in customer installations that could be caused by downgrading, do not promote new application releases with Embedded Cluster or Kubernetes versions that are earlier than the versions used by the previous release.

* **Upgrading by more than one Kubernetes version at a time not supported**: Embedded Cluster does not support upgrading by more than one minor version of Kubernetes at a time. However, the Admin Console does not prevent end-users from attempting to upgrade to a release that specifies a Kubernetes version more than one minor version later than what is currently installed. To avoid issues that could be caused by skipping a minor version of Kubernetes, Replicated recommends that you select **Prevent this release from being skipped during upgrades** when you promote a new application release that increases the Kubernetes version. For more information about required releases, see [Properties](/vendor/releases-about#properties) in _About Channels and Releases_.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

kubernetes itself doesn't support being upgraded by more than one version at a time. saying that instead of EC might make this look like an inherited limitation rather than one we put on the product ourselves.

@paigecalvert paigecalvert merged commit 358f971 into main May 16, 2025
5 checks passed
@paigecalvert paigecalvert deleted the 123615 branch May 16, 2025 01:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type::docs Improvements or additions to documentation type::feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants