在Kubernetes(K8s)中,CPU和内存的单位

在Kubernetes(K8s)中,CPU和内存的单位有一些特定的表示法,它们是:

  1. CPU单位 - millicores (m):

    • m 表示 millicores,即千分之一的 CPU 核心。
    • 例如,100m 表示 0.1 个 CPU 核心,而 500m 表示 0.5 个 CPU 核心。
    • 这种表示法用于将 CPU 资源分配为相对小的单位,使得可以更精确地定义容器对 CPU 的需求和限制。
  2. 内存单位 - Mebibytes (Mi):

    • Mi 表示 Mebibytes,是二进制前缀,等于 2^20 字节,或约 1.048576 兆字节。
    • 例如,256Mi 表示 256 Mebibytes,而 512Mi 表示 512 Mebibytes。
    • 这种表示法用于定义容器的内存需求和限制。

在Kubernetes中,你可以在Pod的资源配置中使用这些单位,例如在Pod的定义文件(如Deployment或StatefulSet)中:

resources:
  limits:
    cpu: 500m
    memory: 512Mi
  requests:
    cpu: 200m
    memory: 256Mi

在上面的例子中,limits 表示对资源的最大限制,而 requests 表示对资源的最小需求。容器将被分配至少 200m CPU 和 256Mi 内存,但不会超过 500m CPU 和 512Mi 内存。

使用这些单位有助于更有效地管理和规划容器的资源,特别是在共享一个宿主机上运行多个容器的情况下。

你可能感兴趣的:(kubernetes,容器,云原生)