我已对 Kubernetes Pod 设置了 CPU 限制,但它们似乎根本不限制在 Google 容器引擎版本 1.3.3 上运行的 CPU 使用量
阅读https://github.com/kubernetes/kubernetes/tree/master/examples/runtime-constraints必须在 kubelet 上启用此功能,如下所示:
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 员工能够确认其是否已启用,如果未启用,请告诉我们原因?现在看来我无法选择使用 cpu 限制,而当它启用时,如果我不想使用它,我可以将 cpu 限制保留在我的规范之外。
最佳答案
Google 容器引擎默认不支持 CPU 配额。如果您想使用 CPU 配额,可以切换为使用 GCI 节点镜像 - https://cloud.google.com/container-engine/docs/gci 。
GCI 支持 CPU 配额,容器引擎将自动开始支持容器上的 CPU 限制
。
关于kubernetes - Google 容器引擎是否启用了 CFS cpu 配额?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38770059/