首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >指定实际的资源请求

指定实际的资源请求
EN

Stack Overflow用户
提问于 2018-01-09 18:04:29
回答 1查看 151关注 0票数 0

在k8s中,我们可以将资源指定为:

代码语言:javascript
复制
apiVersion: v1
kind: Pod
metadata:
  name: cpu-demo-2
spec:
  containers:
  - name: cpu-demo-ctr-2
    image: vish/stress
    resources:
      limits:
        cpu: "100"
      requests:
        cpu: "300"

其中我们可以指定requests (k8s保证容器获得如此多的请求)和最大请求(limits)。

我的问题是,如果集群上没有负载,k8s会允许这个pod被限制到达到它的极限吗?

或者,有没有办法为容器请求所需的cpus?

EN

回答 1

Stack Overflow用户

发布于 2018-01-11 11:42:20

该限制被向下传递给容器运行时接口,并且在CPU的情况下被设置为一个限制值,当CPU试图超过该值时,该限制值将利用运行时的本机机制(即: cgroups)来限制CPU。在达到该值之前,CPU不会有任何限制。

内存请求和限制分别运行,通常在控制循环监视消耗时包括轻微延迟,如果容器超过设定的限制,则将驱逐并终止容器,并将"OOMKill“消息(out-of-memory kill)作为原因包括在内。

您可以在kubernetes文档中找到更多细节:Managing Compute Resources for Containers

Kubernetes不包括动态响应其他输入和限制资源的方法,但您可以更改请求或限制值,并将其设置为新的所需状态。

在Kubernetes1.8和更高版本中,存在Pod Priority and pre-emption的概念,如果资源在集群内变得受限,它也会影响在Pod中运行的容器。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48165691

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档