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

Lower the api pod replicas from 3 to 1 #8812

Closed
rgl opened this issue Mar 18, 2024 · 3 comments · Fixed by #8841
Closed

Lower the api pod replicas from 3 to 1 #8812

rgl opened this issue Mar 18, 2024 · 3 comments · Fixed by #8841
Assignees
Labels
kind/feature Categorizes issue or PR as related to a new feature.

Comments

@rgl
Copy link

rgl commented Mar 18, 2024

What would you like to be added?

Lower the api pod replicas from 3 to 1.

Why is this needed?

To lower the requirements.

Also, all the other pods do not have more than one replica. Which makes this pod having more than one, somewhat strange to me. Unless I'm missing something?

@rgl rgl added the kind/feature Categorizes issue or PR as related to a new feature. label Mar 18, 2024
@floreks
Copy link
Member

floreks commented Mar 18, 2024

Our API uses very little resources when idle. Since this is mostly a proxy to Kubernetes API server it's good to balance the load through more pods. It can also help with i.e. throttling on bigger clusters or with more users.

You can override it if you don't need it.

@rgl
Copy link
Author

rgl commented Mar 18, 2024

and one instance would use even less resources :)

resources do not "idle" per-se. they are actually committed/dedicated as defined in their resource limits settings.

a single instance should handle a substancial load, right? more so, being mostly a proxy?

indeed, I've scaled it down to one. I'm just trying to understand why there is more than one by default.

@floreks
Copy link
Member

floreks commented Mar 28, 2024

resources do not "idle" per-se. they are actually committed/dedicated as defined in their resource limits settings.

Of course. That's why most kubernetes clusters are heavily overprovisioned and actual resource consumption is a lot lower than configured limits.

a single instance should handle a substancial load, right? more so, being mostly a proxy?

Having not done any performance/load tests of our API, I can't say anything for sure. I assume that Kubernetes API will be a bottleneck here since it tends to throttle requests quite heavily on bigger clusters.

It's hard to determine what kind of clusters should we target by default. Certainly small to medium clusters should not have any issues running on a single replica. Let's try scaling it back to 1 for now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants