mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-01 07:47:56 +00:00
Merge pull request #86369 from Huang-Wei/deprecate-AlwaysCheckAllPredicates
Remove alwaysCheckAllPredicates from NewGenericScheduler
This commit is contained in:
commit
84198bf120
@ -593,7 +593,6 @@ func TestGenericSchedulerWithExtenders(t *testing.T) {
|
|||||||
informerFactory.Core().V1().PersistentVolumeClaims().Lister(),
|
informerFactory.Core().V1().PersistentVolumeClaims().Lister(),
|
||||||
informerFactory.Policy().V1beta1().PodDisruptionBudgets().Lister(),
|
informerFactory.Policy().V1beta1().PodDisruptionBudgets().Lister(),
|
||||||
false,
|
false,
|
||||||
false,
|
|
||||||
schedulerapi.DefaultPercentageOfNodesToScore,
|
schedulerapi.DefaultPercentageOfNodesToScore,
|
||||||
false)
|
false)
|
||||||
podIgnored := &v1.Pod{}
|
podIgnored := &v1.Pod{}
|
||||||
|
@ -157,7 +157,6 @@ type genericScheduler struct {
|
|||||||
prioritizers []priorities.PriorityConfig
|
prioritizers []priorities.PriorityConfig
|
||||||
framework framework.Framework
|
framework framework.Framework
|
||||||
extenders []algorithm.SchedulerExtender
|
extenders []algorithm.SchedulerExtender
|
||||||
alwaysCheckAllPredicates bool
|
|
||||||
nodeInfoSnapshot *nodeinfosnapshot.Snapshot
|
nodeInfoSnapshot *nodeinfosnapshot.Snapshot
|
||||||
volumeBinder *volumebinder.VolumeBinder
|
volumeBinder *volumebinder.VolumeBinder
|
||||||
pvcLister corelisters.PersistentVolumeClaimLister
|
pvcLister corelisters.PersistentVolumeClaimLister
|
||||||
@ -1134,7 +1133,7 @@ func podPassesBasicChecks(pod *v1.Pod, pvcLister corelisters.PersistentVolumeCla
|
|||||||
}
|
}
|
||||||
|
|
||||||
// NewGenericScheduler creates a genericScheduler object.
|
// NewGenericScheduler creates a genericScheduler object.
|
||||||
// TODO(Huang-Wei): remove 'predicates' and 'alwaysCheckAllPredicates'.
|
// TODO(Huang-Wei): remove 'predicates'.
|
||||||
func NewGenericScheduler(
|
func NewGenericScheduler(
|
||||||
cache internalcache.Cache,
|
cache internalcache.Cache,
|
||||||
podQueue internalqueue.SchedulingQueue,
|
podQueue internalqueue.SchedulingQueue,
|
||||||
@ -1146,7 +1145,6 @@ func NewGenericScheduler(
|
|||||||
volumeBinder *volumebinder.VolumeBinder,
|
volumeBinder *volumebinder.VolumeBinder,
|
||||||
pvcLister corelisters.PersistentVolumeClaimLister,
|
pvcLister corelisters.PersistentVolumeClaimLister,
|
||||||
pdbLister policylisters.PodDisruptionBudgetLister,
|
pdbLister policylisters.PodDisruptionBudgetLister,
|
||||||
alwaysCheckAllPredicates bool,
|
|
||||||
disablePreemption bool,
|
disablePreemption bool,
|
||||||
percentageOfNodesToScore int32,
|
percentageOfNodesToScore int32,
|
||||||
enableNonPreempting bool) ScheduleAlgorithm {
|
enableNonPreempting bool) ScheduleAlgorithm {
|
||||||
@ -1161,7 +1159,6 @@ func NewGenericScheduler(
|
|||||||
volumeBinder: volumeBinder,
|
volumeBinder: volumeBinder,
|
||||||
pvcLister: pvcLister,
|
pvcLister: pvcLister,
|
||||||
pdbLister: pdbLister,
|
pdbLister: pdbLister,
|
||||||
alwaysCheckAllPredicates: alwaysCheckAllPredicates,
|
|
||||||
disablePreemption: disablePreemption,
|
disablePreemption: disablePreemption,
|
||||||
percentageOfNodesToScore: percentageOfNodesToScore,
|
percentageOfNodesToScore: percentageOfNodesToScore,
|
||||||
enableNonPreempting: enableNonPreempting,
|
enableNonPreempting: enableNonPreempting,
|
||||||
|
@ -370,15 +370,14 @@ func TestGenericScheduler(t *testing.T) {
|
|||||||
defer algorithmpredicates.SetPredicatesOrderingDuringTest(order)()
|
defer algorithmpredicates.SetPredicatesOrderingDuringTest(order)()
|
||||||
|
|
||||||
tests := []struct {
|
tests := []struct {
|
||||||
name string
|
name string
|
||||||
registerPlugins []st.RegisterPluginFunc
|
registerPlugins []st.RegisterPluginFunc
|
||||||
alwaysCheckAllPredicates bool
|
nodes []string
|
||||||
nodes []string
|
pvcs []v1.PersistentVolumeClaim
|
||||||
pvcs []v1.PersistentVolumeClaim
|
pod *v1.Pod
|
||||||
pod *v1.Pod
|
pods []*v1.Pod
|
||||||
pods []*v1.Pod
|
expectedHosts sets.String
|
||||||
expectedHosts sets.String
|
wErr error
|
||||||
wErr error
|
|
||||||
}{
|
}{
|
||||||
{
|
{
|
||||||
registerPlugins: []st.RegisterPluginFunc{
|
registerPlugins: []st.RegisterPluginFunc{
|
||||||
@ -789,7 +788,6 @@ func TestGenericScheduler(t *testing.T) {
|
|||||||
cache,
|
cache,
|
||||||
internalqueue.NewSchedulingQueue(nil),
|
internalqueue.NewSchedulingQueue(nil),
|
||||||
nil,
|
nil,
|
||||||
// test.prioritizers,
|
|
||||||
priorities.EmptyMetadataProducer,
|
priorities.EmptyMetadataProducer,
|
||||||
snapshot,
|
snapshot,
|
||||||
fwk,
|
fwk,
|
||||||
@ -797,7 +795,6 @@ func TestGenericScheduler(t *testing.T) {
|
|||||||
nil,
|
nil,
|
||||||
pvcLister,
|
pvcLister,
|
||||||
informerFactory.Policy().V1beta1().PodDisruptionBudgets().Lister(),
|
informerFactory.Policy().V1beta1().PodDisruptionBudgets().Lister(),
|
||||||
test.alwaysCheckAllPredicates,
|
|
||||||
false,
|
false,
|
||||||
schedulerapi.DefaultPercentageOfNodesToScore,
|
schedulerapi.DefaultPercentageOfNodesToScore,
|
||||||
false)
|
false)
|
||||||
@ -839,7 +836,7 @@ func makeScheduler(nodes []*v1.Node, fns ...st.RegisterPluginFunc) *genericSched
|
|||||||
priorities.EmptyMetadataProducer,
|
priorities.EmptyMetadataProducer,
|
||||||
emptySnapshot,
|
emptySnapshot,
|
||||||
fwk,
|
fwk,
|
||||||
nil, nil, nil, nil, false, false,
|
nil, nil, nil, nil, false,
|
||||||
schedulerapi.DefaultPercentageOfNodesToScore, false)
|
schedulerapi.DefaultPercentageOfNodesToScore, false)
|
||||||
cache.UpdateNodeInfoSnapshot(s.(*genericScheduler).nodeInfoSnapshot)
|
cache.UpdateNodeInfoSnapshot(s.(*genericScheduler).nodeInfoSnapshot)
|
||||||
return s.(*genericScheduler)
|
return s.(*genericScheduler)
|
||||||
@ -967,7 +964,7 @@ func TestFindFitPredicateCallCounts(t *testing.T) {
|
|||||||
priorities.EmptyMetadataProducer,
|
priorities.EmptyMetadataProducer,
|
||||||
emptySnapshot,
|
emptySnapshot,
|
||||||
fwk,
|
fwk,
|
||||||
nil, nil, nil, nil, false, false,
|
nil, nil, nil, nil, false,
|
||||||
schedulerapi.DefaultPercentageOfNodesToScore, false).(*genericScheduler)
|
schedulerapi.DefaultPercentageOfNodesToScore, false).(*genericScheduler)
|
||||||
cache.UpdateNodeInfoSnapshot(scheduler.nodeInfoSnapshot)
|
cache.UpdateNodeInfoSnapshot(scheduler.nodeInfoSnapshot)
|
||||||
queue.UpdateNominatedPodForNode(&v1.Pod{ObjectMeta: metav1.ObjectMeta{UID: types.UID("nominated")}, Spec: v1.PodSpec{Priority: &midPriority}}, "1")
|
queue.UpdateNominatedPodForNode(&v1.Pod{ObjectMeta: metav1.ObjectMeta{UID: types.UID("nominated")}, Spec: v1.PodSpec{Priority: &midPriority}}, "1")
|
||||||
@ -1168,7 +1165,6 @@ func TestZeroRequest(t *testing.T) {
|
|||||||
nil,
|
nil,
|
||||||
nil,
|
nil,
|
||||||
false,
|
false,
|
||||||
false,
|
|
||||||
schedulerapi.DefaultPercentageOfNodesToScore,
|
schedulerapi.DefaultPercentageOfNodesToScore,
|
||||||
false).(*genericScheduler)
|
false).(*genericScheduler)
|
||||||
scheduler.nodeInfoSnapshot = snapshot
|
scheduler.nodeInfoSnapshot = snapshot
|
||||||
@ -1615,7 +1611,6 @@ func TestSelectNodesForPreemption(t *testing.T) {
|
|||||||
nil,
|
nil,
|
||||||
informerFactory.Policy().V1beta1().PodDisruptionBudgets().Lister(),
|
informerFactory.Policy().V1beta1().PodDisruptionBudgets().Lister(),
|
||||||
false,
|
false,
|
||||||
false,
|
|
||||||
schedulerapi.DefaultPercentageOfNodesToScore,
|
schedulerapi.DefaultPercentageOfNodesToScore,
|
||||||
false)
|
false)
|
||||||
g := scheduler.(*genericScheduler)
|
g := scheduler.(*genericScheduler)
|
||||||
@ -2363,7 +2358,6 @@ func TestPreempt(t *testing.T) {
|
|||||||
informerFactory.Core().V1().PersistentVolumeClaims().Lister(),
|
informerFactory.Core().V1().PersistentVolumeClaims().Lister(),
|
||||||
informerFactory.Policy().V1beta1().PodDisruptionBudgets().Lister(),
|
informerFactory.Policy().V1beta1().PodDisruptionBudgets().Lister(),
|
||||||
false,
|
false,
|
||||||
false,
|
|
||||||
schedulerapi.DefaultPercentageOfNodesToScore,
|
schedulerapi.DefaultPercentageOfNodesToScore,
|
||||||
true)
|
true)
|
||||||
state := framework.NewCycleState()
|
state := framework.NewCycleState()
|
||||||
|
@ -86,9 +86,6 @@ type Configurator struct {
|
|||||||
// Handles volume binding decisions
|
// Handles volume binding decisions
|
||||||
volumeBinder *volumebinder.VolumeBinder
|
volumeBinder *volumebinder.VolumeBinder
|
||||||
|
|
||||||
// Always check all predicates even if the middle of one predicate fails.
|
|
||||||
alwaysCheckAllPredicates bool
|
|
||||||
|
|
||||||
// Disable pod preemption or not.
|
// Disable pod preemption or not.
|
||||||
disablePreemption bool
|
disablePreemption bool
|
||||||
|
|
||||||
@ -204,11 +201,6 @@ func (c *Configurator) CreateFromConfig(policy schedulerapi.Policy) (*Scheduler,
|
|||||||
if policy.HardPodAffinitySymmetricWeight != 0 {
|
if policy.HardPodAffinitySymmetricWeight != 0 {
|
||||||
c.hardPodAffinitySymmetricWeight = policy.HardPodAffinitySymmetricWeight
|
c.hardPodAffinitySymmetricWeight = policy.HardPodAffinitySymmetricWeight
|
||||||
}
|
}
|
||||||
// When AlwaysCheckAllPredicates is set to true, scheduler checks all the configured
|
|
||||||
// predicates even after one or more of them fails.
|
|
||||||
if policy.AlwaysCheckAllPredicates {
|
|
||||||
c.alwaysCheckAllPredicates = policy.AlwaysCheckAllPredicates
|
|
||||||
}
|
|
||||||
|
|
||||||
return c.CreateFromKeys(predicateKeys, priorityKeys, extenders)
|
return c.CreateFromKeys(predicateKeys, priorityKeys, extenders)
|
||||||
}
|
}
|
||||||
@ -289,7 +281,6 @@ func (c *Configurator) CreateFromKeys(predicateKeys, priorityKeys sets.String, e
|
|||||||
c.volumeBinder,
|
c.volumeBinder,
|
||||||
c.informerFactory.Core().V1().PersistentVolumeClaims().Lister(),
|
c.informerFactory.Core().V1().PersistentVolumeClaims().Lister(),
|
||||||
GetPodDisruptionBudgetLister(c.informerFactory),
|
GetPodDisruptionBudgetLister(c.informerFactory),
|
||||||
c.alwaysCheckAllPredicates,
|
|
||||||
c.disablePreemption,
|
c.disablePreemption,
|
||||||
c.percentageOfNodesToScore,
|
c.percentageOfNodesToScore,
|
||||||
c.enableNonPreempting,
|
c.enableNonPreempting,
|
||||||
|
@ -695,7 +695,6 @@ func setupTestScheduler(queuedPodStore *clientcache.FIFO, scache internalcache.C
|
|||||||
informerFactory.Core().V1().PersistentVolumeClaims().Lister(),
|
informerFactory.Core().V1().PersistentVolumeClaims().Lister(),
|
||||||
informerFactory.Policy().V1beta1().PodDisruptionBudgets().Lister(),
|
informerFactory.Policy().V1beta1().PodDisruptionBudgets().Lister(),
|
||||||
false,
|
false,
|
||||||
false,
|
|
||||||
schedulerapi.DefaultPercentageOfNodesToScore,
|
schedulerapi.DefaultPercentageOfNodesToScore,
|
||||||
false,
|
false,
|
||||||
)
|
)
|
||||||
@ -752,7 +751,6 @@ func setupTestSchedulerLongBindingWithRetry(queuedPodStore *clientcache.FIFO, sc
|
|||||||
informerFactory.Core().V1().PersistentVolumeClaims().Lister(),
|
informerFactory.Core().V1().PersistentVolumeClaims().Lister(),
|
||||||
informerFactory.Policy().V1beta1().PodDisruptionBudgets().Lister(),
|
informerFactory.Policy().V1beta1().PodDisruptionBudgets().Lister(),
|
||||||
false,
|
false,
|
||||||
false,
|
|
||||||
schedulerapi.DefaultPercentageOfNodesToScore,
|
schedulerapi.DefaultPercentageOfNodesToScore,
|
||||||
false,
|
false,
|
||||||
)
|
)
|
||||||
|
Loading…
Reference in New Issue
Block a user