从零开始入门 K8s | Kubernetes 调度和资源管理( 十 )

resources 包含两个部分:

  • 第一部分是 requests;

  • 第二部分是 limits 。

这两部分里面的内容是一模一样的 , 但是它代表的含义有所不同:request 代表的是对这个 pod 基本保底的一些资源要求;limit 代表的是对这个 pod 可用能力上限的一种限制 。 request、limit 的实现是一个 map 结构 , 它里面可以填不同的资源的 key/value 。

我们可以大概分成四大类的基础资源:

  • 第一类是 CPU 资源;

  • 第二类是 memory;

  • 第三类是 ephemeral-storage , 是一种临时存储;

  • 第四类是通用的扩展资源 , 比如说像 GPU 。

CPU 资源 , 比如说上面的例子填的是2 , 申请的是两个 CPU , 也可以写成 2000m 这种十进制的转换方式 , 来表达有些时候可能对 CPU 可能是一个小数的需求 , 比如说像 0.2 个CPU , 可以填 200m 。 而这种方式在 memory 和 storage 之上 , 它是一个二进制的表达方式 , 如上图右侧所示 , 申请的是 1GB 的 memory , 同样也可以填成一个 1024mi 的表达方式 , 这样可以更清楚地表达我们对 memory 的需求 。

推荐阅读