fleet
fleet copied to clipboard
Improve benchmark report output
- Remove tests that didn't show any variation
- create-1-bundle
- create-1-gitrepo-1-big-bundle
- create-1-gitrepo-1-bundle
- Add new "150 bundles" test for targeting phase
- Improve the output by adding descriptions.
- Hide the details behind the
--verboseflag - Move dump output to
--debug. - Tests are now normal go code so they can be compiled into a binary
- Use templates to generate the big test assets
- Embed the test assets
- Add new
runcommand to run the tests and report on them
Example Output:
# Description of Setup
> This section contains information about the setup used for the current sample. Like the k8s version, the node resources and the images available to the node.
Node Resources
==============
CPU, Memory, Pods
2, 8123856Ki, 110
2, 8123856Ki, 110
2, 8123856Ki, 110
Images
======
docker.io/curlimages/curl:latest, docker.io/rancher/fleet-agent:dev, docker.io/rancher/fleet:dev, docker.io/rancher/klipper-helm:v0.9.3-build20241008, docker.io/rancher/klipper-lb:v0.4.9, docker.io/rancher/local-path-provisioner:v0.0.30, docker.io/rancher/mirrored-coredns-coredns:1.12.0, docker.io/rancher/mirrored-library-traefik:2.11.18, docker.io/rancher/mirrored-metrics-server:v0.7.2, docker.io/rancher/mirrored-pause:3.6
Kubernetes Version
==================
Client Version: v1.32.2
Kustomize Version: v5.5.0
Server Version: v1.31.5+k3s1
Population Size
===============
Reports in "db/": 5
# Results for Current Sample
> These measurements were taken before and after the experiments.
Measurement | Value | Unit
================================================
CPU | 418.6 | seconds
------------------------------------------------
CRDCount | 35 | CRDs
------------------------------------------------
ClusterCount | 1 | clusters
------------------------------------------------
GCDuration | 12.5 | seconds
------------------------------------------------
Mem | -3 | MB
------------------------------------------------
NetworkRX | 1975733318 | bytes
------------------------------------------------
NetworkTX | 425863067 | bytes
------------------------------------------------
NodeCount | 3 | nodes
------------------------------------------------
RESTClientDELETE200 | 153 | requests
------------------------------------------------
RESTClientDELETE404 | 13476 | requests
------------------------------------------------
RESTClientDELETE500 | 2 | requests
------------------------------------------------
RESTClientGET200 | 678 | requests
------------------------------------------------
RESTClientGET404 | 1 | requests
------------------------------------------------
RESTClientPATCH200 | 34 | requests
------------------------------------------------
RESTClientPATCH500 | 28 | requests
------------------------------------------------
RESTClientPOST201 | 409 | requests
------------------------------------------------
RESTClientPOST409 | 125 | requests
------------------------------------------------
RESTClientPUT200 | 7496 | requests
------------------------------------------------
RESTClientPUT409 | 492 | requests
------------------------------------------------
RESTClientPUT<error> | 1 | requests
------------------------------------------------
ReconcileErrors | 2284 | reconciles
------------------------------------------------
ReconcileRequeue | 8146 | reconciles
------------------------------------------------
ReconcileSuccess | 24723 | reconciles
------------------------------------------------
ReconcileTime | 47621.4 | seconds
------------------------------------------------
ResourceCount | -261 | resources
------------------------------------------------
SumCPU | 6 | cores
------------------------------------------------
SumMem | 23800 | MB
------------------------------------------------
SumPods | 330 | pods
------------------------------------------------
TotalDuration | 314.877 |
------------------------------------------------
WorkqueueAdds | 35153 | items
------------------------------------------------
WorkqueueQueueDuration | 36901.8 | seconds
------------------------------------------------
WorkqueueRetries | 10430 | items
------------------------------------------------
WorkqueueWorkDuration | 47645.5 | seconds
# Summary for each Experiment
> The duration of each experiment is compared to the population's data.
Experiment | Duration | Mean Duration |
============================================================================
create-1-bundledeployment-10-resources | 9.90s | 9.56s | worse
----------------------------------------------------------------------------
create-1-gitrepo-50-bundle | 16.61s | 11.49s | worse
----------------------------------------------------------------------------
create-150-bundle | 37.72s | 31.63s | worse
----------------------------------------------------------------------------
create-50-bundle | 11.77s | 7.85s | worse
----------------------------------------------------------------------------
create-50-bundledeployment-500-resources | 157.28s | 176.68s | better
----------------------------------------------------------------------------
create-50-gitrepo-50-bundle | 81.60s | 59.21s | worse
# Final Score
b-2025-04-25_12:08:24.json: 0.60
Move the report "b-2025-04-25_12:08:24.json" to the "db/" folder, if you want to compare future benchmark against it.