当前位置: 首页 > 知识库问答 >
问题:

在kubernetes中创建pod时,CPU和内存的请求和限制的默认值是什么?

冯枫
2023-03-14

首先,正如Kubernetes所描述的:pod和cpu限制当我们不指定cpu限制时,pod可以使用节点的所有cpu。这也适用于内存吗?意味着当我们没有指定限制时,pod是否会在需要时开始使用所有内存?

其次,让我们考虑一下,我们有一个具有2GB内存的工作节点,我们在这个节点上部署了8个POD,分配256Mi请求并限制这8个POD中的每一个是否正确?是否建议对所有POD应用相同的限制?

第三,如果我想创建一个具有相同请求并限制256Mi的新pod会发生什么?它会一直处于挂起状态吗?

共有1个答案

楚硕
2023-03-14

<代码>表示当我们未指定限制时,pod是否在需要时开始使用所有内存

简短的回答是肯定的。您可能也想研究QoS,没有请求/限制的pod被分配为BestHardfort;当系统受到压力时,它将首先被驱逐。

将256Mi请求和限制分配给这8个POD中的每一个是否正确?是否建议对所有POD应用相同的限制

如果您的pod需要足够的内存才能正常工作,那么这不是正确/不正确的问题。您应该规划集群容量。

它会一直处于挂起状态吗?

你将无法在现实中使用所有的记忆;事实上,在同一个节点上运行着许多其他程序(如kubelet)。当您指定了资源并且没有节点可以满足此要求时,您的pod将进入挂起状态。如果您没有指定资源,调度程序将分配您的pod在一个可用节点上运行-当有更高的优先级、更好的QoS请求时,您的pod可能会退出,或者干脆自杀,因为节点无法满足资源需求。

 类似资料:
  • 我为kubernetes api服务器上的POD创建了如下限制 如果我理解正确,如果pod在创建pod时超出了用户定义的资源限制,kubernetes会拒绝pod。所以,我尝试创建一个新的pod,它通过了资源限制,然后我尝试消耗资源达到最大限制资源,但它对pod没有任何影响。LimitsRange和ResourceQuota插件是否包含在本案例中?如果没有,我如何在创建资源吊舱后限制资源吊舱?

  • 问题 你想对在Unix系统上面运行的程序设置内存或CPU的使用限制。 解决方案 resource 模块能同时执行这两个任务。例如,要限制CPU时间,可以像下面这样做: import signal import resource import os def time_exceeded(signo, frame): print("Time's up!") raise SystemEx

  • 我在IBM Bluemix上运行Kubernetes cluster 1.5.3,我想获得pod的资源利用率(内存和cpu)作为原始数据点。Kubernetes公开了这样API吗? ➜ bluemix git:(master) ✗ k 集群信息 Kubernetes master 正在运行 Heapster运行在https://x:x/API/v1/proxy/namespaces/kube-sy

  • 问题内容: 我有点担心可以在共享计算机上使用的资源量。有什么方法可以测试管理员对我可以使用的资源量是否有限制?如果可以的话,为了提出更完整的问题,我该如何设置这种限制? 谢谢。 问题答案: 对于与流程相关的限制,您可以浏览一下(阅读文件中的注释,使用google或使用以获得更多信息)。而且正如jpalecek指出的那样,您可以用来查看(并可能修改)所有当前有效的限制。 您可以使用该命令查看磁盘配额

  • 我正在我的a集群(10个节点)中运行几个kubernetes pod。每个pod只包含一个托管一个工作进程的容器。我已指定容器的CPU“限制”和“请求”。以下是在节点(crypt12)上运行的一个pod的描述。 以下是我运行“kubectl可描述节点crypt12”时的输出 更新:我在github问题讨论中找到了问题的答案:“kubectl描述节点”中的cpu百分比是“cpu限制/#个内核”。由于

  • 我正在我的google kubernetes引擎上设置一个pod say test-pod。当我部署pod并使用google控制台查看工作负载时,我能够看到默认分配给我的pod,但我无法看到我的pod消耗了多少内存。内存请求部分总是显示在那里。我知道我们可以在部署YAML中限制内存限制和初始分配。但是我想知道当没有通过YAML指定值时,pod会分配多少默认内存,它可以使用的最大限制是多少?