werf new release: v2.22.0 accelerating large Helm releases deployment #6572
shurup
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Briefly
werf v2.22.0 has been released. It introduces new default limits and options that allow you to significantly accelerate large deployments.
Background & details
Queries to the Kubernetes API are subject to client-side rate limiting by werf/Helm/Nelm. This can severely slow down the deployment of large Helm releases. In werf, rate limiting took place when the number of queries exceeded 5 qps, after an initial burst of 10 queries.
Starting with version 2.22.0, the thresholds have been bumped up: rate limiting now kicks in when the threshold of 30 qps is exceeded, after an initial burst of 100 queries. On top of that, v2.22.0 introduces two new options:
--kube-burst-limitto configure the request burst limit,--kube-qps-limitto define the queries-per-second limit.These complement the existing
--network-parallelismparameter (30by default), which controls request parallelism during deployments.Since the cluster operations in the new werf v2 deployment engine are highly parallelized, the speed of deployments has increased dramatically. For example, in our test cluster, the time it takes to roll out 100 deployments with
werf converge(an easily parallelizable scenario) decreased from 90 to 25 seconds 🚀One more change in werf v2.22.0 is the addition of TLS-related options introduced in v2.21.0 (
--skip-tls-verify-kube,--kube-api-server,--kube-ca-path,--kube-tls-server,--kube-token,--skip-tls-verify-helm-dependencies) to bundles as well.Additional information
Beta Was this translation helpful? Give feedback.
All reactions