Skip to content
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

Mention RPM upgrade path for prior patch releases #21898

Closed

Conversation

saschagrunert
Copy link
Member

There is a manual intervention needed for upgrading from previous patch
releases because the kubernetes-cni package got obsoleted. The docs now
mention that and provide a possible workaround.

Depends on kubernetes/release#1367

@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/S Denotes a PR that changes 10-29 lines, ignoring generated files. labels Jun 19, 2020
@k8s-ci-robot k8s-ci-robot added the sig/docs Categorizes an issue or PR as relevant to SIG Docs. label Jun 19, 2020
@saschagrunert saschagrunert force-pushed the install-upgrade branch 2 times, most recently from 3f4531f to a2d2ff8 Compare June 19, 2020 06:30
@netlify
Copy link

netlify bot commented Jun 19, 2020

Deploy preview for kubernetes-io-master-staging ready!

Built with commit f74a5ae

https://deploy-preview-21898--kubernetes-io-master-staging.netlify.app

@netlify
Copy link

netlify bot commented Jun 19, 2020

Deploy preview for kubernetes-io-master-staging ready!

Built with commit b4d8718

https://deploy-preview-21898--kubernetes-io-master-staging.netlify.app

@saschagrunert saschagrunert force-pushed the install-upgrade branch 3 times, most recently from 6bac111 to 2286971 Compare June 19, 2020 06:41
@xmudrii
Copy link
Member

xmudrii commented Jun 19, 2020

@saschagrunert Should we also consider adding a note to the upgrade docs: https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/? Or should that be done by the SCL/kubeadm team instead?

@saschagrunert
Copy link
Member Author

@saschagrunert Should we also consider adding a note to the upgrade docs: https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/? Or should that be done by the SCL/kubeadm team instead?

Hm, do you think we could handle the removal of the package directly in kubeadm? This way the user would not have a need for a manual intervention. I'll check if I can find something.

@xmudrii
Copy link
Member

xmudrii commented Jun 19, 2020

Hm, do you think we could handle the removal of the package directly in kubeadm? This way the user would not have a need for a manual intervention. I'll check if I can find something.

I'm not really sure, but AFAIK, kubeadm intentionally doesn't manage any packages and instead just focuses on the Kubernetes (components) itself. From the docs:

kubeadm will not install or manage kubelet or kubectl for you, so you will need to ensure they match the version of the Kubernetes control plane you want kubeadm to install for you.

We should probably ping someone from SCL and check what they would think about this idea.

@saschagrunert
Copy link
Member Author

Hm, do you think we could handle the removal of the package directly in kubeadm? This way the user would not have a need for a manual intervention. I'll check if I can find something.

I'm not really sure, but AFAIK, kubeadm intentionally doesn't manage any packages and instead just focuses on the Kubernetes (components) itself. From the docs:

Good point, I'll focus now on updating the mentioned docs too.

@saschagrunert saschagrunert force-pushed the install-upgrade branch 2 times, most recently from 0f86c43 to 37ee0de Compare June 19, 2020 08:40
Comment on lines 40 to 45
- If you're running CentOS, RHEL, Fedora or directly use the
[yum.k8s.io](https://yum.k8s.io) repositories: The `kubernetes-cni` package
was obsoleted with the release of Kubernetes v1.18.4, v1.17.7 and v1.16.11 on
June 17th, 2020. This means in case of doing an upgrade from prior versions,
please ensure that the package gets **manually** removed before doing the
upgrade by executing `yum remove kubernetes-cni-0.7.5-0`.
Copy link
Member

Choose a reason for hiding this comment

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

@saschagrunert I've thought about this a bit more. I can't test this because I don't have any custom RPM repo, so this is based on the assumption and has to be verified.

Looking at the output from your PR to fix packages (kubernetes/release#1367 (comment)), once the kubernetes-cni package is gone, kubelet will be gone too, and mostly like kubeadm as well (because kubeadm has a dependency on kubernetes-cni).

kubeadm is not a big deal because the first step is to install the latest one, but kubelet is supposed to be installed after kubeadm upgrade (as per docs). If there's no kubelet on the instance, can kubeadm upgrade work or is it going to fail? I'd say it might fail because there's no kubelet to schedule all the new static pods, but I'm not sure about that.

If that's true, we might have to update docs to mention this as well.

@jimangel
Copy link
Member

/assign
/assign @neolit123

doing an upgrade from prior versions, please ensure that the package gets
**manually** removed before doing the upgrade by executing `yum remove
kubernetes-cni-0.7.5-0`.
{{</ warning >}}
Copy link
Member

Choose a reason for hiding this comment

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

/cc @sftim
PTAL on the wording, AFAIK we do not include dates and PATCH version information in notes/warnings.

Copy link
Contributor

Choose a reason for hiding this comment

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

nit: Again, will this or does this information appear in the release notes?

Copy link
Member Author

@saschagrunert saschagrunert Jun 22, 2020

Choose a reason for hiding this comment

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

I think we can just state that it is obsolete from now own, but we still have to mention from which upgrade path (changed the wording a bit).

We do not mention the obsoletion in the release notes, but I could follow-up with a dedicated PR to add it to them.

@k8s-ci-robot k8s-ci-robot requested a review from sftim June 19, 2020 12:44
@neolit123
Copy link
Member

/sig cluster-lifecycle

@k8s-ci-robot k8s-ci-robot added the sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. label Jun 19, 2020
@neolit123
Copy link
Member

neolit123 commented Jun 19, 2020

how are, for example 1.18 users / readers of the 1.18 docs, supposed to know about this complication?
does that mean we need to backport this change to the k/website branches in the support skew?

@jimangel
Copy link
Member

@neolit123 , I do think this meets the rare criteria to be back ported to all impacted release docs.

Has there been consensus from sig-release that this is the path forward?

/cc @tpepper @justaugustus

There is a manual intervention needed for upgrading from previous patch
releases because the kubernetes-cni package got obsoleted. The docs now
mention that and provide a possible workaround.

Signed-off-by: Sascha Grunert <sgrunert@suse.com>
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
To complete the pull request process, please assign jimangel
You can assign the PR to them by writing /assign @jimangel in a comment when ready.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@saschagrunert
Copy link
Member Author

/hold

Rethinking the overall solution.

@k8s-ci-robot k8s-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jun 22, 2020
@saschagrunert
Copy link
Member Author

Closing, we decided to reintroduce kubernetes-cni.
/close

@k8s-ci-robot
Copy link
Contributor

@saschagrunert: Closed this PR.

In response to this:

Closing, we decided to reintroduce kubernetes-cni.
/close

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@saschagrunert saschagrunert deleted the install-upgrade branch June 23, 2020 17:12
@neolit123
Copy link
Member

note another part of the docs was already amended with the package change for multiple languages:
https://github.com/kubernetes/website/pull/21467/files

@saschagrunert
Copy link
Member Author

note another part of the docs was already amended with the package change for multiple languages:
https://github.com/kubernetes/website/pull/21467/files

Thank you for the hint, I can follow up on that after we re-created the packages.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. language/en Issues or PRs related to English language sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. sig/docs Categorizes an issue or PR as relevant to SIG Docs. size/S Denotes a PR that changes 10-29 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants