feat(helm): add filesystem checkpoint storage mode
This commit is contained in:
parent
44ff3627fc
commit
62c340bc64
@ -2,7 +2,7 @@ apiVersion: v2
|
|||||||
name: flink-kube-operator
|
name: flink-kube-operator
|
||||||
description: Helm chart for flink kube operator
|
description: Helm chart for flink kube operator
|
||||||
type: application
|
type: application
|
||||||
version: 1.0.1
|
version: 1.1.0
|
||||||
appVersion: "0.1.1"
|
appVersion: "0.1.1"
|
||||||
dependencies:
|
dependencies:
|
||||||
- name: minio
|
- name: minio
|
||||||
|
|||||||
@ -18,9 +18,13 @@
|
|||||||
high-availability.type: kubernetes
|
high-availability.type: kubernetes
|
||||||
kubernetes.namespace: {{ .Release.Namespace }}
|
kubernetes.namespace: {{ .Release.Namespace }}
|
||||||
kubernetes.cluster-id: {{ .Values.clusterId | default (print .Release.Name "-cluster") }}
|
kubernetes.cluster-id: {{ .Values.clusterId | default (print .Release.Name "-cluster") }}
|
||||||
execution.checkpointing.interval: {{ .Values.flink.checkpoint.interval }}
|
execution.checkpointing.interval: {{ .Values.flink.state.checkpoint.interval }}
|
||||||
execution.checkpointing.mode: {{ .Values.flink.checkpoint.mode }}
|
execution.checkpointing.mode: {{ .Values.flink.state.checkpoint.mode }}
|
||||||
|
{{- if eq .Values.flink.state.checkpoint.storageType "filesystem" }}
|
||||||
|
state.checkpoints.dir: /opt/flink/checkpoints/
|
||||||
|
{{- else if eq .Values.flink.state.checkpoint.storageType "s3" }}
|
||||||
state.checkpoints.dir: s3://flink/checkpoints/
|
state.checkpoints.dir: s3://flink/checkpoints/
|
||||||
|
{{- end }}
|
||||||
state.backend.rocksdb.localdir: /opt/flink/rocksdb
|
state.backend.rocksdb.localdir: /opt/flink/rocksdb
|
||||||
high-availability.storageDir: /opt/flink/ha
|
high-availability.storageDir: /opt/flink/ha
|
||||||
state.savepoints.dir: s3://flink/savepoints/
|
state.savepoints.dir: s3://flink/savepoints/
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: PersistentVolumeClaim
|
kind: PersistentVolumeClaim
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ .Release.Name }}-{{ .Values.flink.state.ha.pvcName }}
|
name: {{ .Release.Name }}-flink-ha-pvc
|
||||||
spec:
|
spec:
|
||||||
accessModes:
|
accessModes:
|
||||||
- ReadWriteOnce
|
- ReadWriteOnce
|
||||||
|
|||||||
@ -64,12 +64,19 @@ spec:
|
|||||||
volumeMounts:
|
volumeMounts:
|
||||||
- name: flink-ha
|
- name: flink-ha
|
||||||
mountPath: {{ .Values.flink.state.ha.dir }}
|
mountPath: {{ .Values.flink.state.ha.dir }}
|
||||||
|
{{- if eq .Values.flink.state.checkpoint.storageType "filesystem" }}
|
||||||
|
- name: flink-checkpoint
|
||||||
|
mountPath: /opt/flink/checkpoints
|
||||||
|
{{- end }}
|
||||||
volumes:
|
volumes:
|
||||||
- name: flink-ha
|
- name: flink-ha
|
||||||
persistentVolumeClaim:
|
persistentVolumeClaim:
|
||||||
claimName: {{ .Release.Name }}-{{ .Values.flink.state.ha.pvcName }}
|
claimName: {{ .Release.Name }}-flink-ha-pvc
|
||||||
|
{{- if eq .Values.flink.state.checkpoint.storageType "filesystem" }}
|
||||||
|
- name: flink-checkpoint
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: {{ .Release.Name }}-flink-checkpoint-pvc
|
||||||
|
{{- end }}
|
||||||
{{- with .Values.nodeSelector }}
|
{{- with .Values.nodeSelector }}
|
||||||
nodeSelector:
|
nodeSelector:
|
||||||
{{- toYaml . | nindent 8 }}
|
{{- toYaml . | nindent 8 }}
|
||||||
|
|||||||
10
helm/chart/templates/flink/savepoint.pvc.yaml
Normal file
10
helm/chart/templates/flink/savepoint.pvc.yaml
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: {{ .Release.Name }}-flink-checkpoint-pvc
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteMany
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: {{ .Values.flink.state.checkpoint.size }}
|
||||||
@ -46,8 +46,18 @@ spec:
|
|||||||
volumeMounts:
|
volumeMounts:
|
||||||
- name: rocksdb-storage
|
- name: rocksdb-storage
|
||||||
mountPath: /opt/flink/rocksdb
|
mountPath: /opt/flink/rocksdb
|
||||||
|
{{- if eq .Values.flink.state.checkpoint.storageType "filesystem" }}
|
||||||
|
- name: flink-checkpoint
|
||||||
|
mountPath: /opt/flink/checkpoints
|
||||||
|
{{- end }}
|
||||||
resources:
|
resources:
|
||||||
{{- toYaml .Values.flink.taskManager.resources | nindent 10 }}
|
{{- toYaml .Values.flink.taskManager.resources | nindent 10 }}
|
||||||
|
{{- if eq .Values.flink.state.checkpoint.storageType "filesystem" }}
|
||||||
|
volumes:
|
||||||
|
- name: flink-checkpoint
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: {{ .Release.Name }}-flink-checkpoint-pvc
|
||||||
|
{{- end }}
|
||||||
volumeClaimTemplates:
|
volumeClaimTemplates:
|
||||||
- metadata:
|
- metadata:
|
||||||
name: rocksdb-storage
|
name: rocksdb-storage
|
||||||
|
|||||||
@ -122,10 +122,6 @@ flink:
|
|||||||
parallelism:
|
parallelism:
|
||||||
default: 1 # Default parallelism for Flink jobs
|
default: 1 # Default parallelism for Flink jobs
|
||||||
|
|
||||||
checkpoint:
|
|
||||||
interval: 5min
|
|
||||||
mode: EXACTLY_ONCE
|
|
||||||
|
|
||||||
state:
|
state:
|
||||||
backend: rocksdb # Use RocksDB for state backend
|
backend: rocksdb # Use RocksDB for state backend
|
||||||
incremental: true
|
incremental: true
|
||||||
@ -133,6 +129,11 @@ flink:
|
|||||||
dir: "/opt/flink/ha" # Directory to store ha data
|
dir: "/opt/flink/ha" # Directory to store ha data
|
||||||
pvcName: flink-ha-pvc # PVC for ha
|
pvcName: flink-ha-pvc # PVC for ha
|
||||||
size: 10Gi # PVC size for ha
|
size: 10Gi # PVC size for ha
|
||||||
|
checkpoint:
|
||||||
|
storageType: s3 # s3 / filesystem
|
||||||
|
interval: 5min
|
||||||
|
mode: EXACTLY_ONCE
|
||||||
|
size: 8Gi
|
||||||
|
|
||||||
jobManager:
|
jobManager:
|
||||||
processMemory: 4096m # Size of job manager process memory
|
processMemory: 4096m # Size of job manager process memory
|
||||||
|
|||||||
BIN
helm/flink-kube-operator-1.1.0.tgz
Normal file
BIN
helm/flink-kube-operator-1.1.0.tgz
Normal file
Binary file not shown.
@ -1,6 +1,20 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
entries:
|
entries:
|
||||||
flink-kube-operator:
|
flink-kube-operator:
|
||||||
|
- apiVersion: v2
|
||||||
|
appVersion: 0.1.1
|
||||||
|
created: "2025-04-13T10:00:10.79626445+03:30"
|
||||||
|
dependencies:
|
||||||
|
- name: minio
|
||||||
|
repository: https://charts.bitnami.com/bitnami
|
||||||
|
version: 16.0.2
|
||||||
|
description: Helm chart for flink kube operator
|
||||||
|
digest: 36e78032b5b381dc5b99e647e6c42fe8c270e1141c271d2326d2117cc8700fc8
|
||||||
|
name: flink-kube-operator
|
||||||
|
type: application
|
||||||
|
urls:
|
||||||
|
- flink-kube-operator-1.1.0.tgz
|
||||||
|
version: 1.1.0
|
||||||
- apiVersion: v2
|
- apiVersion: v2
|
||||||
appVersion: 0.1.1
|
appVersion: 0.1.1
|
||||||
created: "2025-04-12T23:13:39.394371646+03:30"
|
created: "2025-04-12T23:13:39.394371646+03:30"
|
||||||
@ -179,4 +193,4 @@ entries:
|
|||||||
urls:
|
urls:
|
||||||
- flink-kube-operator-0.1.0.tgz
|
- flink-kube-operator-0.1.0.tgz
|
||||||
version: 0.1.0
|
version: 0.1.0
|
||||||
generated: "2025-04-12T23:13:39.378113533+03:30"
|
generated: "2025-04-13T10:00:10.782977799+03:30"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user