From 7a23575fc1402ebe022779fbaaa021f43419be49 Mon Sep 17 00:00:00 2001 From: Sylvain Desbureaux Date: Thu, 28 Nov 2019 15:01:45 +0100 Subject: [AAF] Use global storage templates for PVC OOM has now templates in order to create the needed PVC, using: * a PV with a specific class when using a common nfs mount path between nodes (sames as today use) --> is the default behavior today * or a storage class if we want to use dynamic PV. On this case, we use (in order of priority): - persistence.storageClassOverride if set on the chart - global.persistence.storageClass if set globally - persistence.storageClass if set on the chart I've also modified statefulset deployment so they can use their own PVC instead of writing into a specific directory inside I've also set to 'emptyDir' volumes when persistence is not enabled (except for aaf-config-pvc and aaf-status-pvc, which means that AAF will still not work when persistence is disabled). Change-Id: I05f133f058ebd9678df9ac0b7ef32bb43689e94f Issue-ID: OOM-1227 Signed-off-by: Sylvain Desbureaux --- .../aaf/charts/aaf-hello/templates/aaf-hello-pv.yaml | 14 ++++++-------- .../aaf/charts/aaf-hello/templates/aaf-hello-pvc.yaml | 14 +++----------- kubernetes/aaf/charts/aaf-hello/templates/deployment.yaml | 4 ++++ kubernetes/aaf/charts/aaf-hello/values.yaml | 11 +++++------ 4 files changed, 18 insertions(+), 25 deletions(-) (limited to 'kubernetes/aaf/charts/aaf-hello') diff --git a/kubernetes/aaf/charts/aaf-hello/templates/aaf-hello-pv.yaml b/kubernetes/aaf/charts/aaf-hello/templates/aaf-hello-pv.yaml index 066bf38f2f..af82689ef2 100644 --- a/kubernetes/aaf/charts/aaf-hello/templates/aaf-hello-pv.yaml +++ b/kubernetes/aaf/charts/aaf-hello/templates/aaf-hello-pv.yaml @@ -1,4 +1,6 @@ +{{- if ne 0 (int .Values.global.aaf.hello.replicas) }} {{- if and .Values.global.persistence.enabled (not .Values.persistence.existingClaim) -}} +{{- if eq "True" (include "common.needPV" .) -}} ######### ## ============LICENSE_START==================================================== ## org.onap.aaf @@ -37,12 +39,8 @@ spec: - {{ .Values.persistence.config.accessMode }} persistentVolumeReclaimPolicy: {{ .Values.persistence.config.volumeReclaimPolicy }} hostPath: - path: {{ .Values.persistence.config.mountPath }} -{{- if .Values.persistence.config.storageClass }} -{{- if (eq "-" .Values.persistence.config.storageClass) }} - storageClassName: "" -{{- else }} - storageClassName: "{{ .Values.persistence.config.storageClass }}" -{{- end }} -{{- end }} + path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ .Release.Name }}/{{ .Values.persistence.mountSubPath }} + storageClassName: "{{ include "common.fullname" . }}-data" +{{- end -}} +{{- end -}} {{- end -}} diff --git a/kubernetes/aaf/charts/aaf-hello/templates/aaf-hello-pvc.yaml b/kubernetes/aaf/charts/aaf-hello/templates/aaf-hello-pvc.yaml index 7c45b8bd7f..68828767e3 100644 --- a/kubernetes/aaf/charts/aaf-hello/templates/aaf-hello-pvc.yaml +++ b/kubernetes/aaf/charts/aaf-hello/templates/aaf-hello-pvc.yaml @@ -1,3 +1,4 @@ +{{- if ne 0 (int .Values.global.aaf.hello.replicas) }} {{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}} ######### ## ============LICENSE_START==================================================== @@ -33,20 +34,11 @@ metadata: {{ toYaml .Values.persistence.annotations | indent 4 }} {{- end }} spec: - selector: - matchLabels: - app: {{ include "common.name" . }}-hello accessModes: - {{ .Values.persistence.config.accessMode }} resources: requests: storage: {{ .Values.persistence.config.size }} -{{- if .Values.persistence.config.storageClass }} -{{- if (eq "-" .Values.persistence.config.storageClass) }} - storageClassName: "" -{{- else }} - storageClassName: "{{ .Values.persistence.config.storageClass }}" -{{- end }} -{{- end }} + storageClassName: {{ include "common.storageClass" . }} +{{- end -}} {{- end -}} - diff --git a/kubernetes/aaf/charts/aaf-hello/templates/deployment.yaml b/kubernetes/aaf/charts/aaf-hello/templates/deployment.yaml index c5fcf68a58..2135f1ef31 100644 --- a/kubernetes/aaf/charts/aaf-hello/templates/deployment.yaml +++ b/kubernetes/aaf/charts/aaf-hello/templates/deployment.yaml @@ -34,8 +34,12 @@ spec: hostPath: path: /etc/localtime - name: aaf-hello-vol + {{- if and .Values.persistence.enabled }} persistentVolumeClaim: claimName: {{ .Release.Name }}-aaf-hello-pvc + {{- else }} + emptyDir: {} + {{- end }} imagePullSecrets: - name: "{{ include "common.namespace" . }}-docker-registry-key" initContainers: diff --git a/kubernetes/aaf/charts/aaf-hello/values.yaml b/kubernetes/aaf/charts/aaf-hello/values.yaml index ea6665c61a..0d1521eba3 100644 --- a/kubernetes/aaf/charts/aaf-hello/values.yaml +++ b/kubernetes/aaf/charts/aaf-hello/values.yaml @@ -44,14 +44,13 @@ service: persistence: enabled: true - config: #existingClaim: # You will want "Reatan" in non-Hello Example. - volumeReclaimPolicy: Delete - accessMode: ReadWriteMany - size: 40M - storageClass: "manual" - mountPath: "/mnt/data/aaf/hello" + volumeReclaimPolicy: Delete + accessMode: ReadWriteMany + size: 40M + mountPath: /dockerdata-nfs + mountSubPath: aaf/hello nodeSelector: {} -- cgit 1.2.3-korg