mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-23 03:41:45 +00:00
650 lines
16 KiB
YAML
650 lines
16 KiB
YAML
- name: SchedulingBasic
|
|
defaultPodTemplatePath: config/pod-default.yaml
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
collectMetrics: true
|
|
workloads:
|
|
- name: 500Nodes
|
|
params:
|
|
initNodes: 500
|
|
initPods: 500
|
|
measurePods: 1000
|
|
- name: 5000Nodes
|
|
params:
|
|
initNodes: 5000
|
|
initPods: 1000
|
|
measurePods: 1000
|
|
|
|
- name: SchedulingPodAntiAffinity
|
|
defaultPodTemplatePath: config/pod-with-pod-anti-affinity.yaml
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
uniqueNodeLabelStrategy:
|
|
labelKey: kubernetes.io/hostname
|
|
- opcode: createNamespaces
|
|
prefix: sched
|
|
count: 2
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
namespace: sched-0
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
collectMetrics: true
|
|
namespace: sched-1
|
|
workloads:
|
|
- name: 500Nodes
|
|
params:
|
|
initNodes: 500
|
|
initPods: 100
|
|
measurePods: 400
|
|
- name: 5000Nodes
|
|
params:
|
|
initNodes: 5000
|
|
initPods: 1000
|
|
measurePods: 1000
|
|
|
|
- name: SchedulingSecrets
|
|
defaultPodTemplatePath: config/pod-with-secret-volume.yaml
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
collectMetrics: true
|
|
workloads:
|
|
- name: 500Nodes
|
|
params:
|
|
initNodes: 500
|
|
initPods: 500
|
|
measurePods: 1000
|
|
- name: 5000Nodes
|
|
params:
|
|
initNodes: 5000
|
|
initPods: 5000
|
|
measurePods: 1000
|
|
|
|
- name: SchedulingInTreePVs
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
persistentVolumeTemplatePath: config/pv-aws.yaml
|
|
persistentVolumeClaimTemplatePath: config/pvc.yaml
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
persistentVolumeTemplatePath: config/pv-aws.yaml
|
|
persistentVolumeClaimTemplatePath: config/pvc.yaml
|
|
collectMetrics: true
|
|
workloads:
|
|
- name: 500Nodes
|
|
params:
|
|
initNodes: 500
|
|
initPods: 500
|
|
measurePods: 1000
|
|
- name: 5000Nodes
|
|
params:
|
|
initNodes: 5000
|
|
initPods: 5000
|
|
measurePods: 1000
|
|
|
|
- name: SchedulingMigratedInTreePVs
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
nodeTemplatePath: config/node-default.yaml
|
|
nodeAllocatableStrategy:
|
|
nodeAllocatable:
|
|
attachable-volumes-csi-ebs.csi.aws.com: "39"
|
|
csiNodeAllocatable:
|
|
ebs.csi.aws.com:
|
|
count: 39
|
|
migratedPlugins:
|
|
- "kubernetes.io/aws-ebs"
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
persistentVolumeTemplatePath: config/pv-aws.yaml
|
|
persistentVolumeClaimTemplatePath: config/pvc.yaml
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
persistentVolumeTemplatePath: config/pv-aws.yaml
|
|
persistentVolumeClaimTemplatePath: config/pvc.yaml
|
|
collectMetrics: true
|
|
workloads:
|
|
- name: 500Nodes
|
|
params:
|
|
initNodes: 500
|
|
initPods: 500
|
|
measurePods: 1000
|
|
- name: 5000Nodes
|
|
params:
|
|
initNodes: 5000
|
|
initPods: 5000
|
|
measurePods: 1000
|
|
|
|
- name: SchedulingCSIPVs
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
nodeTemplatePath: config/node-default.yaml
|
|
nodeAllocatableStrategy:
|
|
nodeAllocatable:
|
|
attachable-volumes-csi-ebs.csi.aws.com: "39"
|
|
csiNodeAllocatable:
|
|
ebs.csi.aws.com:
|
|
count: 39
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
persistentVolumeTemplatePath: config/pv-csi.yaml
|
|
persistentVolumeClaimTemplatePath: config/pvc.yaml
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
persistentVolumeTemplatePath: config/pv-csi.yaml
|
|
persistentVolumeClaimTemplatePath: config/pvc.yaml
|
|
collectMetrics: true
|
|
workloads:
|
|
- name: 500Nodes
|
|
params:
|
|
initNodes: 500
|
|
initPods: 500
|
|
measurePods: 1000
|
|
- name: 5000Nodes
|
|
params:
|
|
initNodes: 5000
|
|
initPods: 5000
|
|
measurePods: 1000
|
|
|
|
- name: SchedulingPodAffinity
|
|
defaultPodTemplatePath: config/pod-with-pod-affinity.yaml
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
nodeTemplatePath: config/node-default.yaml
|
|
labelNodePrepareStrategy:
|
|
labelKey: "topology.kubernetes.io/zone"
|
|
labelValues: ["zone1"]
|
|
- opcode: createNamespaces
|
|
prefix: sched
|
|
count: 2
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
namespace: sched-0
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
namespace: sched-1
|
|
collectMetrics: true
|
|
workloads:
|
|
- name: 500Nodes
|
|
params:
|
|
initNodes: 500
|
|
initPods: 500
|
|
measurePods: 1000
|
|
- name: 5000Nodes
|
|
params:
|
|
initNodes: 5000
|
|
initPods: 5000
|
|
measurePods: 1000
|
|
|
|
- name: SchedulingPreferredPodAffinity
|
|
defaultPodTemplatePath: config/pod-with-preferred-pod-affinity.yaml
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
uniqueNodeLabelStrategy:
|
|
labelKey: kubernetes.io/hostname
|
|
- opcode: createNamespaces
|
|
prefix: sched
|
|
count: 2
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
namespace: sched-0
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
namespace: sched-1
|
|
collectMetrics: true
|
|
workloads:
|
|
- name: 500Nodes
|
|
params:
|
|
initNodes: 500
|
|
initPods: 500
|
|
measurePods: 1000
|
|
- name: 5000Nodes
|
|
params:
|
|
initNodes: 5000
|
|
initPods: 5000
|
|
measurePods: 1000
|
|
|
|
- name: SchedulingPreferredPodAntiAffinity
|
|
defaultPodTemplatePath: config/pod-with-preferred-pod-affinity.yaml
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
uniqueNodeLabelStrategy:
|
|
labelKey: kubernetes.io/hostname
|
|
- opcode: createNamespaces
|
|
prefix: sched
|
|
count: 2
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
namespace: sched-0
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
namespace: sched-1
|
|
collectMetrics: true
|
|
workloads:
|
|
- name: 500Nodes
|
|
params:
|
|
initNodes: 500
|
|
initPods: 500
|
|
measurePods: 1000
|
|
- name: 5000Nodes
|
|
params:
|
|
initNodes: 5000
|
|
initPods: 5000
|
|
measurePods: 1000
|
|
|
|
- name: SchedulingNodeAffinity
|
|
defaultPodTemplatePath: config/pod-with-node-affinity.yaml
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
nodeTemplatePath: config/node-default.yaml
|
|
labelNodePrepareStrategy:
|
|
labelKey: "topology.kubernetes.io/zone"
|
|
labelValues: ["zone1"]
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
collectMetrics: true
|
|
workloads:
|
|
- name: 500Nodes
|
|
params:
|
|
initNodes: 500
|
|
initPods: 500
|
|
measurePods: 1000
|
|
- name: 5000Nodes
|
|
params:
|
|
initNodes: 5000
|
|
initPods: 5000
|
|
measurePods: 1000
|
|
|
|
- name: TopologySpreading
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
nodeTemplatePath: config/node-default.yaml
|
|
labelNodePrepareStrategy:
|
|
labelKey: "topology.kubernetes.io/zone"
|
|
labelValues: ["moon-1", "moon-2", "moon-3"]
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
podTemplatePath: config/pod-default.yaml
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
podTemplatePath: config/pod-with-topology-spreading.yaml
|
|
collectMetrics: true
|
|
workloads:
|
|
- name: 500Nodes
|
|
params:
|
|
initNodes: 500
|
|
initPods: 1000
|
|
measurePods: 1000
|
|
- name: 5000Nodes
|
|
params:
|
|
initNodes: 5000
|
|
initPods: 5000
|
|
measurePods: 2000
|
|
|
|
- name: PreferredTopologySpreading
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
nodeTemplatePath: config/node-default.yaml
|
|
labelNodePrepareStrategy:
|
|
labelKey: "topology.kubernetes.io/zone"
|
|
labelValues: ["moon-1", "moon-2", "moon-3"]
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
podTemplatePath: config/pod-default.yaml
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
podTemplatePath: config/pod-with-preferred-topology-spreading.yaml
|
|
collectMetrics: true
|
|
workloads:
|
|
- name: 500Nodes
|
|
params:
|
|
initNodes: 500
|
|
initPods: 1000
|
|
measurePods: 1000
|
|
- name: 5000Nodes
|
|
params:
|
|
initNodes: 5000
|
|
initPods: 5000
|
|
measurePods: 2000
|
|
|
|
- name: MixedSchedulingBasePod
|
|
defaultPodTemplatePath: config/pod-default.yaml
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
nodeTemplatePath: config/node-default.yaml
|
|
labelNodePrepareStrategy:
|
|
labelKey: "topology.kubernetes.io/zone"
|
|
labelValues: ["zone1"]
|
|
- opcode: createNamespaces
|
|
prefix: sched
|
|
count: 1
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
namespace: sched-0
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
podTemplatePath: config/pod-with-pod-affinity.yaml
|
|
namespace: sched-0
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
podTemplatePath: config/pod-with-pod-anti-affinity.yaml
|
|
namespace: sched-0
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
podTemplatePath: config/pod-with-preferred-pod-affinity.yaml
|
|
namespace: sched-0
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
podTemplatePath: config/pod-with-preferred-pod-anti-affinity.yaml
|
|
namespace: sched-0
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
collectMetrics: true
|
|
workloads:
|
|
- name: 500Nodes
|
|
params:
|
|
initNodes: 500
|
|
initPods: 200
|
|
measurePods: 1000
|
|
- name: 5000Nodes
|
|
params:
|
|
initNodes: 5000
|
|
initPods: 2000
|
|
measurePods: 1000
|
|
|
|
- name: PreemptionBasic
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
podTemplatePath: config/pod-low-priority.yaml
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
podTemplatePath: config/pod-high-priority.yaml
|
|
collectMetrics: true
|
|
workloads:
|
|
- name: 500Nodes
|
|
params:
|
|
initNodes: 500
|
|
initPods: 2000
|
|
measurePods: 500
|
|
# This test case always seems to fail.
|
|
# https://github.com/kubernetes/kubernetes/issues/108308
|
|
#
|
|
# - name: 5000Nodes
|
|
# params:
|
|
# initNodes: 5000
|
|
# initPods: 20000
|
|
# measurePods: 5000
|
|
|
|
- name: PreemptionPVs
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
podTemplatePath: config/pod-low-priority.yaml
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
podTemplatePath: config/pod-high-priority.yaml
|
|
persistentVolumeTemplatePath: config/pv-aws.yaml
|
|
persistentVolumeClaimTemplatePath: config/pvc.yaml
|
|
collectMetrics: true
|
|
workloads:
|
|
- name: 500Nodes
|
|
params:
|
|
initNodes: 500
|
|
initPods: 2000
|
|
measurePods: 500
|
|
# This test case always seems to fail.
|
|
# https://github.com/kubernetes/kubernetes/issues/108308
|
|
#
|
|
# - name: 5000Nodes
|
|
# params:
|
|
# initNodes: 5000
|
|
# initPods: 20000
|
|
# measurePods: 5000
|
|
|
|
- name: Unschedulable
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
- opcode: createPods
|
|
countParam: $initPods
|
|
podTemplatePath: config/pod-large-cpu.yaml
|
|
skipWaitToCompletion: true
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
podTemplatePath: config/pod-default.yaml
|
|
collectMetrics: true
|
|
workloads:
|
|
- name: 500Nodes/200InitPods
|
|
params:
|
|
initNodes: 500
|
|
initPods: 200
|
|
measurePods: 1000
|
|
- name: 5000Nodes/200InitPods
|
|
params:
|
|
initNodes: 5000
|
|
initPods: 200
|
|
measurePods: 5000
|
|
- name: 5000Nodes/2000InitPods
|
|
params:
|
|
initNodes: 5000
|
|
initPods: 2000
|
|
measurePods: 5000
|
|
|
|
- name: SchedulingWithMixedChurn
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
- opcode: churn
|
|
mode: recreate
|
|
number: 1
|
|
templatePaths:
|
|
- config/churn/node-default.yaml
|
|
- config/pod-high-priority-large-cpu.yaml
|
|
- config/churn/service-default.yaml
|
|
intervalMilliseconds: 1000
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
podTemplatePath: config/pod-default.yaml
|
|
collectMetrics: true
|
|
workloads:
|
|
- name: 1000Nodes
|
|
params:
|
|
initNodes: 1000
|
|
measurePods: 1000
|
|
- name: 5000Nodes
|
|
params:
|
|
initNodes: 5000
|
|
measurePods: 2000
|
|
|
|
- name: SchedulingRequiredPodAntiAffinityWithNSSelector
|
|
defaultPodTemplatePath: config/pod-anti-affinity-ns-selector.yaml
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
uniqueNodeLabelStrategy:
|
|
labelKey: kubernetes.io/hostname
|
|
- opcode: createNamespaces
|
|
prefix: init-ns
|
|
countParam: $initNamespaces
|
|
namespaceTemplatePath: config/namespace-with-labels.yaml
|
|
- opcode: createNamespaces
|
|
prefix: measure-ns
|
|
count: 1
|
|
namespaceTemplatePath: config/namespace-with-labels.yaml
|
|
- opcode: createPodSets
|
|
countParam: $initNamespaces
|
|
namespacePrefix: init-ns
|
|
createPodsOp:
|
|
opcode: createPods
|
|
countParam: $initPodsPerNamespace
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
collectMetrics: true
|
|
namespace: measure-ns-0
|
|
workloads:
|
|
- name: 5000Nodes
|
|
params:
|
|
initNodes: 5000
|
|
initPodsPerNamespace: 40
|
|
initNamespaces: 100
|
|
measurePods: 1000
|
|
|
|
- name: SchedulingPreferredAntiAffinityWithNSSelector
|
|
defaultPodTemplatePath: config/pod-preferred-anti-affinity-ns-selector.yaml
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
uniqueNodeLabelStrategy:
|
|
labelKey: kubernetes.io/hostname
|
|
- opcode: createNamespaces
|
|
prefix: init-ns
|
|
countParam: $initNamespaces
|
|
namespaceTemplatePath: config/namespace-with-labels.yaml
|
|
- opcode: createNamespaces
|
|
prefix: measure-ns
|
|
count: 1
|
|
namespaceTemplatePath: config/namespace-with-labels.yaml
|
|
- opcode: createPodSets
|
|
countParam: $initNamespaces
|
|
namespacePrefix: init-ns
|
|
createPodsOp:
|
|
opcode: createPods
|
|
countParam: $initPodsPerNamespace
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
collectMetrics: true
|
|
namespace: measure-ns-0
|
|
workloads:
|
|
- name: 5000Nodes
|
|
params:
|
|
initNodes: 5000
|
|
initPodsPerNamespace: 40
|
|
initNamespaces: 100
|
|
measurePods: 1000
|
|
|
|
- name: SchedulingRequiredPodAffinityWithNSSelector
|
|
defaultPodTemplatePath: config/pod-affinity-ns-selector.yaml
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
labelNodePrepareStrategy:
|
|
labelKey: "topology.kubernetes.io/zone"
|
|
labelValues: ["zone1"]
|
|
- opcode: createNamespaces
|
|
prefix: init-ns
|
|
countParam: $initNamespaces
|
|
namespaceTemplatePath: config/namespace-with-labels.yaml
|
|
- opcode: createNamespaces
|
|
prefix: measure-ns
|
|
count: 1
|
|
namespaceTemplatePath: config/namespace-with-labels.yaml
|
|
- opcode: createPodSets
|
|
countParam: $initNamespaces
|
|
namespacePrefix: init-ns
|
|
createPodsOp:
|
|
opcode: createPods
|
|
countParam: $initPodsPerNamespace
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
collectMetrics: true
|
|
namespace: measure-ns-0
|
|
workloads:
|
|
- name: 5000Nodes
|
|
params:
|
|
initNodes: 5000
|
|
initPodsPerNamespace: 50
|
|
initNamespaces: 100
|
|
measurePods: 1000
|
|
|
|
- name: SchedulingPreferredAffinityWithNSSelector
|
|
defaultPodTemplatePath: config/pod-preferred-affinity-ns-selector.yaml
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $initNodes
|
|
uniqueNodeLabelStrategy:
|
|
labelKey: kubernetes.io/hostname
|
|
- opcode: createNamespaces
|
|
prefix: init-ns
|
|
countParam: $initNamespaces
|
|
namespaceTemplatePath: config/namespace-with-labels.yaml
|
|
- opcode: createNamespaces
|
|
prefix: measure-ns
|
|
count: 1
|
|
namespaceTemplatePath: config/namespace-with-labels.yaml
|
|
- opcode: createPodSets
|
|
countParam: $initNamespaces
|
|
namespacePrefix: init-ns
|
|
createPodsOp:
|
|
opcode: createPods
|
|
countParam: $initPodsPerNamespace
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
collectMetrics: true
|
|
namespace: measure-ns-0
|
|
workloads:
|
|
- name: 5000Nodes
|
|
params:
|
|
initNodes: 5000
|
|
initPodsPerNamespace: 50
|
|
initNamespaces: 100
|
|
measurePods: 1000
|
|
|
|
- name: SchedulingWithNodeInclusionPolicy
|
|
featureGates:
|
|
NodeInclusionPolicyInPodTopologySpread: true
|
|
defaultPodTemplatePath: config/pod-with-node-inclusion-policy.yaml
|
|
workloadTemplate:
|
|
- opcode: createNodes
|
|
countParam: $normalNodes
|
|
uniqueNodeLabelStrategy:
|
|
labelKey: kubernetes.io/hostname
|
|
- opcode: createNodes
|
|
nodeTemplatePath: config/node-with-taint.yaml
|
|
countParam: $taintNodes
|
|
uniqueNodeLabelStrategy:
|
|
labelKey: kubernetes.io/hostname
|
|
- opcode: createPods
|
|
countParam: $measurePods
|
|
collectMetrics: true
|
|
workloads:
|
|
- name: 500Nodes
|
|
params:
|
|
taintNodes: 100
|
|
normalNodes: 400
|
|
measurePods: 400
|
|
- name: 5000Nodes
|
|
params:
|
|
taintNodes: 1000
|
|
normalNodes: 4000
|
|
measurePods: 4000
|