kubernetes - 超出资源限制
kubernetes - resource limits exceeded
我有一个集群 运行 Kubernetes v1.6.7。
虚拟机是:
Distributor ID: Debian
Description: Debian GNU/Linux 8.7 (jessie)
Release: 8.7
Codename: jessie
内核:
3.16.0-4-amd64
我们在部署中设置了 cpu 限制,但是如果需要,pods 可以超过此限制 cpu。我有什么想念的吗?就像 kubelet 中的一个参数来启用这个限制?我还没有找到关于这个问题的任何信息。
例如,如果我创建以下部署:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: stress
namespace: default
labels:
k8s-app: stress
spec:
replicas: 1
selector:
matchLabels:
k8s-app: stress
template:
metadata:
labels:
k8s-app: stress
spec:
containers:
- name: stress
image: progrium/stress
imagePullPolicy: Always
args: ["--cpu", "1"]
resources:
limits:
cpu: "500m"
memory: "1Gi"
requests:
cpu: "100m"
memory: "512Mi"
在节点上,这使得 CPU 100% 使用,而它应该是 50%。
感谢您的帮助。
根据对您问题的评论,您可以在其中尝试 运行 docker 容器 CPU 限制您得到:
WARNING: Your kernel does not support CPU cfs period or the cgroup is not mounted. Period discarded.
WARNING: Your kernel does not support CPU cfs quota or the cgroup is not mounted. Quota discarded.
这意味着您的系统内核构建不支持 CFS。这是一个关于它的 issue ,关于 3.16.0-4-amd64 版本。
您需要重建或更新您的内核。
以下是从反向移植更新它的方法:
添加带有反向端口的镜像:
$ sudo vi /etc/apt/sources.list.d/sources.list
deb http://http.debian.net/debian jessie-backports main
deb-src http://http.debian.net/debian jessie-backports main
更新apt:
sudo apt-get update
从反向移植仓库安装内核:sudo apt-get install -t jessie-backports linux-image-amd64
- 安装后重启。
我有一个集群 运行 Kubernetes v1.6.7。
虚拟机是:
Distributor ID: Debian
Description: Debian GNU/Linux 8.7 (jessie)
Release: 8.7
Codename: jessie
内核:
3.16.0-4-amd64
我们在部署中设置了 cpu 限制,但是如果需要,pods 可以超过此限制 cpu。我有什么想念的吗?就像 kubelet 中的一个参数来启用这个限制?我还没有找到关于这个问题的任何信息。
例如,如果我创建以下部署:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: stress
namespace: default
labels:
k8s-app: stress
spec:
replicas: 1
selector:
matchLabels:
k8s-app: stress
template:
metadata:
labels:
k8s-app: stress
spec:
containers:
- name: stress
image: progrium/stress
imagePullPolicy: Always
args: ["--cpu", "1"]
resources:
limits:
cpu: "500m"
memory: "1Gi"
requests:
cpu: "100m"
memory: "512Mi"
在节点上,这使得 CPU 100% 使用,而它应该是 50%。
感谢您的帮助。
根据对您问题的评论,您可以在其中尝试 运行 docker 容器 CPU 限制您得到:
WARNING: Your kernel does not support CPU cfs period or the cgroup is not mounted. Period discarded.
WARNING: Your kernel does not support CPU cfs quota or the cgroup is not mounted. Quota discarded.
这意味着您的系统内核构建不支持 CFS。这是一个关于它的 issue ,关于 3.16.0-4-amd64 版本。
您需要重建或更新您的内核。
以下是从反向移植更新它的方法:
添加带有反向端口的镜像:
$ sudo vi /etc/apt/sources.list.d/sources.list deb http://http.debian.net/debian jessie-backports main deb-src http://http.debian.net/debian jessie-backports main
更新apt:
sudo apt-get update
从反向移植仓库安装内核:
sudo apt-get install -t jessie-backports linux-image-amd64
- 安装后重启。