Preferably the preselected strategy and scheduling functions k8s

scheduler scheduling process:
    the Predicate (pre) -> Priority (preferably) -> Select (selected)
scheduling method:
    1. affinity scheduling node (NodeAffinity) using nodeSelector complete such scheduling.
    2.Pod affinity and anti-affinity scheduling (PodAffinity, PodUnAffinity).
    3. A stain tolerate scheduling. Node (Taints stains), the Pod (Tolerations tolerance).
Reference:
pre Strategy: https: //github.com/kubernetes/kubernetes/tree/master/pkg/scheduler/algorithm/predicates    
preferably functions: https: //github.com/kubernetes/kubernetes/tree/master/pkg/scheduler / algorithm / priorities


preselected preselected strategy :( several common strategy) CheckNodeCondition: a check node condition. Whether on disk nodes, the network is not ready to Pod scheduling with good premise to this node or not.  GeneralPredicates: General preselected policy, the policy comprising a plurality of:  the HostName: Check whether the object is defined Pod pod.spec.hostname PodFitsHostPort: Check whether the object defined pod.spec.containers.ports.hostPort Pod
    
  
      
        
        MatchNodeSelector: pods.spec.nodeSelector  PodFitsResources: resource requirements Pod checking whether the node can be satisfied. NoDiskConflict: Check whether Pod dependent storage volume to meet demand.  PodToleratesNodeTaints: spec.tolerations check on Pod tolerable stains stain is completely contained in the node. PodToleratesNodeNoExecuteTaints: Pod node does not allow pollution; not enabled by default. CheckNodeLabelPresence: Check the node labels; not enabled by default CheckserviceAffinity: Inspection Services affinity. Not enabled by default MaxEBSVolumeCount: Amazon Elastic storage volume maximum number, default 39 MaxGCEPDVolumeCount: the maximum number of storage volumes Google containers engine, the default 16     MaxAzureDiskVolumeCount: The maximum number of disks Azure, default 16 CheckVolumeBinding: Check the data volume binding NoVolumeZoneConflict: no data volume space conflict  CheckNodeMemoryPressure : definition of check node memory pressure name
      
    
  
    
    
    
    
    
    

    
    
    
  
    CheckNodePIDPressure: definition of the check node name PID pressure
    CheckNodeDiskPressure: defines a pressure disk check node name     MatchInterPodAffinity: Room defined name associated with the matching POD preferably is preferably a function of several common functions :() LeastRequested:         (CPU (Capacity-SUM (requested)) 10 * / Capacity) + (memory (Capacity-SUM (requested)) * 10 / Capacity) / 2 BalancedResourceAllocation:         the CPU and memory resource usage is similar winner; object node resource usage rate balancing.  NodePreferAvoidPods:         Node annotation information "scheduler.alpha.kubernetes.io/preferAvoidPods"  TaintToleration:         the taints node and list item spec.tolerations Pod inspection object to be matching, the more matching entries, the lower the score.  SelectorSpreading: scheduler will schedule pod dispersion.  InterPodAffinity: The affinity between the Pod.  NodeAffinity: According node affinity. MostRequested:
    



    

    

  

  

  
  
  
    The most requested node.  NodeLabel: The node label  ImageLocality:         and satisfies needs existing objects Pod current mirror according to the size of the volume.
  
  

        
        
        
        
        
        
        
        
        
        
       

Guess you like

Origin www.cnblogs.com/Smbands/p/10939585.html