zoukankan      html  css  js  c++  java
  • 20-21 调度器,预选策略及优选策略。以及高级调度方式

    20-21 调度器,预选策略及优选策略。以及高级调度方式

    Scheduler
    调度过程:
    预选过程 predicate
    优选策略 priority
    选定 select

    节点亲和性调度
    反亲和性

    调度器:
    预选策略:
    CheckNodeCondition
    GeneralPredicates
    HostName: 检查pod对象是否定义了pod.spec.hostname
    PodFitsHostPorts: pods.spec.containers.ports.hostPort
    MatchNodeSelector: pods.spec.nodeSelector
    PodFitsResources: 检查Pod资源需求能否被节点满足
    kubectl describe node k8s-node1
    NoDiskConflict 检查节点是否有合适的能满足pod依赖的存储卷
    PodtoleratesNodeTaints: 检查pod上的tolerations可容忍的污点是否完全包含节点上的污点
    PodToleratesNodeNoExecuteTains 默认没有启用
    CheckNodeLabelPresence 检查标签的存在性 默认没有启用
    CheckServiceAffinity 默认没有启用

        MaxEBSVolumeCount
        MaxGCEPDVolumeCount
        MaxAzureDiskVolumeCount
        
        CheckVolumeBinding
        NovolumeZoneConflict
        
        CheckNodeMemoryPressure   检查节点内存资源是否存在压力
        CheckNodePIDpressure   检查节点PID资源是否存在压力
        CheckNodeDiskPressure 检查节点磁盘是否存在压力
        
        MatchInterPodAffity 
    

    优选函数
    LeastRequested:
    (cpu((capacity-sum(requested))*10/capacity)

    BalancedResourceAllocation
        CPU和内存资源被占用率相近的胜出
    NodePreferAvoidPods
        节点注解信息“scheduler.alpha.kubernetes.io/preferAvoidPods”
        
    TaintToleration:  将Pod对象的spec.tolerations 与节点的taints列表项进行匹配度检查,匹配的条目越多,得分越低
    
    SelectorSpreading: 与当前pod对象同属的标签选择器,匹配度越高得分越低
    
    InterPodAffinity
    
    NodeAffinity 节点亲和性
    
    MostRequested
    
    NodeLabel
    
    ImageLocality: 根据已有镜像的体积大小之和
    

    高级调度设置:

    节点选择器: nodeSelector
    节点亲和调度:nodeAffinity
    kubectl explain pods.spec.affinity.nodeAffinity

    preferredDuringSchedulingIgnoredDuringExecution  软亲和性,如果能满足最好,如果实在不满足,也可以
    requiredDuringSchedulingIgnoredDuringExecution   硬亲和性,必须要满足才行
    

    taint的effect定义对pod的排斥效果:
    NoSchedule 仅影响调度过程
    NoExecute 既影响调度过程也影响现存的Pod对象;不容忍的Pod对象将比驱逐
    PreferNoSchedule 不容忍的如果没有其他的选择那么也就可以被保留

    污点调度 taint: 给节点那些pod能被调度,一般用在节点上,也是一种键值属性, taints

    Tolerrations 容忍度

    admin Abc.1234

  • 相关阅读:
    【H5】ie8如何兼容html5标签(hack)
    mysql数据库:分表、多表关联、外键约束、级联操作
    mysql数据库:mysql初识
    mysql数据库:数据类型、存储引擎、约束、
    并发编程:协程TCP、非阻塞IO、多路复用、
    并发编程:同步异步、队列、协程与实现方式
    并发编程: GIL锁、GIL与互斥锁区别、进程池与线程池的区别
    并发编程:生产消费模型、死锁与Rlock、线程、守护线程、信号量、锁
    并发编程:守护进程、互斥锁、案例、进程间通讯
    并发编程:进程、多道、进程执行顺序与常用属性
  • 原文地址:https://www.cnblogs.com/heaven-xi/p/11312637.html
Copyright © 2011-2022 走看看