2016-08-04 68 views
1

我設置我的Kubernetes莢CPU限制,但他們似乎沒有在谷歌集裝箱引擎版本所有正在運行的1.3.3Google容器引擎是否啓用CFS cpu配額?

閱讀https://github.com/kubernetes/kubernetes/tree/master/examples/runtime-constraints這有如下的kubelet啓用封頂CPU使用率:檢查過程

kubelet --cpu-cfs-quota=true 

然而,當登錄到我的羣集的節點之一時,它似乎kubelet缺少這個標誌:

/usr/local/bin/kubelet --api-servers=https://xxx.xxx.xxx.xxx --enable-debugging-handlers=true --cloud-provider=gce --config=/etc/kubernetes/manifests --allow-privileged=True --v=2 --cluster-dns=10.223.240.10 --cluster-domain=cluster.local --configure-cbr0=true --cgroup-root=/ --system-cgroups=/system --runtime-cgroups=/docker-daemon --kubelet-cgroups=/kubelet --node-labels=cloud.google.com/gke-nodepool=default-pool --babysit-daemons=true --eviction-hard=memory.available<100Mi 

是任何Google用戶能夠確認是否s是否啓用,如果不告訴我們爲什麼?現在看來我沒有選擇使用cpu限制,但是如果我不想使用它,我可以讓cpu限制超出我的規範。

回答

2

默認情況下,Google Container Engine不支持CPU配額。如果您想使用CPU配額,您可以切換至使用GCI節點映像 - https://cloud.google.com/container-engine/docs/gci。 GCI支持CPU配額,容器引擎將自動開始支持容器上的CPU limits

1

該標誌的default value is true :)

所以,是的,它在容器引擎啓用。

編輯:我錯了 - 標誌已啓用,但GKE使用的默認操作系統不支持它。毗溼奴Kannan的答案是正確的!

+0

雖然我的一個豆莢/容器超出了它的極限,但它還是有趣的。我會嘗試重現它並添加更多細節。 –

+0

不幸的是,我可以看到cpu超過其定義的限制。你確定容器引擎使用SimpleRunKubelet嗎?除了設置爲true之外,我沒有看到在代碼中的任何地方使用CPUCFSQuota屬性來強制執行任何操作:https://github.com/kubernetes/kubernetes/search?p=2&q=CPUCFSQuota&utf8=%E2%9C%93 –

+0

一個cpu豬的平均CPU消耗量實際上是在配置的限制值附近,但偏差的幅度比我預期的要大得多。在1000米高達+ 50%。 –

相關問題