Skip to content

Commit 772b611

Browse files
committed
Deploy with KEDA_HTTP_TLS_CIPHER_LIST, KEDA_GRPC_MIN_TLS_VERSION and KEDA_GRPC_TLS_CIPHER_LIST env vars
Signed-off-by: Joel Smith <joelsmith@redhat.com>
1 parent ac335ce commit 772b611

4 files changed

Lines changed: 24 additions & 0 deletions

File tree

keda/README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,7 @@ their default values.
9292
| `hostAliases` | list | `[]` | HostAliases for pod networking ([docs](https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/)) |
9393
| `http.keepAlive.enabled` | bool | `true` | Enable HTTP connection keep alive |
9494
| `http.minTlsVersion` | string | `"TLS12"` | The minimum TLS version to use for all scalers that use raw HTTP clients (some scalers use SDKs to access target services. These have built-in HTTP clients, and this value does not necessarily apply to them) |
95+
| `http.tlsCipherList` | string | `""` | The list of ciphersuites to use when making HTTP over TLS connections. When left empty or unset, the TLS implementaion will provide a default list of ciphersuites which are believed to be secure. |
9596
| `http.timeout` | int | `3000` | The default HTTP timeout to use for all scalers that use raw HTTP clients (some scalers use SDKs to access target services. These have built-in HTTP clients, and the timeout does not necessarily apply to them) |
9697
| `image.pullPolicy` | string | `"Always"` | Image pullPolicy for all KEDA components |
9798
| `imagePullSecrets` | list | `[]` | Name of secret to use to pull images to use to pull Docker images |
@@ -119,6 +120,8 @@ their default values.
119120
| `rbac.enabledCustomScaledRefKinds` | bool | `true` | Whether RBAC for configured CRDs that can have a `scale` subresource should be created |
120121
| `rbac.scaledRefKinds` | list | `[{"apiGroup":"*","kind":"*"}]` | List of custom resources that support the `scale` subresource and can be referenced by `scaledobject.spec.scaleTargetRef`. The feature needs to be also enabled by `enabledCustomScaledRefKinds`. If left empty, RBAC for `apiGroups: *` and `resources: *, */scale` will be created note: Deployments and StatefulSets are supported out of the box |
121122
| `securityContext` | object | [See below](#KEDA-is-secure-by-default) | [Security context] for all containers |
123+
| `service.minTlsVersion` | string | `"TLS13"` | The minimum TLS version to use when KEDA components listen via TLS-enabled services (gRPC & Webhook). |
124+
| `service.tlsCipherList` | string | `""` | The list of ciphersuites to use when KEDA comonents listen via TLS-enabled services. When left empty or unset, the TLS implementaion will provide a default list of ciphersuites which are believed to be secure. |
122125
| `tolerations` | list | `[]` | Tolerations for pod scheduling ([docs](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/)) |
123126
| `watchNamespace` | string | `""` | Defines Kubernetes namespaces to watch to scale their workloads. Default watches all namespaces |
124127

keda/templates/manager/deployment.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,12 @@ spec:
164164
value: {{ .Values.http.timeout | quote }}
165165
- name: KEDA_HTTP_MIN_TLS_VERSION
166166
value: {{ .Values.http.minTlsVersion }}
167+
- name: KEDA_HTTP_TLS_CIPHER_LIST
168+
value: {{ .Values.http.tlsCipherList }}
169+
- name: KEDA_SERVICE_MIN_TLS_VERSION
170+
value: {{ .Values.service.minTlsVersion }}
171+
- name: KEDA_SERVICE_TLS_CIPHER_LIST
172+
value: {{ .Values.service.tlsCipherList }}
167173
{{- if ( not .Values.http.keepAlive.enabled ) }}
168174
- name: KEDA_HTTP_DISABLE_KEEP_ALIVE
169175
value: "true"

keda/templates/metrics-server/deployment.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,12 @@ spec:
107107
value: {{ .Values.http.timeout | quote }}
108108
- name: KEDA_HTTP_MIN_TLS_VERSION
109109
value: {{ .Values.http.minTlsVersion }}
110+
- name: KEDA_HTTP_TLS_CIPHER_LIST
111+
value: {{ .Values.http.tlsCipherList }}
112+
- name: KEDA_SERVICE_MIN_TLS_VERSION
113+
value: {{ .Values.service.minTlsVersion }}
114+
- name: KEDA_SERVICE_TLS_CIPHER_LIST
115+
value: {{ .Values.service.tlsCipherList }}
110116
{{- if ( not .Values.http.keepAlive.enabled ) }}
111117
- name: KEDA_HTTP_DISABLE_KEEP_ALIVE
112118
value: "true"

keda/values.yaml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -596,6 +596,13 @@ affinity: {}
596596
# -- priorityClassName for all KEDA components
597597
priorityClassName: ""
598598

599+
## Service settings for KEDA components which provide a network service or server
600+
service:
601+
# -- The minimum TLS version to use when KEDA components provide a TLS-enabled service.
602+
minTlsVersion: "TLS13"
603+
# -- The list of ciphersuites to use when KEDA comonents provide a TLS-enabled service. When left empty or unset, the TLS implementaion will provide a default list of ciphersuites which are believed to be secure.
604+
tlsCipherList: ""
605+
599606
## The default HTTP timeout in milliseconds that KEDA should use
600607
## when making requests to external services. Removing this defaults to a
601608
## reasonable default
@@ -607,6 +614,8 @@ http:
607614
enabled: true
608615
# -- The minimum TLS version to use for all scalers that use raw HTTP clients (some scalers use SDKs to access target services. These have built-in HTTP clients, and this value does not necessarily apply to them)
609616
minTlsVersion: TLS12
617+
# -- The list of ciphersuites to use when making HTTP over TLS connections. When left empty or unset, the TLS implementaion will provide a default list of ciphersuites which are believed to be secure.
618+
tlsCipherList: ""
610619

611620
## This setting lets you enable profiling for all of the components of KEDA and in the specific port you choose
612621
## This can be useful when trying to investigate errors like memory leaks or CPU or even look at goroutines to understand better

0 commit comments

Comments
 (0)