{"action":"created","issue":{"url":"https://api.github.com/repos/kubernetes/kubernetes/issues/34160","repository_url":"https://api.github.com/repos/kubernetes/kubernetes","labels_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/34160/labels{/name}","comments_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/34160/comments","events_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/34160/events","html_url":"https://github.com/kubernetes/kubernetes/pull/34160","id":181306998,"number":34160,"title":"Proposal - Pod safety and termination guarantees","user":{"login":"smarterclayton","id":1163175,"avatar_url":"https://avatars.githubusercontent.com/u/1163175?v=3","gravatar_id":"","url":"https://api.github.com/users/smarterclayton","html_url":"https://github.com/smarterclayton","followers_url":"https://api.github.com/users/smarterclayton/followers","following_url":"https://api.github.com/users/smarterclayton/following{/other_user}","gists_url":"https://api.github.com/users/smarterclayton/gists{/gist_id}","starred_url":"https://api.github.com/users/smarterclayton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/smarterclayton/subscriptions","organizations_url":"https://api.github.com/users/smarterclayton/orgs","repos_url":"https://api.github.com/users/smarterclayton/repos","events_url":"https://api.github.com/users/smarterclayton/events{/privacy}","received_events_url":"https://api.github.com/users/smarterclayton/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/kubernetes/kubernetes/labels/cla:%20yes","name":"cla: yes","color":"bfe5bf"},{"url":"https://api.github.com/repos/kubernetes/kubernetes/labels/kind/design","name":"kind/design","color":"c7def8"},{"url":"https://api.github.com/repos/kubernetes/kubernetes/labels/release-note-label-needed","name":"release-note-label-needed","color":"db5a64"},{"url":"https://api.github.com/repos/kubernetes/kubernetes/labels/retest-not-required-docs-only","name":"retest-not-required-docs-only","color":"fbca04"},{"url":"https://api.github.com/repos/kubernetes/kubernetes/labels/size/L","name":"size/L","color":"ee9900"}],"state":"open","locked":false,"assignee":{"login":"thockin","id":5595220,"avatar_url":"https://avatars.githubusercontent.com/u/5595220?v=3","gravatar_id":"","url":"https://api.github.com/users/thockin","html_url":"https://github.com/thockin","followers_url":"https://api.github.com/users/thockin/followers","following_url":"https://api.github.com/users/thockin/following{/other_user}","gists_url":"https://api.github.com/users/thockin/gists{/gist_id}","starred_url":"https://api.github.com/users/thockin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thockin/subscriptions","organizations_url":"https://api.github.com/users/thockin/orgs","repos_url":"https://api.github.com/users/thockin/repos","events_url":"https://api.github.com/users/thockin/events{/privacy}","received_events_url":"https://api.github.com/users/thockin/received_events","type":"User","site_admin":false},"assignees":[{"login":"thockin","id":5595220,"avatar_url":"https://avatars.githubusercontent.com/u/5595220?v=3","gravatar_id":"","url":"https://api.github.com/users/thockin","html_url":"https://github.com/thockin","followers_url":"https://api.github.com/users/thockin/followers","following_url":"https://api.github.com/users/thockin/following{/other_user}","gists_url":"https://api.github.com/users/thockin/gists{/gist_id}","starred_url":"https://api.github.com/users/thockin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thockin/subscriptions","organizations_url":"https://api.github.com/users/thockin/orgs","repos_url":"https://api.github.com/users/thockin/repos","events_url":"https://api.github.com/users/thockin/events{/privacy}","received_events_url":"https://api.github.com/users/thockin/received_events","type":"User","site_admin":false}],"milestone":null,"comments":15,"created_at":"2016-10-06T01:51:24Z","updated_at":"2016-10-14T18:12:35Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/kubernetes/kubernetes/pulls/34160","html_url":"https://github.com/kubernetes/kubernetes/pull/34160","diff_url":"https://github.com/kubernetes/kubernetes/pull/34160.diff","patch_url":"https://github.com/kubernetes/kubernetes/pull/34160.patch"},"body":"This proposal describes how to evolve the Kubernetes cluster to provide\r\nat-most-one semantics for pod execution and to allow selective\r\nrelaxation where necessary to heal partitions.\r\n\r\nThis is a continuation of pod graceful deletion and completes the safety guarantees begun in that change (https://github.com/kubernetes/kubernetes/issues/1535)\r\n\r\n<!-- Reviewable:start -->\r\n---\r\nThis change is [<img src=\"https://reviewable.kubernetes.io/review_button.svg\" height=\"34\" align=\"absmiddle\" alt=\"Reviewable\"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/34160)\r\n<!-- Reviewable:end -->"},"comment":{"url":"https://api.github.com/repos/kubernetes/kubernetes/issues/comments/253879599","html_url":"https://github.com/kubernetes/kubernetes/pull/34160#issuecomment-253879599","issue_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/34160","id":253879599,"user":{"login":"smarterclayton","id":1163175,"avatar_url":"https://avatars.githubusercontent.com/u/1163175?v=3","gravatar_id":"","url":"https://api.github.com/users/smarterclayton","html_url":"https://github.com/smarterclayton","followers_url":"https://api.github.com/users/smarterclayton/followers","following_url":"https://api.github.com/users/smarterclayton/following{/other_user}","gists_url":"https://api.github.com/users/smarterclayton/gists{/gist_id}","starred_url":"https://api.github.com/users/smarterclayton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/smarterclayton/subscriptions","organizations_url":"https://api.github.com/users/smarterclayton/orgs","repos_url":"https://api.github.com/users/smarterclayton/repos","events_url":"https://api.github.com/users/smarterclayton/events{/privacy}","received_events_url":"https://api.github.com/users/smarterclayton/received_events","type":"User","site_admin":false},"created_at":"2016-10-14T18:12:34Z","updated_at":"2016-10-14T18:12:34Z","body":"Yeah we can document.  I think 2 is the comment I made about a way for an\nadmin to request fencing, which is probably setting a bit on the node that\nindicates that the node is lost / down / unavailable that the fencer can\nuse as an unambiguous signal.  The fencer can then try to fence the node -\nif it succeeds, it can take action and force delete pods or force delete\nthe node.  If it fails, it reports a condition (maybe).\n\nOn Fri, Oct 14, 2016 at 1:32 PM, Prashanth B <notifications@github.com>\nwrote:\n\n> I was operating on the assumption that if the admin deletes a node (either\n> from cloud or kubernetes) it means they have taken the necessary steps to\n> properly fence it. We would add a warning that said:\n>\n> PetSet identity guarantees can be broken if:\n>\n> 1. You have a custom controller that force deletes\n> 2. You delete a node that is still running a pet without properly shutting\n> it down/fencing it\n>\n> To fix 1, we could put in something like a generic pod/kubelet finalizer\n> mechanism post 1.5.\n> To fix 2, we would need a \"kubectl fence node\" or something to that\n> effect, but since we won't get that in 1.5, should we just document?\n>\n> —\n> You are receiving this because you authored the thread.\n> Reply to this email directly, view it on GitHub\n> <https://github.com/kubernetes/kubernetes/pull/34160#issuecomment-253868289>,\n> or mute the thread\n> <https://github.com/notifications/unsubscribe-auth/ABG_p8W8kkhb-w_OXKrF-ooGW5P5KFIaks5qz7y4gaJpZM4KPd1x>\n> .\n>\n"}}
{"actor":{"display_login":"smarterclayton"}}