feat(argo-workflows): support resourceRateLimit config (#1008)

* feat(argo-workflows): add `resourceRateLimit` config

Signed-off-by: clement <clement@le-corre.eu>

* chore: update chart version

Signed-off-by: clement <clement@le-corre.eu>

* chore(linter): add new line

Signed-off-by: clement <clement@le-corre.eu>

* chore: bump chart helm 0.9.0

Signed-off-by: clement <clement@le-corre.eu>
This commit is contained in:
Clément 2021-11-22 10:32:27 +01:00 committed by GitHub
parent aa41896292
commit 22575d4c62
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 13 additions and 2 deletions

View file

@ -2,7 +2,7 @@ apiVersion: v2
name: argo-workflows
description: A Helm chart for Argo Workflows
type: application
version: 0.8.3
version: 0.9.0
appVersion: v3.2.4
icon: https://raw.githubusercontent.com/argoproj/argo-workflows/master/docs/assets/argo.png
home: https://github.com/argoproj/argo-helm
@ -15,4 +15,4 @@ maintainers:
- name: benjaminws
annotations:
artifacthub.io/changes: |
- "[Changed]: Update to app version v3.2.4"
- "[Added]: support resourceRateLimit config"

View file

@ -94,6 +94,7 @@ Fields to note:
| controller.podWorkers | string | `nil` | Number of pod workers |
| controller.priorityClassName | string | `""` | Leverage a PriorityClass to ensure your pods survive resource shortages. |
| controller.replicas | int | `1` | The number of controller pods to run |
| controller.resourceRateLimit | object | `{}` | Globally limits the rate at which pods are created. This is intended to mitigate flooding of the Kubernetes API server by workflows with a large amount of parallel nodes. |
| controller.resources | object | `{}` | Resource limits and requests for the controller |
| controller.securityContext | object | `{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"readOnlyRootFilesystem":true,"runAsNonRoot":true}` | the controller container's securityContext |
| controller.serviceAccount.annotations | object | `{}` | Annotations applied to created service account |

View file

@ -21,6 +21,9 @@ data:
{{- if .Values.controller.parallelism }}
parallelism: {{ .Values.controller.parallelism }}
{{- end }}
{{- if .Values.controller.resourceRateLimit }}
resourceRateLimit: {{ toYaml .Values.controller.resourceRateLimit | nindent 6 }}
{{- end }}
{{- with .Values.controller.namespaceParallelism }}
namespaceParallelism: {{ . }}
{{- end }}

View file

@ -49,6 +49,13 @@ controller:
tag: ""
# -- parallelism dictates how many workflows can be running at the same time
parallelism:
# -- Globally limits the rate at which pods are created.
# This is intended to mitigate flooding of the Kubernetes API server by workflows with a large amount of
# parallel nodes.
resourceRateLimit: {}
# limit: 10
# burst: 1
# -- Limits the maximum number of incomplete workflows in a namespace
namespaceParallelism:
# -- Resolves ongoing, uncommon AWS EKS bug: https://github.com/argoproj/argo-workflows/pull/4224