Allow different maxUnavailable settings based on type of node

I'm using ECK and I'd like to set different maxUnavailable settings based on type of node.
For example, 2 client nodes can go down at the same time but i'd like only 1 data node to go down at a time. Unfortunately it seems you can only set this value at the top level and it's applied to all nodes regardless of type.
Is this something that can be done now? If not, could we add this feature?


I think you are referring to this issue:

Right now, even if there's still some budget, some predicates may prevent some nodes to be restarted. Unfortunately as mentioned in the issue those predicates only apply to data and master nodes for the moment.

I think I would first address that issue before opening a new one to discuss the need of a "per nodeset" budget.

I'm not sure it's the same. It's talking about removing all and upgrading.

One scenario that describes my problem: if I have maxUnavailable: 1 and one node is down I can't perform maintenance on any other node. Which is fine for data nodes but if I have 4 ingest nodes I'd like to take one down (while one data node is down). So I'd like maxUnavailable: 1 for data nodes and maxUnavailable: 2 for ingest nodes.

With helm chart I can do this. I just specify different settings for each statefulset.

If I have a big cluster and one node goes down, I can't do maintenance on any of the client nodes.