Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make k8s client rate limiter parameters configurable #3848

Merged
merged 2 commits into from
Dec 13, 2024

Conversation

Link-
Copy link
Member

@Link- Link- commented Dec 13, 2024

WHAT

Authored by @tfujiwar - Make k8s client rate limiter parameters configurable.
Original PR: #3833. Moved here to run e2e tests.

WHY

To reduce latency of runner pod creation (#3276).

EphemeralRunnerReconciler requires several k8s API calls until pod creation and those API calls are rate limited by a client library. It would be helpful if users can optimize the rate limiter parameter on their responsibility.

TESTING

We have tested the change with QPS=80 and Burst=120 (4 times higher than the default) while running 50-100 runners and confirmed that the reconcile time of EphemeralRunnerReconciler has decreased from 60 ms to 20 ms.

Screenshot 2024-12-02 at 21 43 19

@Link- Link- requested review from mumoshu, toast-gear, rentziass and a team as code owners December 13, 2024 14:23
@Link- Link- self-assigned this Dec 13, 2024
@Link- Link- added the attention Requires attention label Dec 13, 2024
@Link- Link- added this to the gha-runner-scale-set-0.10.0 milestone Dec 13, 2024
@Link- Link- merged commit 7e04027 into master Dec 13, 2024
17 checks passed
@Link- Link- deleted the k8s-rate-limiter-params branch December 13, 2024 14:37
@Link- Link- mentioned this pull request Dec 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
attention Requires attention
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants