{"action":"created","issue":{"url":"https://api.github.com/repos/kubernetes/kubernetes/issues/72129","repository_url":"https://api.github.com/repos/kubernetes/kubernetes","labels_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/72129/labels{/name}","comments_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/72129/comments","events_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/72129/events","html_url":"https://github.com/kubernetes/kubernetes/issues/72129","id":391886563,"node_id":"MDU6SXNzdWUzOTE4ODY1NjM=","number":72129,"title":"Race condition between setting node taints and scheduling","user":{"login":"krzysztof-jastrzebski","id":29974120,"node_id":"MDQ6VXNlcjI5OTc0MTIw","avatar_url":"https://avatars0.githubusercontent.com/u/29974120?v=4","gravatar_id":"","url":"https://api.github.com/users/krzysztof-jastrzebski","html_url":"https://github.com/krzysztof-jastrzebski","followers_url":"https://api.github.com/users/krzysztof-jastrzebski/followers","following_url":"https://api.github.com/users/krzysztof-jastrzebski/following{/other_user}","gists_url":"https://api.github.com/users/krzysztof-jastrzebski/gists{/gist_id}","starred_url":"https://api.github.com/users/krzysztof-jastrzebski/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/krzysztof-jastrzebski/subscriptions","organizations_url":"https://api.github.com/users/krzysztof-jastrzebski/orgs","repos_url":"https://api.github.com/users/krzysztof-jastrzebski/repos","events_url":"https://api.github.com/users/krzysztof-jastrzebski/events{/privacy}","received_events_url":"https://api.github.com/users/krzysztof-jastrzebski/received_events","type":"User","site_admin":false},"labels":[{"id":105146071,"node_id":"MDU6TGFiZWwxMDUxNDYwNzE=","url":"https://api.github.com/repos/kubernetes/kubernetes/labels/kind/bug","name":"kind/bug","color":"e11d21","default":false},{"id":173493665,"node_id":"MDU6TGFiZWwxNzM0OTM2NjU=","url":"https://api.github.com/repos/kubernetes/kubernetes/labels/sig/node","name":"sig/node","color":"d2b48c","default":false},{"id":125550211,"node_id":"MDU6TGFiZWwxMjU1NTAyMTE=","url":"https://api.github.com/repos/kubernetes/kubernetes/labels/sig/scheduling","name":"sig/scheduling","color":"d2b48c","default":false}],"state":"open","locked":false,"assignee":{"login":"k82cn","id":18107181,"node_id":"MDQ6VXNlcjE4MTA3MTgx","avatar_url":"https://avatars0.githubusercontent.com/u/18107181?v=4","gravatar_id":"","url":"https://api.github.com/users/k82cn","html_url":"https://github.com/k82cn","followers_url":"https://api.github.com/users/k82cn/followers","following_url":"https://api.github.com/users/k82cn/following{/other_user}","gists_url":"https://api.github.com/users/k82cn/gists{/gist_id}","starred_url":"https://api.github.com/users/k82cn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/k82cn/subscriptions","organizations_url":"https://api.github.com/users/k82cn/orgs","repos_url":"https://api.github.com/users/k82cn/repos","events_url":"https://api.github.com/users/k82cn/events{/privacy}","received_events_url":"https://api.github.com/users/k82cn/received_events","type":"User","site_admin":false},"assignees":[{"login":"k82cn","id":18107181,"node_id":"MDQ6VXNlcjE4MTA3MTgx","avatar_url":"https://avatars0.githubusercontent.com/u/18107181?v=4","gravatar_id":"","url":"https://api.github.com/users/k82cn","html_url":"https://github.com/k82cn","followers_url":"https://api.github.com/users/k82cn/followers","following_url":"https://api.github.com/users/k82cn/following{/other_user}","gists_url":"https://api.github.com/users/k82cn/gists{/gist_id}","starred_url":"https://api.github.com/users/k82cn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/k82cn/subscriptions","organizations_url":"https://api.github.com/users/k82cn/orgs","repos_url":"https://api.github.com/users/k82cn/repos","events_url":"https://api.github.com/users/k82cn/events{/privacy}","received_events_url":"https://api.github.com/users/k82cn/received_events","type":"User","site_admin":false}],"milestone":null,"comments":19,"created_at":"2018-12-17T20:56:57Z","updated_at":"2018-12-21T19:57:09Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"**What happened**:\r\nPod was scheduled on newly created node with condition Ready equal to false.\r\n**What you expected to happen**:\r\nPod shouldn't be scheduled until Ready condition is true.\r\n**How to reproduce it (as minimally and precisely as possible)**:\r\nRun cluster with Cluster Autoscaler enabled. Add pod which needs to scale up cluster.\r\nWatch nodes and pods objects when new node is added. \r\n**Anything else we need to know?**:\r\nScheduler is not using conditions anymore but it uses taints instead (like node.kubernetes.io/not-ready) which are not added when Kubelet registers node for the  first time:\r\nhttps://github.com/kubernetes/kubernetes/blob/2b96a6074243cf39293fc294b20d3b8c97d3daca/pkg/kubelet/kubelet_node_status.go#L211\r\nAfter some time taints are added but pod can be already scheduled. \r\n\r\n**Environment**:\r\n- Kubernetes version (use `kubectl version`): 1.12.3-gke.1\r\n- Cloud provider or hardware configuration: GKE\r\n\r\n\r\n<!-- DO NOT EDIT BELOW THIS LINE -->\r\n/kind bug"},"comment":{"url":"https://api.github.com/repos/kubernetes/kubernetes/issues/comments/449484297","html_url":"https://github.com/kubernetes/kubernetes/issues/72129#issuecomment-449484297","issue_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/72129","id":449484297,"node_id":"MDEyOklzc3VlQ29tbWVudDQ0OTQ4NDI5Nw==","user":{"login":"szuecs","id":50872,"node_id":"MDQ6VXNlcjUwODcy","avatar_url":"https://avatars2.githubusercontent.com/u/50872?v=4","gravatar_id":"","url":"https://api.github.com/users/szuecs","html_url":"https://github.com/szuecs","followers_url":"https://api.github.com/users/szuecs/followers","following_url":"https://api.github.com/users/szuecs/following{/other_user}","gists_url":"https://api.github.com/users/szuecs/gists{/gist_id}","starred_url":"https://api.github.com/users/szuecs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/szuecs/subscriptions","organizations_url":"https://api.github.com/users/szuecs/orgs","repos_url":"https://api.github.com/users/szuecs/repos","events_url":"https://api.github.com/users/szuecs/events{/privacy}","received_events_url":"https://api.github.com/users/szuecs/received_events","type":"User","site_admin":false},"created_at":"2018-12-21T19:57:09Z","updated_at":"2018-12-21T19:57:09Z","author_association":"CONTRIBUTOR","body":"@Huang-Wei our use case is mainly on node bootstrap and we want to be sure that NoExecute and NoSchedule is active from the startup, otherwise you create race conditions that can lead to production outages. What do you recommend to achieve this?"}}
{"actor":{"display_login":"szuecs"}}