Tekton Controller Performance Configuration
Configure ThreadsPerController, QPS and Burst
This document will show us how to configure tekton-pipeline-controller’s performance. In general, there are mainly have three parameters will impact the performance of tekton controller, they are
ThreadsPerController: Threads (goroutines) to create per controller. It’s the number of threads to use when processing the controller’s work queue.
QPS: Queries per Second. Maximum QPS to the master from this client.
Burst: Maximum burst for throttle.
Configure Thread, QPS and Burst
Default, the value of ThreadsPerController, QPS and Burst is 2, 5.0 and 10 accordingly.
Sometimes, above default values can’t meet performance requirements, then you need to overwrite these values. You can modify them in the tekton controller deployment. You can specify these customized values in the
tekton-pipelines-controller container via
kube-api-burst flags accordingly. For example:
spec: serviceAccountName: tekton-pipelines-controller containers: - name: tekton-pipelines-controller image: ko://github.com/tektoncd/pipeline/cmd/controller args: [ "-kube-api-qps", "50", "-kube-api-burst", "50", "-threads-per-controller", "32", # other flags defined here... ]
Now, the ThreadsPerController, QPS and Burst have been changed to be
Although in above example, you set QPS and Burst to be
50. However, the actual values of them are multiplied by
2, so the actual QPS and Burst is
Was this page helpful?