mirror of https://github.com/k3s-io/k3s
Add more unresolvable conditions to optimize preemption logic
parent
5e9a5659b7
commit
fab26e470c
|
@ -986,11 +986,19 @@ func nodesWherePreemptionMightHelp(nodes []*v1.Node, failedPredicatesMap FailedP
|
||||||
switch failedPredicate {
|
switch failedPredicate {
|
||||||
case
|
case
|
||||||
predicates.ErrNodeSelectorNotMatch,
|
predicates.ErrNodeSelectorNotMatch,
|
||||||
|
predicates.ErrPodAffinityRulesNotMatch,
|
||||||
predicates.ErrPodNotMatchHostName,
|
predicates.ErrPodNotMatchHostName,
|
||||||
predicates.ErrTaintsTolerationsNotMatch,
|
predicates.ErrTaintsTolerationsNotMatch,
|
||||||
predicates.ErrNodeLabelPresenceViolated,
|
predicates.ErrNodeLabelPresenceViolated,
|
||||||
|
// Node conditions won't change when scheduler simulates removal of preemption victims.
|
||||||
|
// So, it is pointless to try nodes that have not been able to host the pod due to node
|
||||||
|
// conditions. These include ErrNodeNotReady, ErrNodeUnderPIDPressure, ErrNodeUnderMemoryPressure, ....
|
||||||
predicates.ErrNodeNotReady,
|
predicates.ErrNodeNotReady,
|
||||||
predicates.ErrNodeNetworkUnavailable,
|
predicates.ErrNodeNetworkUnavailable,
|
||||||
|
predicates.ErrNodeUnderDiskPressure,
|
||||||
|
predicates.ErrNodeUnderPIDPressure,
|
||||||
|
predicates.ErrNodeUnderMemoryPressure,
|
||||||
|
predicates.ErrNodeOutOfDisk,
|
||||||
predicates.ErrNodeUnschedulable,
|
predicates.ErrNodeUnschedulable,
|
||||||
predicates.ErrNodeUnknownCondition,
|
predicates.ErrNodeUnknownCondition,
|
||||||
predicates.ErrVolumeZoneConflict,
|
predicates.ErrVolumeZoneConflict,
|
||||||
|
@ -998,7 +1006,6 @@ func nodesWherePreemptionMightHelp(nodes []*v1.Node, failedPredicatesMap FailedP
|
||||||
predicates.ErrVolumeBindConflict:
|
predicates.ErrVolumeBindConflict:
|
||||||
unresolvableReasonExist = true
|
unresolvableReasonExist = true
|
||||||
break
|
break
|
||||||
// TODO(bsalamat): Please add affinity failure cases once we have specific affinity failure errors.
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if !found || !unresolvableReasonExist {
|
if !found || !unresolvableReasonExist {
|
||||||
|
|
Loading…
Reference in New Issue