美文网首页
深入分析kubelet(6)—— Eviction驱逐

深入分析kubelet(6)—— Eviction驱逐

作者: 陈先生_9e91 | 来源:发表于2018-10-19 16:48 被阅读0次

    深入分析kubelet(6)—— Eviction驱逐

    参考:

    Pod Preemption in Kubernetes

    Kubelet - Eviction Policy

    如果node处于资源压力,那么kubelet就会执行驱逐策略。驱逐会考虑Pod的优先级,资源使用和资源申请。当优先级相同时,资源使用/资源申请最大的Pod会被首先驱逐。

    这也是为什么BestEffort会首先被驱逐,因为他的request为0,所以这个值会无限大。所以调度器虽然不考虑抢占BestEffort,但是kubelet仍然驱逐它。

    ping-pong

    考虑这样一个场景,node上运行一些高优先级的BestEffort Pod,调度器调度了一个低优先级的非BestEffort Pod在node。当node处于资源压力时,kubelet会先驱逐低优先级的Pod,不管高优先级的BestEffort 。但是调度器不考虑BestEffort,还是会调度node,造成这种ping-pong

    驱逐阈值

    <eviction-signal><operator><quantity | int%>

    • eviction-signal:memory.available, nodefs.available, nodefs.inodesFree, imagefs.available, imagefs.inodesFree
    • operator :<

    比如:

    • memory.available < 10%
    • memory.available < 1Gi

    soft

    当收到驱逐信号时,kubelet不会回收资源直到超过宽限期。

    --eviction-soft:软驱逐阈值设置

    --eviction-soft-grace-period:软驱逐宽限期,软驱逐信号与驱逐处理之间的时间差

    --eviction-max-pod-grace-period:最大驱逐pod宽限期,停止信号与kill之间的时间差,小于pod.Spec.TerminationGracePeriodSeconds

    hard

    此阈值没有宽限期

    --eviction-hard:直接驱逐,没有宽限期。

    node

    驱逐会影响node状态

    Node Condition Eviction Signal Description
    MemoryPressure memory.available Available memory on the node has satisfied an eviction threshold
    DiskPressure nodefs.available, nodefs.inodesFree, imagefs.available, or imagefs.inodesFree Available disk space and inodes on either the node's root filesystem or image filesystem has satisfied an eviction threshold

    相关文章

      网友评论

          本文标题:深入分析kubelet(6)—— Eviction驱逐

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