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

Rolling node update #5511

Closed
erictune opened this issue Mar 16, 2015 · 11 comments
Closed

Rolling node update #5511

erictune opened this issue Mar 16, 2015 · 11 comments
Labels
area/kubectl lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. priority/awaiting-more-evidence Lowest priority. Possibly useful, but not yet enough support to actually get it done. sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle.

Comments

@erictune
Copy link
Member

Capturing conversation with @bgrant0607 just now.

New feature for kubectl:
when you run kubectl rollingnodeupdate --exec myprogram --success_label=k3=v3 --fail_label=k4-v4 --selector k1=v1,k2=v2, then it would do this:

for each node matching the selector and not matching success_label or fail_label:
   cleanly remove the node
   exec myprogram with env vars set like KUBE_NODE_NAME=nodename
   depending on the return code of myprogram, do one of the following:
     set success_label on the node and return the node to service
     set failed_label and don't retry the node and do return it to service.
     set failed_label and don't retry the node, and do not return it to service.
     set no label and retry the node and do return it to service.
     set no label and retry the node, and do not return it to service.

This cleanly separates the problem of taking a node in and out (which kubectl should know about) from what you might do to a node once it is removed. Things you might do when it is removed include making salt/chef/puppet update the node, reboot the node, delete the node, power it down and wait for a human to touch it, etc.

The clean removal steps are documented in docs/cluster_management.md under Maintenance on a node.

@erictune
Copy link
Member Author

@bgrant0607

@bgrant0607 bgrant0607 added priority/awaiting-more-evidence Lowest priority. Possibly useful, but not yet enough support to actually get it done. sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. labels Mar 16, 2015
@smarterclayton
Copy link
Contributor

@jwhonce

@smarterclayton
Copy link
Contributor

Oops, @pravisankar instead

@bgrant0607
Copy link
Member

cc @rvangent

@erictune
Copy link
Member Author

@mbforbes you are interested in node upgrades.

@zmerlynn
Copy link
Member

And me. I need to figure out how this would fit in with #5472, though, because I had intended rollingupdate to fall in under there eventually (with client calls).

@bgrant0607
Copy link
Member

See also #3885 and #6080

@bgrant0607
Copy link
Member

Like Deployment #1743, we'll eventually want this as a service, not just in the client #12143.

@bgrant0607 bgrant0607 changed the title kubectl rollingnodeupdate Rolling node update Sep 30, 2015
@fejta-bot
Copy link

Issues go stale after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.

Prevent issues from auto-closing with an /lifecycle frozen comment.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or @fejta.
/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Dec 16, 2017
@fejta-bot
Copy link

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or @fejta.
/lifecycle rotten
/remove-lifecycle stale

@k8s-ci-robot k8s-ci-robot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Jan 15, 2018
@bgrant0607
Copy link
Member

This isn't going to be done in kubernetes/kubernetes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/kubectl lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. priority/awaiting-more-evidence Lowest priority. Possibly useful, but not yet enough support to actually get it done. sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle.
Projects
None yet
Development

No branches or pull requests

8 participants