【问题标题】:Kubernetes memory requests and limits fixed-point vs power-of-twoKubernetes 内存请求和限制定点与二次幂
【发布时间】:2021-01-30 12:28:43
【问题描述】:

kubernetes.io 上有两个关于如何指定内存请求和限制的例子,非常混乱。

(我从以下示例中删除了cpu 和不必要的引号字符。)

示例 1:

https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

resources:
  requests:
    memory: 64Mi
  limits:
    memory: 128Mi

示例 2:

https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/

resources:
  limits:
    memory: 200Mi
  requests:
    memory: 100Mi

这两个例子都是有效的表达式,但是当使用二次幂后缀时,你不应该总是使用8163264128256、@ 987654332@、1028等等?

我认为示例 nr 2 中的人并不真正知道她/他在做什么,她/他应该使用定点后缀 200M100M,而不是?

如果我要使用二次幂后缀指定 268435456 字节,我将如何在我的 yaml 配置中表达它; 250Mi256Mi?

【问题讨论】:

  • 100Mi 是 104,857,600 字节;作为限制,它在语法或语义上没有任何问题,而且它比 128Mi 少了大约 20% 的内存。

标签: kubernetes memory


【解决方案1】:

我认为示例 nr 2 中的人并不真正知道她/他在做什么,她/他应该使用定点后缀 200M 和 100M,而不是?

没有。 MiM 是代表特定字节数的单位。 Mi 是 (210)2 字节(1048576 字节),M 是 (103)2 sup> 字节(1000000 字节)。您放置在这些单位之前的数字无关紧要,除了作为乘法因子。不要求前缀编号必须是 2 的倍数或任何值。

200M = 200 x (103)2 字节 = 200000000 字节

200Mi = 200 x (210)2 字节 = 209715200 字节


如果我要使用二次幂后缀指定 268435456 字节,我将如何在我的 yaml 配置中表达它; 250米还是256米?

268435456 字节 = 268435456/1048576 Mi = 256Mi

268435456 字节 = 268435456/1000000 M = 268.435456M


来自docs

内存限制和请求以字节为单位。您可以使用以下后缀之一将内存表示为纯整数或定点数:E、P、T、G、M、K。您还可以使用 2 的幂等值:Ei、Pi、Ti , 吉, 米, 基。例如,以下表示大致相同的值:

128974848、129e6、129M、123Mi

【讨论】:

  • 我明白你的意思。但是这个话题令人困惑,我注意到并且我有点知道它会变成这样,因为我几乎不知道如何提出这个问题。我知道最终字节将在幕后使用,您可以指定任何您想要的内容,但我认为我想在这里尝试的是两个单位功率的最佳实践。
  • 我的意思是说你想指定“250 兆字节”,或者你在与人交谈时会说。我们都理解您在说什么,但是您如何指定它以便每个阅读您的配置的人都有意义。是否有任何共识可能是我想说的?我仍然不确定我是否已经表达了我的想法。
  • 查看例如此页面以及他们如何以一致的方式指定它astronomer.io/docs/enterprise/v0.16/manage-astronomer/… 他们没有使用值 250 或 500,即使这就是他们的意思。
  • 我觉得你想多了。无论您使用binary prefix 还是十进制前缀,这只是一种以稍微不同的方式表示数量的方式。以前使用十进制系统中的公斤,当一个表示 1024 字节并且每个相关人员都理解时。在 SI 系统中,千表示 1000。二进制前缀(kibi, mebi) 是一种在术语上精确的方法。你可以选择任何你觉得舒服的并坚持下去。如果您的意思是 1024 字节,请使用 1Ki。如果您的意思是 1000 字节,请使用 K。
猜你喜欢
  • 1970-01-01
  • 2020-03-21
  • 2023-03-03
  • 2021-09-03
  • 1970-01-01
  • 2022-11-04
  • 1970-01-01
  • 2019-10-03
  • 1970-01-01
相关资源
最近更新 更多