charts icon indicating copy to clipboard operation
charts copied to clipboard

Tolerations not added to setup-credentials-job

Open dgparker opened this issue 1 year ago • 3 comments

The setup-credentials-job does not currently support tolerations or nodeSelectors.

Proposal 1: Inherit tolerations and nodeSelectors from top master values e.g.; .Values.master.tolerations

Proposal 2: Define job specific tolerations and nodeSelectors for authCredentials e.g.; .Values.authCredentials.tolerations

proposal 2 seems more consistent with the current configuration since support for both of these fields exists at both the master and tserver levels.

If desired, willing to contribute changes upstream.

dgparker avatar Dec 06 '23 04:12 dgparker

Flowing the tserver tolerations to this job makes sense (because it is essentially talking to the tservers) @bhavin192 @baba230896 @amannijhawan - any opinions?

iSignal avatar Dec 14 '23 18:12 iSignal

Hi @dgparker Thanks for contributing to yugabyte, we can certainly take contributions in this area. We have a contributor guide, it doesn't specifically cover helm chart changes but it applies to the charts repo as well. https://docs.yugabyte.com/preview/contribute/

Proposal 2 gives us the most flexibility, the trade off is that if the tolerations are the same as master, tserver we would have to repeat that in values.yaml multiple times.

As @iSignal suggested proposal 1 where we inherit the same values as tserver works as well since we are mostly talking to the tserver in this case.

Can you shed some light on what is the usecase on your end for this ?

amannijhawan avatar Dec 14 '23 19:12 amannijhawan

Created a PR to address this issue.

I'm in agreement with @iSignal that inheriting values from tserver makes the most sense. Additionally it reduces repetition in values.yaml as mentioned by @amannijhawan.

Something interesting perhaps - Chart allows users to specify separate tolerations for tserver and master but the nodeSelectors are shared.

use-case: We're deploying into a shared environment where nodes are isolated by business entity (controlled by taint) . Without the proper tolerations pods will fail to be scheduled.

dgparker avatar Dec 17 '23 05:12 dgparker