美文网首页
cpu memory resource

cpu memory resource

作者: cdz620 | 来源:发表于2020-03-02 14:17 被阅读0次

overview

资源限制参数

主要参数

  • spec.containers[].resources.limits.cpu
  • spec.containers[].resources.limits.memory
  • spec.containers[].resources.requests.cpu
  • spec.containers[].resources.requests.memory

其他细节:

  • 默认的设置依赖集群中的默认配置
  • 如果requests没有设置,将和limits相同
  • 关系满足:limits>=requests
  • pod 的resouce等于其容器的总和
  • 没设置值相当于0,等同于集群中的默认配置

cpu

spec.containers[].resources.requests.cpu

  • 最终都会转化成,docker --cpu-share, --cpu-share只是个cpu的相对使用比例
  • node 节点的总资源: cpu * 1000 m
  • eg: 0.1 --> 100m 2 * 1000 --> 2000m

The spec.containers[].resources.limits.cpu

  • 最终转化成docker --cpu-quota 参数
  • --cpu-quota 与 --cpu-period 协同作用,来指定容器对CPU的使用要在多长时间内做一次重新分配,而--cpu-quota是用来指定在这个周期内,最多可以有多少时间用来跑这个容器。最大限制cpu的使用率: --cpu-quota / --cpu-period
  • eg: 200m 必须比requests大

设置建议

没有,fuck,官网没有案例,文档解释不清。

--cpu-period

100000代表100ms内测量资源配额的情况

--cpu-cfs-quota

开启cpu资源限制,默认是开启状态

如果没有足够的资源可以调度

  • 增加更多的node到集群
  • 检查不需要的pod
  • 检查limit是否设置过大,如果limit设置cpu1.1,但是所有的node的最大值是1,将永远不可调度

明明空间的resouce limit

apiVersion: v1
kind: LimitRange
metadata:
  name: mylimits
spec:
  limits:
  - max:
      cpu: "2"
      memory: 1Gi
    min:
      cpu: 200m
      memory: 6Mi
    type: Pod
  - default:
      cpu: 300m
      memory: 200Mi
    defaultRequest:
      cpu: 200m
      memory: 100Mi
    defaultLimit:
      cpu:500m
      memory:400m      
    max:
      cpu: "2"
      memory: 1Gi
    min:
      cpu: 100m
      memory: 3Mi

    type: Container

参数说明:

  • defaultRequest.* --> resource.request.*
  • defaultLimit.* --> resource.limit.*
  • max、min代表所有type的pod,或容器的和必须大于或者小于

结果

$ kubectl describe limits mylimits --namespace=limit-example
Name:   mylimits
Namespace:  limit-example
Type        Resource      Min      Max      Default Request      Default Limit      Max Limit/Request Ratio
----        --------      ---      ---      ---------------      -------------      -----------------------
Pod         cpu           200m     2        -                    -                  -
Pod         memory        6Mi      1Gi      -                    -                  -
Container   cpu           100m     2        200m                 300m               -
Container   memory        3Mi      1Gi      100Mi                200Mi              -

相关文章

网友评论

      本文标题:cpu memory resource

      本文链接:https://www.haomeiwen.com/subject/ohgrchtx.html