Configuring and Customizing Helm
Kubernetes API Rate Limiting
Two important environment variables control how Helm interacts with the Kubernetes API server in terms of request rate limiting: HELM_QPS and HELM_BURST_LIMIT.
Helm uses the Kubernetes client-go library, which has a built-in rate limiter to control how often it sends requests to the Kubernetes API. This protects the API server from being overloaded during operations such as install, upgrade, or list.
When a chart contains many CRDs, Helm performs extra discovery calls to understand new API groups and resource types, which increases the number of API requests.
HELM_QPS sets the average number of Kubernetes API requests that Helm is allowed to make per second. It defines the steady, sustainable request rate used by the client-go library inside Helm.
- A higher QPS value speeds up operations that require many API calls.
- A lower QPS value reduces the load on a busy or sensitive cluster.
If the value is set to 0 (the default in our case), Helm uses client-go's built-in default, which is usually 5 requests per second.
The burst limit (HELM_BURST_LIMIT) defines how many API requests Helm can send in a short spike before the rate limiter forces it to slow down
Helm in Practice
Designing, Deploying, and Operating Kubernetes Applications at ScaleEnroll now to unlock current content and receive all future updates for free. Your purchase supports the author and fuels the creation of more exciting content. Act fast, as the price will rise as the course nears completion!
Hurry! This limited time offer ends in:
To redeem this offer, copy the coupon code below and apply it at checkout:
