【发布时间】:2021-04-20 10:23:06
【问题描述】:
我正在使用 docker/K8s 部署一些 pod。
现在,我需要限制工作人员可用于运行容器的总 CPU(而不是限制每个容器的 CPU)。
例如:我们有 24 核 Linux 服务器。但我只想为 docker 运行时使用 20 个内核。
我们可以这样做吗?
【问题讨论】:
-
Kubernetes 的典型假设是它对其运行的节点拥有绝对控制权;通常,像集群自动缩放器这样的工具会创建或销毁您直接控制之外的节点。你想用这个保留的容量做什么,你希望它保留到什么程度? (您是只想将资源请求限制在节点容量的 80%,还是限制实际利用率,还是保留核心?)
-
因为在同一个工作服务器中,我们有一些其他代理(防病毒、监视器..)可能占用 CPU,所以我需要限制 docker 运行时的 CPU 数量(不是所有 CPU 核心)。
-
只需运行这些进程(可能通过 Kubernetes DaemonSets),主机内核就会负责分配 CPU 片。
标签: docker kubernetes