11{{- /*
2- Copyright Drycc Community .
2+ Copyright VMware, Inc .
33SPDX-License-Identifier : APACHE-2.0
44*/}}
55
6- apiVersion : {{ include "common.capabilities.deployment .apiVersion" . }}
7- kind : Deployment
6+ apiVersion : {{ include "common.capabilities.statefulset .apiVersion" . }}
7+ kind : StatefulSet
88metadata :
99 name : {{ include "flink.taskmanager.fullname" . }}
1010 namespace : {{ include "common.names.namespace" . | quote }}
@@ -15,15 +15,15 @@ metadata:
1515 annotations : {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
1616 {{- end }}
1717spec :
18+ replicas : {{ .Values.taskmanager.replicaCount }}
1819 {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.taskmanager.podLabels .Values.commonLabels ) "context" . ) }}
1920 selector :
2021 matchLabels : {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
2122 app.kubernetes.io/part-of : flink
2223 app.kubernetes.io/component : taskmanager
23- replicas : {{ .Values.taskmanager.replicaCount }}
24- {{- if .Values.taskmanager.updateStrategy }}
25- strategy : {{- toYaml .Values.taskmanager.updateStrategy | nindent 4 }}
26- {{- end }}
24+ podManagementPolicy : {{ .Values.taskmanager.podManagementPolicy }}
25+ serviceName : {{ printf "%s-headless" (include "flink.taskmanager.fullname" .) | trunc 63 | trimSuffix "-" }}
26+ updateStrategy : {{- toYaml .Values.taskmanager.updateStrategy | nindent 4 }}
2727 template :
2828 metadata :
2929 labels : {{- include "common.labels.standard" ( dict "customLabels" $podLabels "context" $ ) | nindent 8 }}
7272 image : {{ include "flink.image" . }}
7373 imagePullPolicy : {{ .Values.image.pullPolicy | quote }}
7474 {{- if .Values.taskmanager.containerSecurityContext.enabled }}
75- securityContext : {{- omit .Values.taskmanager.containerSecurityContext "enabled" | toYaml | nindent 12 }}
75+ securityContext : {{- omit .Values.taskmanager.podSecurityContext "enabled" | toYaml | nindent 12 }}
7676 {{- end }}
7777 {{- if .Values.diagnosticMode.enabled }}
7878 command : {{- include "common.tplvalues.render" (dict "value" .Values.diagnosticMode.command "context" $) | nindent 12 }}
9393 - name : tcp-rpc
9494 containerPort : {{ .Values.taskmanager.containerPorts.rpc }}
9595 env :
96+ - name : MY_POD_NAME
97+ valueFrom :
98+ fieldRef :
99+ fieldPath : metadata.name
96100 - name : FLINK_MODE
97101 value : taskmanager
98102 # Hosts and addresses are determined by the service full name, which maps to flink.*§.fullname
@@ -104,8 +108,15 @@ spec:
104108 value : 0.0.0.0
105109 - name : FLINK_CFG_TASKMANAGER_RPC_PORT
106110 value : {{ .Values.taskmanager.containerPorts.rpc | quote }}
111+ {{- $releaseNamespace := include "common.names.namespace" . }}
112+ {{- $headlessServiceName := printf "%s-headless" (include "flink.taskmanager.fullname" .) | trunc 63 | trimSuffix "-" }}
113+ {{- $clusterDomain := .Values.clusterDomain }}
114+ - name : FLINK_CFG_TASKMANAGER_HOST
115+ value : " $(MY_POD_NAME).{{ $headlessServiceName }}.{{ $releaseNamespace }}.svc.{{ $clusterDomain }}"
107116 - name : FLINK_CFG_TASKMANAGER_BIND__HOST
108117 value : 0.0.0.0
118+ - name : FLINK_CFG_PROCESS_TASKMANAGER_WORKING__DIR
119+ value : /data
109120 - name : DRYCC_DEBUG
110121 value : {{ ternary "true" "false" .Values.image.debug | quote }}
111122 {{- if .Values.taskmanager.extraEnvVars }}
@@ -146,13 +157,53 @@ spec:
146157 {{- if .Values.taskmanager.resources }}
147158 resources : {{- toYaml .Values.taskmanager.resources | nindent 12 }}
148159 {{- end }}
149- {{- if .Values.taskmanager.extraVolumeMounts }}
150- volumeMounts : {{- include "common.tplvalues.render" ( dict "value" .Values.taskmanager.extraVolumeMounts "context" $) | nindent 12 }}
151- {{- end }}
160+ volumeMounts :
161+ - name : data
162+ mountPath : /data
163+ {{- if .Values.taskmanager.extraVolumeMounts }}
164+ {{- include "common.tplvalues.render" ( dict "value" .Values.taskmanager.extraVolumeMounts "context" $) | nindent 12 }}
165+ {{- end }}
152166 {{- if .Values.taskmanager.sidecars }}
153167 {{- include "common.tplvalues.render" ( dict "value" .Values.taskmanager.sidecars "context" $) | nindent 8 }}
154168 {{- end }}
155169 volumes :
156- {{- if .Values.taskmanager.extraVolumes }}
157- {{- include "common.tplvalues.render" ( dict "value" .Values.taskmanager.extraVolumes "context" $) | nindent 8 }}
170+ {{- if not .Values.taskmanager.persistence.enabled }}
171+ - name : " data"
172+ emptyDir : {}
173+ {{- else if .Values.taskmanager.persistence.existingClaim }}
174+ - name : " data"
175+ persistentVolumeClaim :
176+ claimName : {{ .Values.taskmanager.persistence.existingClaim }}
177+ {{- else }}
178+ {{- if .Values.taskmanager.persistentVolumeClaimRetentionPolicy.enabled }}
179+ persistentVolumeClaimRetentionPolicy :
180+ whenDeleted : {{ .Values.taskmanager.persistentVolumeClaimRetentionPolicy.whenDeleted }}
181+ whenScaled : {{ .Values.taskmanager.persistentVolumeClaimRetentionPolicy.whenScaled }}
182+ {{- end }}
183+ volumeClaimTemplates :
184+ - metadata :
185+ name : " data"
186+ {{- if or .Values.taskmanager.persistence.annotations .Values.commonAnnotations }}
187+ {{- $claimAnnotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.taskmanager.persistence.annotations .Values.commonAnnotations ) "context" . ) }}
188+ annotations : {{- include "common.tplvalues.render" ( dict "value" $claimAnnotations "context" $) | nindent 4 }}
189+ {{- end }}
190+ {{- if .Values.commonLabels }}
191+ labels : {{- include "common.tplvalues.render" (dict "value" .Values.commonLabels "context" $) | nindent 10 }}
158192 {{- end }}
193+ spec :
194+ accessModes :
195+ {{- range .Values.taskmanager.persistence.accessModes }}
196+ - {{ . | quote }}
197+ {{- end }}
198+ resources :
199+ requests :
200+ storage : {{ .Values.taskmanager.persistence.size | quote }}
201+ {{- if .Values.taskmanager.persistence.selector }}
202+ selector : {{- include "common.tplvalues.render" (dict "value" .Values.taskmanager.persistence.selector "context" $) | nindent 10 }}
203+ {{- else if .Values.taskmanager.persistence.existingVolume }}
204+ selector :
205+ matchLabels :
206+ volume : {{ .Values.taskmanager.persistence.existingVolume }}
207+ {{- end }}
208+ {{- include "common.storage.class" (dict "persistence" .Values.taskmanager.persistence "global" .Values.global) | nindent 8 }}
209+ {{- end }}
0 commit comments