Skip to content

Commit

Permalink
Merge pull request #2 from fluxcd/address-nits
Browse files Browse the repository at this point in the history
Improve wording in results document
  • Loading branch information
hiddeco authored Dec 12, 2023
2 parents e21734c + c7f17c7 commit d61aebe
Showing 1 changed file with 14 additions and 14 deletions.
28 changes: 14 additions & 14 deletions RESULTS.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
# MTTP Benchmark Results

The Mean Time To Production (MTTP) benchmark measures the time it takes for Flux
to deploy application changes into production. We measure the time spent on fetching
app packages from the registry (Flux OCI artifacts and Helm charts) and the time spent
reconciling app definitions on the Kubernetes cluster.
The Mean Time To Production (MTTP) benchmark measures the time it takes for
Flux to deploy application changes into production. We measure the time spent
on fetching app packages from the registry (Flux OCI artifacts and Helm charts)
and the time spent reconciling app definitions on the Kubernetes cluster.

For this benchmark we assume 100, 500 and 1000 app packages being pushed to the registry at the same time.
For this benchmark we assume 100, 500 and 1000 app packages being pushed to the
registry at the same time.

**Specs**

Expand Down Expand Up @@ -36,13 +37,12 @@ For this benchmark we assume 100, 500 and 1000 app packages being pushed to the

### Observations

Increasing kustomize-controller's concurrency above 10,
does yell better results but the tmp dir must be in tmpfs to avoid kustomize build disk thrashing.

Setting `DisableStatusPollerCache` in kustomize-controller is a must when reconciling more than 100
objects in a namespace, otherwise the poller cache will fill all the available memory.

Increasing helm-controller's concurrency above 10,
does not yell better results due to Helm SDK overloading the Kubernetes OpenAPI endpoint.
Higher concurrency probably requires an HA Kubernetes control plane with multiple API replicas.
Increasing kustomize-controller's concurrency above 10 does yield better
results, but the `/tmp` directory must be in tmpfs to prevent the Kustomize
build from disk thrashing. Documentation on this can be found here:
https://fluxcd.io/flux/installation/configuration/vertical-scaling/#enable-in-memory-kustomize-builds

Increasing helm-controller's concurrency above 10 does not yield better
results due to Helm SDK overloading the Kubernetes OpenAPI endpoint.
Higher concurrency probably requires an HA Kubernetes control plane with
multiple API replicas.

0 comments on commit d61aebe

Please sign in to comment.