Merge pull request #34543 from ivan4th/dont-require-failure-domains-for-pod-affinity-checker

Automatic merge from submit-queue

Don't require failureDomains in PodAffinityChecker

`failureDomains` are only used for `PreferredDuringScheduling` pod
anti-affinity, which is ignored by `PodAffinityChecker`.
This unnecessary requirement was making it hard to move
`PodAffinityChecker` to `GeneralPredicates` because that would require
passing `--failure-domains` to both `kubelet` and `kube-controller-manager`.
This commit is contained in:
Kubernetes Submit Queue
2017-01-30 08:18:32 -08:00
committed by GitHub
5 changed files with 29 additions and 24 deletions

View File

@@ -19,14 +19,12 @@ package predicates
import (
"fmt"
"reflect"
"strings"
"testing"
"k8s.io/apimachinery/pkg/api/resource"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/kubernetes/pkg/api/v1"
"k8s.io/kubernetes/plugin/pkg/scheduler/algorithm"
priorityutil "k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/priorities/util"
"k8s.io/kubernetes/plugin/pkg/scheduler/schedulercache"
)
@@ -2572,9 +2570,8 @@ func TestInterPodAffinity(t *testing.T) {
}
fit := PodAffinityChecker{
info: FakeNodeInfo(*node),
podLister: algorithm.FakePodLister(test.pods),
failureDomains: priorityutil.Topologies{DefaultKeys: strings.Split(v1.DefaultFailureDomains, ",")},
info: FakeNodeInfo(*node),
podLister: algorithm.FakePodLister(test.pods),
}
nodeInfo := schedulercache.NewNodeInfo(podsOnNode...)
nodeInfo.SetNode(test.node)
@@ -2902,9 +2899,8 @@ func TestInterPodAffinityWithMultipleNodes(t *testing.T) {
}
testFit := PodAffinityChecker{
info: nodeListInfo,
podLister: algorithm.FakePodLister(test.pods),
failureDomains: priorityutil.Topologies{DefaultKeys: strings.Split(v1.DefaultFailureDomains, ",")},
info: nodeListInfo,
podLister: algorithm.FakePodLister(test.pods),
}
nodeInfo := schedulercache.NewNodeInfo(podsOnNode...)
nodeInfo.SetNode(&node)