This is an automated email from the ASF dual-hosted git repository.
lhotari pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar-helm-chart.git
The following commit(s) were added to refs/heads/master by this push:
new 29ea17b Enable persistence for pulsar-manager (#343)
29ea17b is described below
commit 29ea17b3fceef65160620b9018d0dd0449a168c5
Author: Victor Fauth <[email protected]>
AuthorDate: Thu Feb 15 10:27:40 2024 +0100
Enable persistence for pulsar-manager (#343)
* Enable persistence for pulsar-manager
* Upgrade to v0.4.0 version of pulsar-manager to get required fix
- contains https://github.com/apache/pulsar-manager/pull/501
in https://github.com/apache/pulsar-manager/releases/tag/v0.4.0
---------
Co-authored-by: Victor Fauth <[email protected]>
Co-authored-by: Lari Hotari <[email protected]>
---
...oyment.yaml => pulsar-manager-statefulset.yaml} | 34 ++++++++++++++++++----
charts/pulsar/values.yaml | 17 ++++++++++-
2 files changed, 44 insertions(+), 7 deletions(-)
diff --git a/charts/pulsar/templates/pulsar-manager-deployment.yaml
b/charts/pulsar/templates/pulsar-manager-statefulset.yaml
similarity index 70%
rename from charts/pulsar/templates/pulsar-manager-deployment.yaml
rename to charts/pulsar/templates/pulsar-manager-statefulset.yaml
index 75e236c..9bf7ca8 100644
--- a/charts/pulsar/templates/pulsar-manager-deployment.yaml
+++ b/charts/pulsar/templates/pulsar-manager-statefulset.yaml
@@ -19,7 +19,7 @@
{{- if or .Values.components.pulsar_manager .Values.extra.pulsar_manager }}
apiVersion: apps/v1
-kind: Deployment
+kind: StatefulSet
metadata:
name: "{{ template "pulsar.fullname" . }}-{{
.Values.pulsar_manager.component }}"
namespace: {{ template "pulsar.namespace" . }}
@@ -27,6 +27,7 @@ metadata:
{{- include "pulsar.standardLabels" . | nindent 4 }}
component: {{ .Values.pulsar_manager.component }}
spec:
+ serviceName: "{{ template "pulsar.fullname" . }}-{{
.Values.pulsar_manager.component }}"
replicas: 1
selector:
matchLabels:
@@ -66,7 +67,7 @@ spec:
- containerPort: {{ .Values.pulsar_manager.service.targetPort }}
- containerPort: {{ .Values.pulsar_manager.adminService.targetPort }}
volumeMounts:
- - name: pulsar-manager-data
+ - name: "{{ template "pulsar.fullname" . }}-{{
.Values.pulsar_manager.component }}-{{ .Values.pulsar_manager.volumes.data.name
}}"
mountPath: /data
envFrom:
- configMapRef:
@@ -86,9 +87,30 @@ spec:
key: DB_PASSWORD
- name: PULSAR_MANAGER_OPTS
value: "$(PULSAR_MANAGER_OPTS) -Dlog4j2.formatMsgNoLookups=true"
- {{- include "pulsar.imagePullSecrets" . | nindent 6}}
+ {{- include "pulsar.imagePullSecrets" . | nindent 6 }}
volumes:
- - name: pulsar-manager-data
- emptyDir: {}
-
+ {{- if not (and (and .Values.persistence .Values.volumes.persistence)
.Values.pulsar_manager.volumes.persistence) }}
+ - name: "{{ template "pulsar.fullname" . }}-{{
.Values.pulsar_manager.component }}-{{ .Values.pulsar_manager.volumes.data.name
}}"
+ emptyDir: {}
+ {{- end }}
+{{- if and (and .Values.persistence .Values.volumes.persistence)
.Values.pulsar_manager.volumes.persistence }}
+ volumeClaimTemplates:
+ - metadata:
+ name: "{{ template "pulsar.fullname" . }}-{{
.Values.pulsar_manager.component }}-{{ .Values.pulsar_manager.volumes.data.name
}}"
+ spec:
+ accessModes: [ "ReadWriteOnce" ]
+ resources:
+ requests:
+ storage: {{ .Values.pulsar_manager.volumes.data.size }}
+ {{- if .Values.pulsar_manager.volumes.data.storageClassName }}
+ storageClassName: "{{
.Values.pulsar_manager.volumes.data.storageClassName }}"
+ {{- else if and .Values.volumes.local_storage
.Values.pulsar_manager.volumes.data.local_storage }}
+ storageClassName: "local-storage"
+ {{- end }}
+ {{- with .Values.pulsar_manager.volumes.data.selector }}
+ selector:
+ {{- toYaml . | nindent 8 }}
+ {{- end }}
{{- end }}
+
+{{- end }}
\ No newline at end of file
diff --git a/charts/pulsar/values.yaml b/charts/pulsar/values.yaml
index d2594d9..4d2ae4c 100644
--- a/charts/pulsar/values.yaml
+++ b/charts/pulsar/values.yaml
@@ -184,7 +184,7 @@ images:
tag:
pulsar_manager:
repository: apachepulsar/pulsar-manager
- tag: v0.3.0
+ tag: v0.4.0
pullPolicy: IfNotPresent
hasCommand: false
@@ -1319,6 +1319,21 @@ pulsar_manager:
# however, feel free to overwrite them
SPRING_CONFIGURATION_FILE:
"/pulsar-manager/pulsar-manager/application.properties"
PULSAR_MANAGER_OPTS: " -Dlog4j2.formatMsgNoLookups=true"
+ volumes:
+ # use a persistent volume or emptyDir
+ persistence: true
+ data:
+ name: data
+ size: 128Mi
+ local_storage: true
+ ## If you already have an existent storage class and want to reuse it,
you can specify its name with the option below
+ ##
+ # storageClassName: existent-storage-class,
+ ## If you want to bind static persistent volumes via selectors, e.g.:
+ # selector:
+ # matchLabels:
+ # app: pulsar-bookkeeper-journal
+ selector: {}
## Pulsar manager service
## templates/pulsar-manager-service.yaml
##