cpu/Mem request and limit

如下pod定义:

containers:
  - name: busyboxv1
    image: busybox:v1
    resources:
      limits:
        memory: 600Mi       
        cpu: 800m        ---------------------- 1cpu=1000m,800m代表 1个cpu使用了80ms(1s=100ms)
requests: memory: 500Mi cpu: 600m - name: busyboxv2 image: busybox:v2 resources: limits: memory: 300Mi cpu: 1 requests: memory: 200Mi cpu: 300m

cpu/mem 的limit和request都是针对container来讲的,不是针对pod。

 

对于容器busyboxv1:

mem.request: 500Mi   代表要保证调度的目标worker上需要有500M的内存供使用

mem.limit: 600Mi        代表该container可使用的最大mem为600MB,如果该container使用内存超过600M,会报错,比如OOM-killer

cpu.request: 600m     首先,1个cpu划分为1000个毫核,1vcpu=1000m vcpu,1000 mcpu = 100 ms *  1 vcpu 代表1个vcpu在100ms中被完全占据;

                                   因此,600m vcpu表示,1个vcpu占用了60ms,也可认为是request为0.6(1*60ms/100ms)个vcpu‘’

cpu.limit: 800m           代表1个vcpu 使用上限为0.8s(80ms),即0.8个vcpu;  如果cpu.limit为2,代表2s(200ms)中一直使用1个vcpu,或者1s(100ms)中一直使用2个vcpu

 

posted @ 2021-04-04 23:13  一个门外汉  阅读(790)  评论(0编辑  收藏  举报