{"action":"created","issue":{"url":"https://api.github.com/repos/kubernetes/kubernetes/issues/6099","repository_url":"https://api.github.com/repos/kubernetes/kubernetes","labels_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/6099/labels{/name}","comments_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/6099/comments","events_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/6099/events","html_url":"https://github.com/kubernetes/kubernetes/issues/6099","id":64854852,"number":6099,"title":"Node upgrades: in-place upgrades","user":{"login":"mbforbes","id":1170062,"avatar_url":"https://avatars.githubusercontent.com/u/1170062?v=3","gravatar_id":"","url":"https://api.github.com/users/mbforbes","html_url":"https://github.com/mbforbes","followers_url":"https://api.github.com/users/mbforbes/followers","following_url":"https://api.github.com/users/mbforbes/following{/other_user}","gists_url":"https://api.github.com/users/mbforbes/gists{/gist_id}","starred_url":"https://api.github.com/users/mbforbes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbforbes/subscriptions","organizations_url":"https://api.github.com/users/mbforbes/orgs","repos_url":"https://api.github.com/users/mbforbes/repos","events_url":"https://api.github.com/users/mbforbes/events{/privacy}","received_events_url":"https://api.github.com/users/mbforbes/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/kubernetes/kubernetes/labels/area/cluster-lifecycle","name":"area/cluster-lifecycle","color":"d4c5f9"},{"url":"https://api.github.com/repos/kubernetes/kubernetes/labels/area/upgrade","name":"area/upgrade","color":"bfd4f2"},{"url":"https://api.github.com/repos/kubernetes/kubernetes/labels/priority/P2","name":"priority/P2","color":"fbca04"},{"url":"https://api.github.com/repos/kubernetes/kubernetes/labels/team/node","name":"team/node","color":"d2b48c"}],"state":"open","locked":false,"assignee":{"login":"fabioy","id":6294975,"avatar_url":"https://avatars.githubusercontent.com/u/6294975?v=3","gravatar_id":"","url":"https://api.github.com/users/fabioy","html_url":"https://github.com/fabioy","followers_url":"https://api.github.com/users/fabioy/followers","following_url":"https://api.github.com/users/fabioy/following{/other_user}","gists_url":"https://api.github.com/users/fabioy/gists{/gist_id}","starred_url":"https://api.github.com/users/fabioy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fabioy/subscriptions","organizations_url":"https://api.github.com/users/fabioy/orgs","repos_url":"https://api.github.com/users/fabioy/repos","events_url":"https://api.github.com/users/fabioy/events{/privacy}","received_events_url":"https://api.github.com/users/fabioy/received_events","type":"User","site_admin":false},"assignees":[{"login":"fabioy","id":6294975,"avatar_url":"https://avatars.githubusercontent.com/u/6294975?v=3","gravatar_id":"","url":"https://api.github.com/users/fabioy","html_url":"https://github.com/fabioy","followers_url":"https://api.github.com/users/fabioy/followers","following_url":"https://api.github.com/users/fabioy/following{/other_user}","gists_url":"https://api.github.com/users/fabioy/gists{/gist_id}","starred_url":"https://api.github.com/users/fabioy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fabioy/subscriptions","organizations_url":"https://api.github.com/users/fabioy/orgs","repos_url":"https://api.github.com/users/fabioy/repos","events_url":"https://api.github.com/users/fabioy/events{/privacy}","received_events_url":"https://api.github.com/users/fabioy/received_events","type":"User","site_admin":false}],"milestone":null,"comments":7,"created_at":"2015-03-27T21:27:52Z","updated_at":"2016-07-15T19:54:16Z","closed_at":null,"body":"See issue #6079 as the roll-up for node upgrades.\r\n\r\nThis issue is to do an in-place upgrade of the kubelet and kube-proxy binaries while a node is running. Docker and the kernel/OS are not changed. This upgrade can only be performed if the requested new version of kubelet and kube-proxy are compatible with the existing Docker and kernel/OS version; see #4855 for more details on versioning.\r\n\r\nWe simply want to download the new (kube*) node binaries, stop the old ones, and start the new ones (#1573). That way, the pods continue to run, and we don't have to migrate any storage. Possible complications include:\r\n- #3333 leftover state or configuration of the VM will cause unwanted side effects after the upgrade is complete\r\n- the configuration of the node (environment variables, flags passed to kube*, something salt does) might change between kube* versions\r\n- when kube* binaries are stopped, the master might think the pods are all gone, and schedule new copies of the pods elsewhere throughout the cluster\r\n\r\nThe following requirements follow:\r\n- smart salt stanzas: idempotency, can run on a previously salted node\r\n- must have an upgrade grace period where the pods are considered alive even if they cannot be health-checked by kubernetes\r\n\r\nThe tests for this feature are tracked in #7256.\r\n\r\nReferences:\r\n- #4855 cluster versioning\r\n- #3333 lively debate about kubelet & kube-proxy upgrades, specifically in-place _vs_ fresh-node\r\n- #1573 online kubelet upgrades; the original issue for this work item"},"comment":{"url":"https://api.github.com/repos/kubernetes/kubernetes/issues/comments/233054297","html_url":"https://github.com/kubernetes/kubernetes/issues/6099#issuecomment-233054297","issue_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/6099","id":233054297,"user":{"login":"davidopp","id":8264113,"avatar_url":"https://avatars.githubusercontent.com/u/8264113?v=3","gravatar_id":"","url":"https://api.github.com/users/davidopp","html_url":"https://github.com/davidopp","followers_url":"https://api.github.com/users/davidopp/followers","following_url":"https://api.github.com/users/davidopp/following{/other_user}","gists_url":"https://api.github.com/users/davidopp/gists{/gist_id}","starred_url":"https://api.github.com/users/davidopp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidopp/subscriptions","organizations_url":"https://api.github.com/users/davidopp/orgs","repos_url":"https://api.github.com/users/davidopp/repos","events_url":"https://api.github.com/users/davidopp/events{/privacy}","received_events_url":"https://api.github.com/users/davidopp/received_events","type":"User","site_admin":false},"created_at":"2016-07-15T19:54:16Z","updated_at":"2016-07-15T19:54:16Z","body":"(To clarify: the \"it\" is in-place node upgrade. Whether it will guarantee to not kill running pods is TBD.)\r\n"}}
{"actor":{"display_login":"davidopp"}}