美文网首页
k8s pod资源限制requests和limits

k8s pod资源限制requests和limits

作者: yummy觉一 | 来源:发表于2021-07-20 15:00 被阅读0次

    环境:kubernetes v1.18.16

    k8s 资源单位介绍

    CPU1 core = 1000 milli core(毫核);50m相当于0.05core,最小单位1m;
    内存M 1000进制 129M字节;Mi 1024进制

    pod资源限额设置:

    spec:
          containers:
            - name: [容器名称]
              image: [容器镜像]
              imagePullPolicy: IfNotPresent
              resources:
                requests: 
                  cpu: 10m
                  memory: 10Mi
                limits:
                  cpu: '1'
                  memory: 1000Mi
    

    requests:最低配额,保证被调度的节点上至少有的资源配额
    limits: 资源限制,容器可以分配到的最大资源配额

    pod qosClass介绍

    qosClass 表示服务质量类型(Quality of Service)。其值由pod请求的内存和cpu确定的,有三种类型:Guaranteed,Burstable 和 BestEffort。当node资源不足而驱逐pod时优先级不同:BestEffort→Burstable→Guaranteed。最先驱逐BestEffort,然后Burstable,最后Guaranteed。pod没有配置资源限制的时默认为BestEffort

    kubectl get  pod [pod名称] -o yml podqosClass类型
    

    输出中qosClass字段显示当前

    QoS Classes分类

    Guranteed:pod中所有Container的所有Resource的limit和request都相等且不为0,则这个Pod的QoS Class就是Guaranteed。注意,如果一个容器只指明了limit,而未指明request,则表明request的值等于limit的值。
    Burstable:pod中至少有一个容器设置CPU或内存资源的requests属性。
    BestEffort:Pod中没有任何一个容器设置了requests或limits属性。

    node资源紧缺时pod驱逐机制

    Guaranteed > Burstable > BestEffort
    参考:http://t.zoukankan.com/peitianwang-p-11588003.html

    相关文章

      网友评论

          本文标题:k8s pod资源限制requests和limits

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