Skip to content

Commit 73f54b6

Browse files
authored
Merge pull request kubernetes#130816 from macsko/move_scheduler_perf_topology_spreading_tests_to_separate_package
Move scheduler_perf topology spreading tests to a separate package
2 parents 07a2754 + 0effe15 commit 73f54b6

File tree

3 files changed

+309
-248
lines changed

3 files changed

+309
-248
lines changed

test/integration/scheduler_perf/misc/performance-config.yaml

Lines changed: 0 additions & 248 deletions
Original file line numberDiff line numberDiff line change
@@ -135,199 +135,6 @@
135135
initNodes: 15000
136136
measurePods: 30000
137137

138-
- name: TopologySpreading
139-
workloadTemplate:
140-
- opcode: createNodes
141-
countParam: $initNodes
142-
nodeTemplatePath: ../templates/node-default.yaml
143-
labelNodePrepareStrategy:
144-
labelKey: "topology.kubernetes.io/zone"
145-
labelValues: ["moon-1", "moon-2", "moon-3"]
146-
- opcode: createPods
147-
countParam: $initPods
148-
podTemplatePath: ../templates/pod-default.yaml
149-
- opcode: createPods
150-
countParam: $measurePods
151-
podTemplatePath: ../templates/pod-with-topology-spreading.yaml
152-
collectMetrics: true
153-
workloads:
154-
- name: 5Nodes
155-
featureGates:
156-
SchedulerQueueingHints: false
157-
labels: [integration-test, short]
158-
params:
159-
initNodes: 5
160-
initPods: 10
161-
measurePods: 10
162-
- name: 5Nodes_QueueingHintsEnabled
163-
featureGates:
164-
SchedulerQueueingHints: true
165-
labels: [integration-test, short]
166-
params:
167-
initNodes: 5
168-
initPods: 10
169-
measurePods: 10
170-
- name: 500Nodes
171-
labels: [performance, short]
172-
params:
173-
initNodes: 500
174-
initPods: 1000
175-
measurePods: 1000
176-
- name: 5000Nodes
177-
labels: [performance, short]
178-
params:
179-
initNodes: 5000
180-
initPods: 5000
181-
measurePods: 2000
182-
- name: 5000Nodes_5000Pods
183-
featureGates:
184-
SchedulerQueueingHints: false
185-
labels: [performance]
186-
threshold: 85
187-
params:
188-
initNodes: 5000
189-
initPods: 5000
190-
measurePods: 5000
191-
- name: 5000Nodes_5000Pods_QueueingHintsEnabled
192-
featureGates:
193-
SchedulerQueueingHints: true
194-
labels: [performance]
195-
threshold: 85
196-
params:
197-
initNodes: 5000
198-
initPods: 5000
199-
measurePods: 5000
200-
201-
- name: PreferredTopologySpreading
202-
workloadTemplate:
203-
- opcode: createNodes
204-
countParam: $initNodes
205-
nodeTemplatePath: ../templates/node-default.yaml
206-
labelNodePrepareStrategy:
207-
labelKey: "topology.kubernetes.io/zone"
208-
labelValues: ["moon-1", "moon-2", "moon-3"]
209-
- opcode: createPods
210-
countParam: $initPods
211-
podTemplatePath: ../templates/pod-default.yaml
212-
- opcode: createPods
213-
countParam: $measurePods
214-
podTemplatePath: ../templates/pod-with-preferred-topology-spreading.yaml
215-
collectMetrics: true
216-
workloads:
217-
- name: 5Nodes
218-
featureGates:
219-
SchedulerQueueingHints: false
220-
labels: [integration-test, short]
221-
params:
222-
initNodes: 5
223-
initPods: 10
224-
measurePods: 10
225-
- name: 5Nodes_QueueingHintsEnabled
226-
featureGates:
227-
SchedulerQueueingHints: true
228-
labels: [integration-test, short]
229-
params:
230-
initNodes: 5
231-
initPods: 10
232-
measurePods: 10
233-
- name: 500Nodes
234-
labels: [performance, short]
235-
params:
236-
initNodes: 500
237-
initPods: 1000
238-
measurePods: 1000
239-
- name: 5000Nodes
240-
labels: [performance]
241-
params:
242-
initNodes: 5000
243-
initPods: 5000
244-
measurePods: 2000
245-
- name: 5000Nodes_5000Pods
246-
featureGates:
247-
SchedulerQueueingHints: false
248-
labels: [performance]
249-
threshold: 125
250-
params:
251-
initNodes: 5000
252-
initPods: 5000
253-
measurePods: 5000
254-
- name: 5000Nodes_5000Pods_QueueingHintsEnabled
255-
featureGates:
256-
SchedulerQueueingHints: true
257-
labels: [performance]
258-
threshold: 125
259-
params:
260-
initNodes: 5000
261-
initPods: 5000
262-
measurePods: 5000
263-
264-
# This test case simulates the scheduling of pods with service.
265-
# It benchmarks default PodTopologySpread constraints that calculate the label selector from services.
266-
- name: DefaultTopologySpreading
267-
workloadTemplate:
268-
- opcode: createNodes
269-
countParam: $initNodes
270-
nodeTemplatePath: ../templates/node-default.yaml
271-
labelNodePrepareStrategy:
272-
labelKey: "topology.kubernetes.io/zone"
273-
labelValues: ["moon-1", "moon-2", "moon-3"]
274-
- opcode: createAny
275-
namespace: service-ns
276-
templatePath: ../templates/service.yaml
277-
- opcode: createPods
278-
countParam: $initPods
279-
podTemplatePath: ../templates/pod-default.yaml
280-
- opcode: createPods
281-
namespace: service-ns
282-
countParam: $measurePods
283-
podTemplatePath: ../templates/pod-with-label.yaml
284-
collectMetrics: true
285-
workloads:
286-
- name: 5Nodes
287-
featureGates:
288-
SchedulerQueueingHints: false
289-
labels: [integration-test, short]
290-
params:
291-
initNodes: 5
292-
initPods: 10
293-
measurePods: 10
294-
- name: 5Nodes_QueueingHintsEnabled
295-
featureGates:
296-
SchedulerQueueingHints: true
297-
labels: [integration-test, short]
298-
params:
299-
initNodes: 5
300-
initPods: 10
301-
measurePods: 10
302-
- name: 500Nodes
303-
labels: [performance, short]
304-
params:
305-
initNodes: 500
306-
initPods: 1000
307-
measurePods: 1000
308-
- name: 5000Nodes_10000Pods
309-
labels: [performance]
310-
params:
311-
initNodes: 5000
312-
initPods: 5000
313-
measurePods: 10000
314-
- name: 5000Nodes_50000Pods
315-
featureGates:
316-
SchedulerQueueingHints: false
317-
labels: [performance]
318-
params:
319-
initNodes: 5000
320-
initPods: 5000
321-
measurePods: 50000
322-
- name: 5000Nodes_50000Pods_QueueingHintsEnabled
323-
featureGates:
324-
SchedulerQueueingHints: true
325-
labels: [performance]
326-
params:
327-
initNodes: 5000
328-
initPods: 5000
329-
measurePods: 50000
330-
331138
- name: PreemptionBasic
332139
workloadTemplate:
333140
- opcode: createNodes
@@ -596,61 +403,6 @@
596403
initNodes: 5000
597404
measurePods: 10000
598405

599-
- name: SchedulingWithNodeInclusionPolicy
600-
featureGates:
601-
NodeInclusionPolicyInPodTopologySpread: true
602-
defaultPodTemplatePath: ../templates/pod-with-node-inclusion-policy.yaml
603-
workloadTemplate:
604-
- opcode: createNodes
605-
countParam: $normalNodes
606-
- opcode: createNodes
607-
nodeTemplatePath: ../templates/node-with-taint.yaml
608-
countParam: $taintNodes
609-
- opcode: createPods
610-
countParam: $measurePods
611-
collectMetrics: true
612-
workloads:
613-
- name: 5Nodes
614-
featureGates:
615-
SchedulerQueueingHints: false
616-
labels: [integration-test, short]
617-
params:
618-
taintNodes: 1
619-
normalNodes: 4
620-
measurePods: 4
621-
- name: 5Nodes_QueueingHintsEnabled
622-
featureGates:
623-
SchedulerQueueingHints: true
624-
labels: [integration-test, short]
625-
params:
626-
taintNodes: 1
627-
normalNodes: 4
628-
measurePods: 4
629-
- name: 500Nodes
630-
labels: [performance, short]
631-
params:
632-
taintNodes: 100
633-
normalNodes: 400
634-
measurePods: 400
635-
- name: 5000Nodes
636-
featureGates:
637-
SchedulerQueueingHints: false
638-
labels: [performance, short]
639-
threshold: 68
640-
params:
641-
taintNodes: 1000
642-
normalNodes: 4000
643-
measurePods: 4000
644-
- name: 5000Nodes_QueueingHintsEnabled
645-
featureGates:
646-
SchedulerQueueingHints: true
647-
labels: [performance, short]
648-
threshold: 68
649-
params:
650-
taintNodes: 1000
651-
normalNodes: 4000
652-
measurePods: 4000
653-
654406
# This test case simulates the scheduling when many pods are gated and others are gradually deleted.
655407
# https://github.com/kubernetes/kubernetes/issues/124384
656408
- name: SchedulingWhileGated

0 commit comments

Comments
 (0)