Skip to content

Instantly share code, notes, and snippets.

@jupblb
Created May 14, 2021 09:08
Show Gist options
  • Save jupblb/4b8b6b1b829872109cd8b57d73773037 to your computer and use it in GitHub Desktop.
Save jupblb/4b8b6b1b829872109cd8b57d73773037 to your computer and use it in GitHub Desktop.
module-reconcile-steps.yaml
steps:
- phases: []
measurements:
- method: APIResponsivenessPrometheus
params:
action: start
allowedSlowCalls: 0
customThresholds: ""
enableViolations: false
identifier: APIResponsivenessPrometheus
instances: []
- method: APIResponsivenessPrometheus
params:
action: start
allowedSlowCalls: 0
customThresholds: ""
enableViolations: true
summaryName: APIResponsivenessPrometheus_simple
useSimpleLatencyQuery: true
identifier: APIResponsivenessPrometheusSimple
instances: []
- method: PodStartupLatency
params:
action: start
labelSelector: group = load
threshold: 1h
identifier: CreatePhasePodStartupLatency
instances: []
- method: InClusterNetworkLatency
params:
action: start
checkProbesReadyTimeout: 15m
replicasPerProbe: 3
identifier: InClusterNetworkLatency
instances: []
- method: SLOMeasurement
params:
action: start
checkProbesReadyTimeout: 15m
replicasPerProbe: 3
identifier: SLOMeasurement
instances: []
- method: NetworkProgrammingLatency
params:
action: start
identifier: NetworkProgrammingLatency
instances: []
- method: TestMetrics
params:
action: start
clusterOOMsIgnoredProcesses: ""
clusterOOMsTrackerEnabled: true
enableRestartCountCheck: true
restartCountThresholdOverrides: ""
systemPodMetricsEnabled: true
identifier: TestMetrics
instances: []
module:
path: ""
params: {}
name: starting measurements
- phases:
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 1
tuningset: Sequence
objectbundle:
- basename: big-service
objecttemplatepath: service.yaml
templatefillmap: {}
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 12
tuningset: Sequence
objectbundle:
- basename: medium-service
objecttemplatepath: service.yaml
templatefillmap: {}
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 149
tuningset: Sequence
objectbundle:
- basename: small-service
objecttemplatepath: service.yaml
templatefillmap: {}
listunknownobjectoptions: null
measurements: []
module:
path: ""
params: {}
name: Creating k8s services
- phases:
- namespacerange: null
replicaspernamespace: 1
tuningset: Sequence
objectbundle:
- basename: daemonset-priorityclass
objecttemplatepath: daemonset-priorityclass.yaml
templatefillmap: {}
listunknownobjectoptions: null
measurements: []
module:
path: ""
params: {}
name: Creating PriorityClass for DaemonSets
- phases: []
measurements:
- method: WaitForControlledPodsRunning
params:
action: start
checkIfPodsAreUpdated: true
labelSelector: group = load
operationTimeout: 15m
identifier: ""
instances:
- identifier: WaitForRunningDeployments
params:
apiVersion: apps/v1
kind: Deployment
- identifier: WaitForRunningStatefulSets
params:
apiVersion: apps/v1
kind: StatefulSet
- identifier: WaitForRunningDaemonSets
params:
apiVersion: apps/v1
kind: DaemonSet
- identifier: WaitForRunningJobs
params:
apiVersion: batch/v1
kind: Job
module:
path: ""
params: {}
name: Starting measurement for 'create objects'
- phases:
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 1
tuningset: RandomizedSaturationTimeLimited
objectbundle:
- basename: daemonset
objecttemplatepath: daemonset.yaml
templatefillmap:
Image: k8s.gcr.io/pause:3.0
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 2
tuningset: RandomizedSaturationTimeLimited
objectbundle:
- basename: big-deployment
objecttemplatepath: configmap.yaml
templatefillmap: {}
listunknownobjectoptions: null
- basename: big-deployment
objecttemplatepath: secret.yaml
templatefillmap: {}
listunknownobjectoptions: null
- basename: big-deployment
objecttemplatepath: deployment.yaml
templatefillmap:
CpuRequest: 5m
EnableDNSTests: false
ReplicasMax: 250
ReplicasMin: 250
SvcName: big-service
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 23
tuningset: RandomizedSaturationTimeLimited
objectbundle:
- basename: medium-deployment
objecttemplatepath: configmap.yaml
templatefillmap: {}
listunknownobjectoptions: null
- basename: medium-deployment
objecttemplatepath: secret.yaml
templatefillmap: {}
listunknownobjectoptions: null
- basename: medium-deployment
objecttemplatepath: deployment.yaml
templatefillmap:
CpuRequest: 5m
EnableDNSTests: false
ReplicasMax: 30
ReplicasMin: 30
SvcName: medium-service
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 298
tuningset: RandomizedSaturationTimeLimited
objectbundle:
- basename: small-deployment
objecttemplatepath: configmap.yaml
templatefillmap: {}
listunknownobjectoptions: null
- basename: small-deployment
objecttemplatepath: secret.yaml
templatefillmap: {}
listunknownobjectoptions: null
- basename: small-deployment
objecttemplatepath: deployment.yaml
templatefillmap:
CpuRequest: 5m
EnableDNSTests: false
ReplicasMax: 5
ReplicasMin: 5
SvcName: small-service
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 1
tuningset: RandomizedSaturationTimeLimited
objectbundle:
- basename: small-statefulset
objecttemplatepath: statefulset_service.yaml
templatefillmap: {}
listunknownobjectoptions: null
- basename: small-statefulset
objecttemplatepath: statefulset.yaml
templatefillmap:
ReplicasMax: 5
ReplicasMin: 5
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 1
tuningset: RandomizedSaturationTimeLimited
objectbundle:
- basename: medium-statefulset
objecttemplatepath: statefulset_service.yaml
templatefillmap: {}
listunknownobjectoptions: null
- basename: medium-statefulset
objecttemplatepath: statefulset.yaml
templatefillmap:
ReplicasMax: 30
ReplicasMin: 30
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 1
tuningset: RandomizedSaturationTimeLimited
objectbundle:
- basename: small-job
objecttemplatepath: job.yaml
templatefillmap:
ReplicasMax: 5
ReplicasMin: 5
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 1
tuningset: RandomizedSaturationTimeLimited
objectbundle:
- basename: medium-job
objecttemplatepath: job.yaml
templatefillmap:
ReplicasMax: 30
ReplicasMin: 30
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 1
tuningset: RandomizedSaturationTimeLimited
objectbundle:
- basename: big-job
objecttemplatepath: job.yaml
templatefillmap:
ReplicasMax: 250
ReplicasMin: 250
listunknownobjectoptions: null
measurements: []
module:
path: ""
params: {}
name: create objects
- phases: []
measurements:
- method: WaitForControlledPodsRunning
params:
action: gather
identifier: ""
instances:
- identifier: WaitForRunningDeployments
params: {}
- identifier: WaitForRunningStatefulSets
params: {}
- identifier: WaitForRunningDaemonSets
params: {}
- identifier: WaitForRunningJobs
params: {}
module:
path: ""
params: {}
name: Waiting for 'create objects' to be completed
- phases: []
measurements:
- method: PodStartupLatency
params:
action: start
labelSelector: group = scheduler-throughput
threshold: 1h
identifier: HighThroughputPodStartupLatency
instances: []
- method: WaitForControlledPodsRunning
params:
action: start
apiVersion: apps/v1
kind: Deployment
labelSelector: group = scheduler-throughput
operationTimeout: 20m
identifier: WaitForSchedulerThroughputDeployments
instances: []
- method: SchedulingThroughput
params:
action: start
labelSelector: group = scheduler-throughput
measurmentInterval: 1s
identifier: SchedulingThroughput
instances: []
module:
path: ""
params: {}
name: Creating scheduler throughput measurements
- phases:
- namespacerange:
min: 2
max: 11
basename: null
replicaspernamespace: 1
tuningset: SchedulerThroughputParallel
objectbundle:
- basename: scheduler-throughput-deployment
objecttemplatepath: simple-deployment.yaml
templatefillmap:
CpuRequest: 1m
Group: scheduler-throughput
MemoryRequest: 10M
Replicas: 100
listunknownobjectoptions: null
measurements: []
module:
path: ""
params: {}
name: Creating scheduler throughput pods
- phases: []
measurements:
- method: WaitForControlledPodsRunning
params:
action: gather
identifier: WaitForSchedulerThroughputDeployments
instances: []
module:
path: ""
params: {}
name: Waiting for scheduler throughput pods to be created
- phases: []
measurements:
- method: PodStartupLatency
params:
action: gather
identifier: HighThroughputPodStartupLatency
instances: []
- method: SchedulingThroughput
params:
action: gather
enableViolations: true
threshold: 100
identifier: SchedulingThroughput
instances: []
module:
path: ""
params: {}
name: Collecting scheduler throughput measurements
- phases:
- namespacerange:
min: 2
max: 11
basename: null
replicaspernamespace: 0
tuningset: SchedulerThroughputParallel
objectbundle:
- basename: scheduler-throughput-deployment
objecttemplatepath: simple-deployment.yaml
templatefillmap: {}
listunknownobjectoptions: null
measurements: []
module:
path: ""
params: {}
name: Deleting scheduler throughput pods
- phases: []
measurements:
- method: WaitForControlledPodsRunning
params:
action: gather
identifier: WaitForSchedulerThroughputDeployments
instances: []
module:
path: ""
params: {}
name: Waiting for scheduler throughput pods to be deleted
- phases: []
measurements:
- method: PodStartupLatency
params:
action: start
labelSelector: group = latency
threshold: 5s
identifier: PodStartupLatency
instances: []
- method: WaitForControlledPodsRunning
params:
action: start
apiVersion: apps/v1
kind: Deployment
labelSelector: group = latency
operationTimeout: 15m
identifier: WaitForRunningLatencyDeployments
instances: []
module:
path: ""
params: {}
name: Starting latency pod measurements
- phases:
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 500
tuningset: Uniform5qps
objectbundle:
- basename: latency-deployment
objecttemplatepath: simple-deployment.yaml
templatefillmap:
CpuRequest: 100m
Group: latency
MemoryRequest: 350M
Replicas: 1
listunknownobjectoptions: null
measurements: []
module:
path: ""
params: {}
name: Creating latency pods
- phases: []
measurements:
- method: WaitForControlledPodsRunning
params:
action: gather
identifier: WaitForRunningLatencyDeployments
instances: []
module:
path: ""
params: {}
name: Waiting for latency pods to be running
- phases:
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 0
tuningset: Uniform5qps
objectbundle:
- basename: latency-deployment
objecttemplatepath: simple-deployment.yaml
templatefillmap: {}
listunknownobjectoptions: null
measurements: []
module:
path: ""
params: {}
name: Deleting latency pods
- phases: []
measurements:
- method: WaitForControlledPodsRunning
params:
action: gather
identifier: WaitForRunningLatencyDeployments
instances: []
module:
path: ""
params: {}
name: Waiting for latency pods to be deleted
- phases: []
measurements:
- method: PodStartupLatency
params:
action: gather
identifier: PodStartupLatency
instances: []
module:
path: ""
params: {}
name: Collecting pod startup latency
- phases:
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 1
tuningset: RandomizedScalingTimeLimited
objectbundle:
- basename: daemonset
objecttemplatepath: daemonset.yaml
templatefillmap:
Image: k8s.gcr.io/pause:3.1
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 2
tuningset: RandomizedScalingTimeLimited
objectbundle:
- basename: big-deployment
objecttemplatepath: deployment.yaml
templatefillmap:
CpuRequest: 5m
EnableDNSTests: false
ReplicasMax: 375
ReplicasMin: 125
SvcName: big-service
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 23
tuningset: RandomizedScalingTimeLimited
objectbundle:
- basename: medium-deployment
objecttemplatepath: deployment.yaml
templatefillmap:
CpuRequest: 5m
EnableDNSTests: false
ReplicasMax: 45
ReplicasMin: 15
SvcName: medium-service
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 298
tuningset: RandomizedScalingTimeLimited
objectbundle:
- basename: small-deployment
objecttemplatepath: deployment.yaml
templatefillmap:
CpuRequest: 5m
EnableDNSTests: false
ReplicasMax: 7
ReplicasMin: 2
SvcName: small-service
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 1
tuningset: RandomizedScalingTimeLimited
objectbundle:
- basename: small-statefulset
objecttemplatepath: statefulset.yaml
templatefillmap:
ReplicasMax: 7
ReplicasMin: 2
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 1
tuningset: RandomizedScalingTimeLimited
objectbundle:
- basename: medium-statefulset
objecttemplatepath: statefulset.yaml
templatefillmap:
ReplicasMax: 45
ReplicasMin: 15
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 1
tuningset: RandomizedScalingTimeLimited
objectbundle:
- basename: small-job
objecttemplatepath: job.yaml
templatefillmap:
ReplicasMax: 7
ReplicasMin: 2
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 1
tuningset: RandomizedScalingTimeLimited
objectbundle:
- basename: medium-job
objecttemplatepath: job.yaml
templatefillmap:
ReplicasMax: 45
ReplicasMin: 15
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 1
tuningset: RandomizedScalingTimeLimited
objectbundle:
- basename: big-job
objecttemplatepath: job.yaml
templatefillmap:
ReplicasMax: 375
ReplicasMin: 125
listunknownobjectoptions: null
measurements: []
module:
path: ""
params: {}
name: scale and update objects
- phases: []
measurements:
- method: WaitForControlledPodsRunning
params:
action: gather
identifier: ""
instances:
- identifier: WaitForRunningDeployments
params: {}
- identifier: WaitForRunningStatefulSets
params: {}
- identifier: WaitForRunningDaemonSets
params: {}
- identifier: WaitForRunningJobs
params: {}
module:
path: ""
params: {}
name: Waiting for 'scale and update objects' to be completed
- phases:
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 0
tuningset: RandomizedDeletionTimeLimited
objectbundle:
- basename: daemonset
objecttemplatepath: daemonset.yaml
templatefillmap:
Image: k8s.gcr.io/pause:3.1
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 0
tuningset: RandomizedDeletionTimeLimited
objectbundle:
- basename: big-deployment
objecttemplatepath: configmap.yaml
templatefillmap: {}
listunknownobjectoptions: null
- basename: big-deployment
objecttemplatepath: secret.yaml
templatefillmap: {}
listunknownobjectoptions: null
- basename: big-deployment
objecttemplatepath: deployment.yaml
templatefillmap: {}
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 0
tuningset: RandomizedDeletionTimeLimited
objectbundle:
- basename: medium-deployment
objecttemplatepath: configmap.yaml
templatefillmap: {}
listunknownobjectoptions: null
- basename: medium-deployment
objecttemplatepath: secret.yaml
templatefillmap: {}
listunknownobjectoptions: null
- basename: medium-deployment
objecttemplatepath: deployment.yaml
templatefillmap: {}
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 0
tuningset: RandomizedDeletionTimeLimited
objectbundle:
- basename: small-deployment
objecttemplatepath: configmap.yaml
templatefillmap: {}
listunknownobjectoptions: null
- basename: small-deployment
objecttemplatepath: secret.yaml
templatefillmap: {}
listunknownobjectoptions: null
- basename: small-deployment
objecttemplatepath: deployment.yaml
templatefillmap: {}
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 0
tuningset: RandomizedDeletionTimeLimited
objectbundle:
- basename: small-statefulset
objecttemplatepath: statefulset_service.yaml
templatefillmap: {}
listunknownobjectoptions: null
- basename: small-statefulset
objecttemplatepath: statefulset.yaml
templatefillmap: {}
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 0
tuningset: RandomizedDeletionTimeLimited
objectbundle:
- basename: medium-statefulset
objecttemplatepath: statefulset_service.yaml
templatefillmap: {}
listunknownobjectoptions: null
- basename: medium-statefulset
objecttemplatepath: statefulset.yaml
templatefillmap: {}
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 0
tuningset: RandomizedDeletionTimeLimited
objectbundle:
- basename: small-job
objecttemplatepath: job.yaml
templatefillmap: {}
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 0
tuningset: RandomizedDeletionTimeLimited
objectbundle:
- basename: medium-job
objecttemplatepath: job.yaml
templatefillmap: {}
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 0
tuningset: RandomizedDeletionTimeLimited
objectbundle:
- basename: big-job
objecttemplatepath: job.yaml
templatefillmap: {}
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 0
tuningset: RandomizedDeletionTimeLimited
objectbundle:
- basename: pv-small-statefulset-0
objecttemplatepath: pvc.yaml
templatefillmap: {}
listunknownobjectoptions:
labelselector:
matchlabels:
name: small-statefulset-0
matchexpressions: []
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 0
tuningset: RandomizedDeletionTimeLimited
objectbundle:
- basename: pv-medium-statefulset-0
objecttemplatepath: pvc.yaml
templatefillmap: {}
listunknownobjectoptions:
labelselector:
matchlabels:
name: medium-statefulset-0
matchexpressions: []
measurements: []
module:
path: ""
params: {}
name: delete objects
- phases: []
measurements:
- method: WaitForControlledPodsRunning
params:
action: gather
identifier: ""
instances:
- identifier: WaitForRunningDeployments
params: {}
- identifier: WaitForRunningStatefulSets
params: {}
- identifier: WaitForRunningDaemonSets
params: {}
- identifier: WaitForRunningJobs
params: {}
- method: WaitForBoundPVCs
params:
desiredPVCCount: 0
labelSelector: group = load
timeout: 15m
identifier: WaitForPVCsToBeDeleted
instances: []
module:
path: ""
params: {}
name: Waiting for 'delete objects' to be completed
- phases:
- namespacerange: null
replicaspernamespace: 0
tuningset: Sequence
objectbundle:
- basename: daemonset-priorityclass
objecttemplatepath: daemonset-priorityclass.yaml
templatefillmap: {}
listunknownobjectoptions: null
measurements: []
module:
path: ""
params: {}
name: Deleting PriorityClass for DaemonSets
- phases:
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 0
tuningset: Sequence
objectbundle:
- basename: big-service
objecttemplatepath: service.yaml
templatefillmap: {}
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 0
tuningset: Sequence
objectbundle:
- basename: medium-service
objecttemplatepath: service.yaml
templatefillmap: {}
listunknownobjectoptions: null
- namespacerange:
min: 1
max: 1
basename: null
replicaspernamespace: 0
tuningset: Sequence
objectbundle:
- basename: small-service
objecttemplatepath: service.yaml
templatefillmap: {}
listunknownobjectoptions: null
measurements: []
module:
path: ""
params: {}
name: Deleting k8s services
- phases: []
measurements:
- method: APIResponsivenessPrometheus
params:
action: gather
allowedSlowCalls: 0
customThresholds: ""
enableViolations: false
identifier: APIResponsivenessPrometheus
instances: []
- method: APIResponsivenessPrometheus
params:
action: gather
allowedSlowCalls: 0
customThresholds: ""
enableViolations: true
summaryName: APIResponsivenessPrometheus_simple
useSimpleLatencyQuery: true
identifier: APIResponsivenessPrometheusSimple
instances: []
- method: PodStartupLatency
params:
action: gather
labelSelector: group = load
threshold: 1h
identifier: CreatePhasePodStartupLatency
instances: []
- method: InClusterNetworkLatency
params:
action: gather
checkProbesReadyTimeout: 15m
replicasPerProbe: 3
identifier: InClusterNetworkLatency
instances: []
- method: SLOMeasurement
params:
action: gather
checkProbesReadyTimeout: 15m
replicasPerProbe: 3
identifier: SLOMeasurement
instances: []
- method: NetworkProgrammingLatency
params:
action: gather
identifier: NetworkProgrammingLatency
instances: []
- method: TestMetrics
params:
action: gather
clusterOOMsIgnoredProcesses: ""
clusterOOMsTrackerEnabled: true
enableRestartCountCheck: true
restartCountThresholdOverrides: ""
systemPodMetricsEnabled: true
identifier: TestMetrics
instances: []
module:
path: ""
params: {}
name: gathering measurements
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment