[Router] Add routerSpec.tolerations to router Deployment#1006
Draft
Arkaniad wants to merge 1 commit into
Draft
Conversation
- Add routerSpec.tolerations field to values.yaml (mirrors servingEngineSpec.tolerations) - Render tolerations block in deployment-router.yaml template - Add routerSpec.tolerations row to README Router Configuration table - Add helm-unittest test cases for tolerations rendering - Update values.schema.json with tolerations property This enables deploying the router to tainted nodes (e.g., dedicated node pools) by specifying tolerations in the Helm values. Signed-off-by: Arkaniad <arkaniad@users.noreply.github.com> Signed-off-by: Rhea Danzey <rdanzey@element.io>
Contributor
There was a problem hiding this comment.
Code Review
This pull request introduces support for configuring Kubernetes tolerations on the router pod via routerSpec.tolerations. It includes updates to the Helm chart templates, values schema, default values with examples, documentation, and corresponding unit tests to verify correct rendering. There are no review comments, so no further feedback is provided.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add support for
routerSpec.tolerationsin the Helm chart, enabling the router deployment to schedule onto tainted nodes (e.g., dedicated node pools).Motivation
The router deployment template currently renders
routerSpec.affinityandrouterSpec.nodeSelectorTermsbut silently dropsrouterSpec.tolerations. The serving engine deployment already supportsservingEngineSpec.tolerations, so the two deployment schemas are asymmetric.When deploying the router to a dedicated node pool with taints (e.g., for larger root volumes to accommodate the 5.4 GiB router image), there was no way to add the matching toleration to the router pod.
Changes
routerSpec.tolerationsfield with helm-docs comment{{- with .Values.routerSpec.tolerations }}routerSpec.tolerationsrow to Router Configuration tableTesting
helm templatewith default values: no tolerations block rendered (correct)helm templatewithrouterSpec.tolerationsset: tolerations block rendered correctlyExample Usage
Signed-off-by: Arkaniad arkaniad@users.noreply.github.com