{"action":"created","issue":{"url":"https://api.github.com/repos/kubernetes/kops/issues/4415","repository_url":"https://api.github.com/repos/kubernetes/kops","labels_url":"https://api.github.com/repos/kubernetes/kops/issues/4415/labels{/name}","comments_url":"https://api.github.com/repos/kubernetes/kops/issues/4415/comments","events_url":"https://api.github.com/repos/kubernetes/kops/issues/4415/events","html_url":"https://github.com/kubernetes/kops/issues/4415","id":295914657,"number":4415,"title":"Kube-proxy running in QoS class Burstable, should be class Guaranteed","user":{"login":"horaceheaven","id":1926533,"avatar_url":"https://avatars1.githubusercontent.com/u/1926533?v=4","gravatar_id":"","url":"https://api.github.com/users/horaceheaven","html_url":"https://github.com/horaceheaven","followers_url":"https://api.github.com/users/horaceheaven/followers","following_url":"https://api.github.com/users/horaceheaven/following{/other_user}","gists_url":"https://api.github.com/users/horaceheaven/gists{/gist_id}","starred_url":"https://api.github.com/users/horaceheaven/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/horaceheaven/subscriptions","organizations_url":"https://api.github.com/users/horaceheaven/orgs","repos_url":"https://api.github.com/users/horaceheaven/repos","events_url":"https://api.github.com/users/horaceheaven/events{/privacy}","received_events_url":"https://api.github.com/users/horaceheaven/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"robinpercy","id":134012,"avatar_url":"https://avatars3.githubusercontent.com/u/134012?v=4","gravatar_id":"","url":"https://api.github.com/users/robinpercy","html_url":"https://github.com/robinpercy","followers_url":"https://api.github.com/users/robinpercy/followers","following_url":"https://api.github.com/users/robinpercy/following{/other_user}","gists_url":"https://api.github.com/users/robinpercy/gists{/gist_id}","starred_url":"https://api.github.com/users/robinpercy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/robinpercy/subscriptions","organizations_url":"https://api.github.com/users/robinpercy/orgs","repos_url":"https://api.github.com/users/robinpercy/repos","events_url":"https://api.github.com/users/robinpercy/events{/privacy}","received_events_url":"https://api.github.com/users/robinpercy/received_events","type":"User","site_admin":false},"assignees":[{"login":"robinpercy","id":134012,"avatar_url":"https://avatars3.githubusercontent.com/u/134012?v=4","gravatar_id":"","url":"https://api.github.com/users/robinpercy","html_url":"https://github.com/robinpercy","followers_url":"https://api.github.com/users/robinpercy/followers","following_url":"https://api.github.com/users/robinpercy/following{/other_user}","gists_url":"https://api.github.com/users/robinpercy/gists{/gist_id}","starred_url":"https://api.github.com/users/robinpercy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/robinpercy/subscriptions","organizations_url":"https://api.github.com/users/robinpercy/orgs","repos_url":"https://api.github.com/users/robinpercy/repos","events_url":"https://api.github.com/users/robinpercy/events{/privacy}","received_events_url":"https://api.github.com/users/robinpercy/received_events","type":"User","site_admin":false}],"milestone":null,"comments":6,"created_at":"2018-02-09T15:46:06Z","updated_at":"2018-05-16T00:12:50Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"### Context:\r\nDeploying a Kubernetes cluster with kops version `1.8.0` will provision kube-system pods e.g. kube-proxy, api-server in QoS class Burstable. There are some disadvantages to this even though these pods have the critical annotation applied to them and are static which reduces the likelihood of it being evicted by the kubelet, they are still high on the list to be evicted by system OOM killer, given the OOM score for class Burstable. \r\n\r\n### Preferred behavior:\r\nThe path I’d like to take on this is getting kube-proxy running in class guaranteed, and doing so there are some advantages it provides, such as, giving the scheduler a better picture of available resources on a node to schedule subsequent pods, isolation from bursty \"noisy neighbor\" processes or pods on the same node. However, applying class guarantee has drawbacks, such as setting a hard limit on CPU and memory, which I am prepared to take on the overhead of monitoring those limits overtime to ensure kube-proxy pods aren’t being starved.\r\n\r\n### Approach:\r\nSeeing that kops exposes custom configuration via the cluster spec, it might make sense to expose the CPU and memory request and limits there as well, but I’d like others to weigh in on which approach makes the most sense for the above use case. Whichever approach used for kube-proxy should be easily extended to other kops provisioned pods as well.\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/kubernetes/kops/issues/comments/389354101","html_url":"https://github.com/kubernetes/kops/issues/4415#issuecomment-389354101","issue_url":"https://api.github.com/repos/kubernetes/kops/issues/4415","id":389354101,"user":{"login":"fejta-bot","id":30488982,"avatar_url":"https://avatars1.githubusercontent.com/u/30488982?v=4","gravatar_id":"","url":"https://api.github.com/users/fejta-bot","html_url":"https://github.com/fejta-bot","followers_url":"https://api.github.com/users/fejta-bot/followers","following_url":"https://api.github.com/users/fejta-bot/following{/other_user}","gists_url":"https://api.github.com/users/fejta-bot/gists{/gist_id}","starred_url":"https://api.github.com/users/fejta-bot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fejta-bot/subscriptions","organizations_url":"https://api.github.com/users/fejta-bot/orgs","repos_url":"https://api.github.com/users/fejta-bot/repos","events_url":"https://api.github.com/users/fejta-bot/events{/privacy}","received_events_url":"https://api.github.com/users/fejta-bot/received_events","type":"User","site_admin":false},"created_at":"2018-05-16T00:12:50Z","updated_at":"2018-05-16T00:12:50Z","author_association":"NONE","body":"Issues go stale after 90d of inactivity.\nMark the issue as fresh with `/remove-lifecycle stale`.\nStale issues rot after an additional 30d of inactivity and eventually close.\n\nIf this issue is safe to close now please do so with `/close`.\n\nSend feedback to sig-testing, kubernetes/test-infra and/or [fejta](https://github.com/fejta).\n/lifecycle stale"}}
{"actor":{"display_login":"fejta-bot"}}