diff --git a/test/integration/scheduler_perf/config/performance-config.yaml b/test/integration/scheduler_perf/config/performance-config.yaml index 34ac6dc4b16..f9cb6a254aa 100644 --- a/test/integration/scheduler_perf/config/performance-config.yaml +++ b/test/integration/scheduler_perf/config/performance-config.yaml @@ -174,6 +174,42 @@ - numNodes: 5000 numInitPods: [5000] numPodsToSchedule: 1000 +- template: + desc: TopologySpreading + nodes: + nodeTemplatePath: config/node-default.yaml + labelNodePrepareStrategy: + labelKey: "topology.kubernetes.io/zone" + labelValues: ["moon-1", "moon-2", "moon-3"] + initPods: + - podTemplatePath: config/pod-default.yaml + podsToSchedule: + podTemplatePath: config/pod-with-topology-spreading.yaml + params: + - numNodes: 500 + numInitPods: [1000] + numPodsToSchedule: 1000 + - numNodes: 5000 + numInitPods: [5000] + numPodsToSchedule: 2000 +- template: + desc: PreferredTopologySpreading + nodes: + nodeTemplatePath: config/node-default.yaml + labelNodePrepareStrategy: + labelKey: "topology.kubernetes.io/zone" + labelValues: ["moon-1", "moon-2", "moon-3"] + initPods: + - podTemplatePath: config/pod-default.yaml + podsToSchedule: + podTemplatePath: config/pod-with-preferred-topology-spreading.yaml + params: + - numNodes: 500 + numInitPods: [1000] + numPodsToSchedule: 1000 + - numNodes: 5000 + numInitPods: [5000] + numPodsToSchedule: 2000 - template: desc: MixedSchedulingBasePod initPods: diff --git a/test/integration/scheduler_perf/config/pod-with-preferred-topology-spreading.yaml b/test/integration/scheduler_perf/config/pod-with-preferred-topology-spreading.yaml new file mode 100644 index 00000000000..39a171f393a --- /dev/null +++ b/test/integration/scheduler_perf/config/pod-with-preferred-topology-spreading.yaml @@ -0,0 +1,21 @@ +apiVersion: v1 +kind: Pod +metadata: + generateName: spreading-pod- +spec: + topologySpreadConstraints: + - maxSkew: 5 + topologyKey: topology.kubernetes.io/zone + whenUnsatisfiable: ScheduleAnyway + containers: + - image: k8s.gcr.io/pause:3.2 + name: pause + ports: + - containerPort: 80 + resources: + limits: + cpu: 100m + memory: 500Mi + requests: + cpu: 100m + memory: 500Mi diff --git a/test/integration/scheduler_perf/config/pod-with-topology-spreading.yaml b/test/integration/scheduler_perf/config/pod-with-topology-spreading.yaml new file mode 100644 index 00000000000..cb3769675ed --- /dev/null +++ b/test/integration/scheduler_perf/config/pod-with-topology-spreading.yaml @@ -0,0 +1,21 @@ +apiVersion: v1 +kind: Pod +metadata: + generateName: spreading-pod- +spec: + topologySpreadConstraints: + - maxSkew: 5 + topologyKey: topology.kubernetes.io/zone + whenUnsatisfiable: DoNotSchedule + containers: + - image: k8s.gcr.io/pause:3.2 + name: pause + ports: + - containerPort: 80 + resources: + limits: + cpu: 100m + memory: 500Mi + requests: + cpu: 100m + memory: 500Mi