如何在Kubernetes中定义硬件资源? CPU和RAM

时间:2018-05-16 11:28:38

标签: memory kubernetes cpu scaling ram

kubernetes中资源分配和定义的简单解释是什么? 分配" 1000m"意味着什么? CPU单位和1024Mi关闭内存?

1 个答案:

答案 0 :(得分:3)

(试图用比官方docs更简单的语言写出来)

CPU

在Kubernetes中,每个CPU内核以一个" milicore"为单位进行分配。意味着一个虚拟核心(在虚拟机上)可以分为1000个1 milicore的份额。分配1000个milicores将为一个pod提供一个完整的CPU。提供更多内容将要求pod中的代码能够使用多个核心。

<强>内存

很简单。您分配的每兆字节都是为pod保留的。

<强>请

保证提供给pod的最少资源。如果没有足够的资源在任何节点上启动pod,它将保留在&#34; Pending&#34;状态。

<强>限制

CPU限制当达到限制时,会导致窗格降低。

内存限制当一个pod利用其所有内存并要求超过限制时,它将被视为内存泄漏并且该pod将重新启动

目标(在Horizo​​ntal Pod Autoscaler中定义)

可以应用于CPU,内存和其他自定义指标(定义更复杂。

为大小为 A B C 的广告连播设置资源可能是一个好主意,其中:A &LT; B&lt; C.请求= A,目标= B,限制= C. 请记住,一个完全加载的节点可能会阻止pod到达他们的&#34; target&#34;而且永远不会扩大规模。