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

kubeadm: add note about 'upgrade apply --config' #16703

Merged

Conversation

neolit123
Copy link
Member

/kind cleanup
/priority important-longterm

fixes kubernetes/kubeadm#1801

/assign @fabriziopandini @rosti

@k8s-ci-robot k8s-ci-robot added kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels Oct 5, 2019
@neolit123
Copy link
Member Author

/sig cluster-lifecycle

@k8s-ci-robot k8s-ci-robot added sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. labels Oct 5, 2019
@k8s-ci-robot k8s-ci-robot added language/en Issues or PRs related to English language sig/docs Categorizes an issue or PR as relevant to SIG Docs. labels Oct 5, 2019
@neolit123 neolit123 force-pushed the 1.17-kubeadm-upgrade-config-note branch from e3baddf to 377abf2 Compare October 5, 2019 18:57
@netlify
Copy link

netlify bot commented Oct 5, 2019

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

Built with commit e3baddf

https://deploy-preview-16703--kubernetes-io-master-staging.netlify.com

@netlify
Copy link

netlify bot commented Oct 5, 2019

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

Built with commit 2192ca2

https://deploy-preview-16703--kubernetes-io-master-staging.netlify.com

Copy link
Member

@fabriziopandini fabriziopandini left a comment

Choose a reason for hiding this comment

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

@neolit123 thanks for this PR!
Only one suggestion in order to better support users while a new solution is implemented for addressing such use cases

{{< note >}}
The commands `kubeadm upgrade apply` and `kubeadm upgrade plan` have the legacy `--config`
flag which makes it possible to reconfigure the cluster, while performing planning or upgrade of that particular
control-plane node. Usage of the `--config` flag is not recommended and can lead to unexpected results.
Copy link
Member

Choose a reason for hiding this comment

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

I think we should document when this workaround works and how to use it, because ATM this is the best/easiest alternative in the user's hands (e.g updating contol-plane static pods; the command should be run on all the controlplane node)
Usage of the --config flag should not be recommended for the other use cases.
+1 for hinting about replacement with a better solution in future releases

Copy link
Contributor

Choose a reason for hiding this comment

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

nit: “Usage of the --config flag is not recommended and can lead to unexpected results.” is using the passive voice / doesn't address the reader as “you”.

Copy link
Member Author

Choose a reason for hiding this comment

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

@fabriziopandini i don't even know when --config works and when it's dangerous. we don't have tests for it. unless we enumerate the list of viable usages, i suggest that we keep this note as is.

@sftim suggestions for rewording?

Copy link
Member

Choose a reason for hiding this comment

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

As far as I know, it works fine for changes to extra-args for control plane components, while I'm not sure about everything else.

But, If overall we feel we don't know when the flag it is dangerous then might be we should give a more generic warning "Please be aware that the upgrade workflow was not designed for this scenario and there were reports of unexpected results"

Copy link
Member Author

Choose a reason for hiding this comment

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

As far as I know, it works fine for changes to extra-args for control plane components, while I'm not sure about everything else.

yes, but for single CP scenarios only.
for multi-CP changes do not automatically propagate.

"Please be aware that the upgrade workflow was not designed for this scenario and there were reports of unexpected results"

i can update the comment.

{{< note >}}
The commands `kubeadm upgrade apply` and `kubeadm upgrade plan` have the legacy `--config`
flag which makes it possible to reconfigure the cluster, while performing planning or upgrade of that particular
control-plane node. Usage of the `--config` flag is not recommended and can lead to unexpected results.
Copy link
Contributor

Choose a reason for hiding this comment

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

nit: “Usage of the --config flag is not recommended and can lead to unexpected results.” is using the passive voice / doesn't address the reader as “you”.

Copy link
Contributor

@zacharysarah zacharysarah left a comment

Choose a reason for hiding this comment

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

@neolit123 👋 Thanks for the PR! One style nit from me.

@neolit123 neolit123 force-pushed the 1.17-kubeadm-upgrade-config-note branch from 377abf2 to 2192ca2 Compare October 10, 2019 21:10
@neolit123
Copy link
Member Author

@zacharysarah @fabriziopandini @sftim
updated as per the discussion here:
#16703 (comment)

@zacharysarah
Copy link
Contributor

zacharysarah commented Oct 11, 2019

@neolit123 Approving, @fabriziopandini can /lgtm if he's satisfied.

EDIT: Sorry, I just caught 1.17 in the branch name. Is this intended for the 1.17 release?

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Oct 11, 2019
@zacharysarah
Copy link
Contributor

/approve cancel

@k8s-ci-robot k8s-ci-robot removed the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Oct 11, 2019
@fabriziopandini
Copy link
Member

@neolit123 thanks!
/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Oct 12, 2019
@zparnold
Copy link
Member

/approve

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Oct 14, 2019
@zparnold
Copy link
Member

/approve cancel

@k8s-ci-robot k8s-ci-robot removed the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Oct 14, 2019
@zparnold zparnold changed the base branch from master to dev-1.17 October 14, 2019 22:15
@k8s-ci-robot k8s-ci-robot added size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. and removed size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. labels Oct 14, 2019
@zparnold zparnold changed the base branch from dev-1.17 to master October 14, 2019 22:15
@k8s-ci-robot k8s-ci-robot added size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. and removed size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. labels Oct 14, 2019
@zparnold
Copy link
Member

@neolit123 Can you base this change on the dev-1.17 branch?

@neolit123
Copy link
Member Author

@zparnold

Can you base this change on the dev-1.17 branch?

this change is for older versions of k8s and not only 1.17.

@neolit123
Copy link
Member Author

@zparnold
hi, could you take another look here

this change is for older versions of k8s and not only 1.17.

thanks.

@jimangel
Copy link
Member

jimangel commented Nov 6, 2019

/lgtm
/approve

@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: jimangel

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

The pull request process is described 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

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Nov 6, 2019
@k8s-ci-robot k8s-ci-robot merged commit a51d714 into kubernetes:master Nov 6, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. language/en Issues or PRs related to English language lgtm "Looks good to me", indicates that a PR is ready to be merged. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. 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/XS Denotes a PR that changes 0-9 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

kubeadm upgrade fails when hostname != node name and when kubeadm config is used
8 participants