Skip to content

Commit b7ac924

Browse files
jmromanoslukidzi
andauthored
feat(kuma-cp): add priorityClassName to Helm Chart (#12652)
## Motivation Add the option to specify a priority class for kuma-cp ## Implementation information priorityClassName was added to the helm chart with a default empty value ## Supporting documentation xref: #12721 --------- Signed-off-by: jmromanos <[email protected]> Co-authored-by: Lukasz Dziedziak <[email protected]>
1 parent 920abdf commit b7ac924

File tree

7 files changed

+39
-0
lines changed

7 files changed

+39
-0
lines changed

app/kumactl/cmd/install/testdata/install-control-plane.dump-values.yaml

+9
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,9 @@ controlPlane:
119119
# This is rendered as a template, so you can use variables to generate match labels.
120120
topologySpreadConstraints:
121121

122+
# -- Priority Class Name of the Kuma Control Plane
123+
priorityClassName: ""
124+
122125
# -- Failure policy of the mutating webhook implemented by the Kuma Injector component
123126
injectorFailurePolicy: Fail
124127

@@ -532,6 +535,9 @@ ingress:
532535
# This is rendered as a template, so you can use variables to generate match labels.
533536
topologySpreadConstraints:
534537

538+
# -- Priority Class Name of the ingress
539+
priorityClassName: ""
540+
535541
# -- Security context at the pod level for ingress
536542
podSecurityContext:
537543
runAsNonRoot: true
@@ -655,6 +661,9 @@ egress:
655661
# This is rendered as a template, so you can use variables to generate match labels.
656662
topologySpreadConstraints:
657663

664+
# -- Priority Class Name of the egress
665+
priorityClassName: ""
666+
658667
# -- Security context at the pod level for egress
659668
podSecurityContext:
660669
runAsNonRoot: true

deployments/charts/kuma/README.md

+3
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ A Helm chart for the Kuma Control Plane
4040
| controlPlane.podDisruptionBudget.maxUnavailable | int | `1` | The maximum number of unavailable pods allowed by the budget |
4141
| controlPlane.affinity | object | `{"podAntiAffinity":{"preferredDuringSchedulingIgnoredDuringExecution":[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app.kubernetes.io/name","operator":"In","values":["{{ include \"kuma.name\" . }}"]},{"key":"app.kubernetes.io/instance","operator":"In","values":["{{ .Release.Name }}"]},{"key":"app","operator":"In","values":["{{ include \"kuma.name\" . }}-control-plane"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":100}]}}` | Affinity placement rule for the Kuma Control Plane pods. This is rendered as a template, so you can reference other helm variables or includes. |
4242
| controlPlane.topologySpreadConstraints | string | `nil` | Topology spread constraints rule for the Kuma Control Plane pods. This is rendered as a template, so you can use variables to generate match labels. |
43+
| controlPlane.priorityClassName | string | `""` | Priority Class Name of the Kuma Control Plane |
4344
| controlPlane.injectorFailurePolicy | string | `"Fail"` | Failure policy of the mutating webhook implemented by the Kuma Injector component |
4445
| controlPlane.service.apiServer.http.nodePort | int | `30681` | Port on which Http api server Service is exposed on Node for service of type NodePort |
4546
| controlPlane.service.apiServer.https.nodePort | int | `30682` | Port on which Https api server Service is exposed on Node for service of type NodePort |
@@ -157,6 +158,7 @@ A Helm chart for the Kuma Control Plane
157158
| ingress.podDisruptionBudget.maxUnavailable | int | `1` | The maximum number of unavailable pods allowed by the budget |
158159
| ingress.affinity | object | `{"podAntiAffinity":{"preferredDuringSchedulingIgnoredDuringExecution":[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app.kubernetes.io/name","operator":"In","values":["{{ include \"kuma.name\" . }}"]},{"key":"app.kubernetes.io/instance","operator":"In","values":["{{ .Release.Name }}"]},{"key":"app","operator":"In","values":["kuma-ingress"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":100}]}}` | Affinity placement rule for the Kuma Ingress pods This is rendered as a template, so you can reference other helm variables or includes. |
159160
| ingress.topologySpreadConstraints | string | `nil` | Topology spread constraints rule for the Kuma Mesh Ingress pods. This is rendered as a template, so you can use variables to generate match labels. |
161+
| ingress.priorityClassName | string | `""` | Priority Class Name of the ingress |
160162
| ingress.podSecurityContext | object | `{"runAsGroup":5678,"runAsNonRoot":true,"runAsUser":5678}` | Security context at the pod level for ingress |
161163
| ingress.containerSecurityContext | object | `{"readOnlyRootFilesystem":true}` | Security context at the container level for ingress |
162164
| ingress.serviceAccountAnnotations | object | `{}` | Annotations to add for Control Plane's Service Account |
@@ -194,6 +196,7 @@ A Helm chart for the Kuma Control Plane
194196
| egress.podDisruptionBudget.maxUnavailable | int | `1` | The maximum number of unavailable pods allowed by the budget |
195197
| egress.affinity | object | `{"podAntiAffinity":{"preferredDuringSchedulingIgnoredDuringExecution":[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app.kubernetes.io/name","operator":"In","values":["{{ include \"kuma.name\" . }}"]},{"key":"app.kubernetes.io/instance","operator":"In","values":["{{ .Release.Name }}"]},{"key":"app","operator":"In","values":["kuma-egress"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":100}]}}` | Affinity placement rule for the Kuma Egress pods. This is rendered as a template, so you can reference other helm variables or includes. |
196198
| egress.topologySpreadConstraints | string | `nil` | Topology spread constraints rule for the Kuma Egress pods. This is rendered as a template, so you can use variables to generate match labels. |
199+
| egress.priorityClassName | string | `""` | Priority Class Name of the egress |
197200
| egress.podSecurityContext | object | `{"runAsGroup":5678,"runAsNonRoot":true,"runAsUser":5678}` | Security context at the pod level for egress |
198201
| egress.containerSecurityContext | object | `{"readOnlyRootFilesystem":true}` | Security context at the container level for egress |
199202
| egress.serviceAccountAnnotations | object | `{}` | Annotations to add for Control Plane's Service Account |

deployments/charts/kuma/templates/cp-deployment.yaml

+3
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,9 @@ spec:
9797
{{- with .Values.controlPlane.topologySpreadConstraints }}
9898
topologySpreadConstraints: {{ tpl (toYaml . | nindent 8) $ }}
9999
{{- end }}
100+
{{- with .Values.controlPlane.priorityClassName }}
101+
priorityClassName: {{ . }}
102+
{{- end }}
100103
securityContext:
101104
{{- toYaml .Values.controlPlane.podSecurityContext | trim | nindent 8 }}
102105
serviceAccountName: {{ include "kuma.name" . }}-control-plane

deployments/charts/kuma/templates/egress-deployment.yaml

+3
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@ spec:
3333
{{- with .Values.egress.topologySpreadConstraints }}
3434
topologySpreadConstraints: {{ tpl (toYaml . | nindent 8) $ }}
3535
{{- end }}
36+
{{- with .Values.egress.priorityClassName }}
37+
priorityClassName: {{ . }}
38+
{{- end }}
3639
securityContext:
3740
{{- toYaml .Values.egress.podSecurityContext | trim | nindent 8 }}
3841
serviceAccountName: {{ include "kuma.name" . }}-egress

deployments/charts/kuma/templates/ingress-deployment.yaml

+3
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@ spec:
3333
{{- with .Values.ingress.topologySpreadConstraints }}
3434
topologySpreadConstraints: {{ tpl (toYaml . | nindent 8) $ }}
3535
{{- end }}
36+
{{- with .Values.ingress.priorityClassName }}
37+
priorityClassName: {{ . }}
38+
{{- end }}
3639
securityContext:
3740
{{- toYaml .Values.ingress.podSecurityContext | trim | nindent 8 }}
3841
serviceAccountName: {{ include "kuma.name" . }}-ingress

deployments/charts/kuma/values.yaml

+9
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,9 @@ controlPlane:
119119
# This is rendered as a template, so you can use variables to generate match labels.
120120
topologySpreadConstraints:
121121

122+
# -- Priority Class Name of the Kuma Control Plane
123+
priorityClassName: ""
124+
122125
# -- Failure policy of the mutating webhook implemented by the Kuma Injector component
123126
injectorFailurePolicy: Fail
124127

@@ -532,6 +535,9 @@ ingress:
532535
# This is rendered as a template, so you can use variables to generate match labels.
533536
topologySpreadConstraints:
534537

538+
# -- Priority Class Name of the ingress
539+
priorityClassName: ""
540+
535541
# -- Security context at the pod level for ingress
536542
podSecurityContext:
537543
runAsNonRoot: true
@@ -655,6 +661,9 @@ egress:
655661
# This is rendered as a template, so you can use variables to generate match labels.
656662
topologySpreadConstraints:
657663

664+
# -- Priority Class Name of the egress
665+
priorityClassName: ""
666+
658667
# -- Security context at the pod level for egress
659668
podSecurityContext:
660669
runAsNonRoot: true

docs/generated/raw/helm-values.yaml

+9
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,9 @@ controlPlane:
119119
# This is rendered as a template, so you can use variables to generate match labels.
120120
topologySpreadConstraints:
121121

122+
# -- Priority Class Name of the Kuma Control Plane
123+
priorityClassName: ""
124+
122125
# -- Failure policy of the mutating webhook implemented by the Kuma Injector component
123126
injectorFailurePolicy: Fail
124127

@@ -532,6 +535,9 @@ ingress:
532535
# This is rendered as a template, so you can use variables to generate match labels.
533536
topologySpreadConstraints:
534537

538+
# -- Priority Class Name of the ingress
539+
priorityClassName: ""
540+
535541
# -- Security context at the pod level for ingress
536542
podSecurityContext:
537543
runAsNonRoot: true
@@ -655,6 +661,9 @@ egress:
655661
# This is rendered as a template, so you can use variables to generate match labels.
656662
topologySpreadConstraints:
657663

664+
# -- Priority Class Name of the egress
665+
priorityClassName: ""
666+
658667
# -- Security context at the pod level for egress
659668
podSecurityContext:
660669
runAsNonRoot: true

0 commit comments

Comments
 (0)