-
Notifications
You must be signed in to change notification settings - Fork 27
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
.Values.replicas should be independently set for each service #341
Comments
we also could treat replicas like we do resources. We have a global default setting and a per service setting, which wins over the global one. Or do you vote for only a per service option? |
Well, that is what I meant with the first point, I do not really think a global setting is useful enough to warrant the added complexity in the helm chart. I also expect some components like nats to require quorum, so just having one large replica setting might also invite configuration accidents, and I guess most components do not need to scale beyond HA, whereas proxy and frontend probably need quite a few more replicas in most settings. I think I would even argue that a global setting is kinda useless for resources as well, but having good defaults there might be more tricky than |
The builtin NATS does not support scaling / clustering. Therefore we have an example with an external NATS cluster. Currently you also need to ensure settings replicas for NATS streams, that's why we recently added NACK to the example to achieve this. See: https://github.com/owncloud/ocis-charts/tree/master/deployments/ocis-nats There are no other components that have something like a quorum.
I totally get your point and agree that we should offer a replica setting per service. I guess we should have the following logic when it comes to replicas / HPA settings:
In short: service-specific setting wins. And HPA wins over the replicas setting when it has the same specifically (global / service-specific).
We have this because many service have a similar low need for resources and they can be configured together in this way. But still it's true that you need to check if resources are set correct in the end. |
The number replicas should be configurable independently for each service, i.e. drop
.Values.replicas
and then have.Values.services.$service.replicas
for each $service we deploy.Random thoughts:
.Values.replicas
being setThe text was updated successfully, but these errors were encountered: