From 4674d4907e44d5d60a72d333656414acee660571 Mon Sep 17 00:00:00 2001 From: tssushma <98810659+tssushma@users.noreply.github.com> Date: Thu, 13 Jul 2023 14:01:41 +0530 Subject: [PATCH 1/6] Update _helpers.tpl Added changes related to StorageCapacityTracking --- charts/csi-powermax/templates/_helpers.tpl | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/charts/csi-powermax/templates/_helpers.tpl b/charts/csi-powermax/templates/_helpers.tpl index 51e4c90f..84912579 100644 --- a/charts/csi-powermax/templates/_helpers.tpl +++ b/charts/csi-powermax/templates/_helpers.tpl @@ -48,3 +48,11 @@ Return the appropriate sidecar images based on k8s version {{- end -}} {{- end -}} {{- end -}} + +{{- define "csi-powermax.isStorageCapacitySupported" -}} +{{- if eq .Values.storageCapacity.enabled true -}} + {{- if and (eq .Capabilities.KubeVersion.Major "1") (ge (trimSuffix "+" .Capabilities.KubeVersion.Minor) "25") -}} + {{- true -}} + {{- end -}} +{{- end -}} +{{- end -}} From 8b873723fa0a3a50d81a839d1449fadf85ab7fff Mon Sep 17 00:00:00 2001 From: tssushma <98810659+tssushma@users.noreply.github.com> Date: Thu, 13 Jul 2023 14:08:09 +0530 Subject: [PATCH 2/6] Update controller.yaml Added changes related to StorageCapacityTracking --- charts/csi-powermax/templates/controller.yaml | 27 +++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/charts/csi-powermax/templates/controller.yaml b/charts/csi-powermax/templates/controller.yaml index f5118102..7785fbf0 100644 --- a/charts/csi-powermax/templates/controller.yaml +++ b/charts/csi-powermax/templates/controller.yaml @@ -91,7 +91,19 @@ rules: - apiGroups: [""] resources: ["configmaps"] verbs: ["create", "delete", "get", "list", "watch", "update", "patch"] - {{- end}} + {{- end}} + # Permissions for Storage Capacity + {{- if eq (include "csi-powermax.isStorageCapacitySupported" .) "true" }} + - apiGroups: ["storage.k8s.io"] + resources: ["csistoragecapacities"] + verbs: ["get", "list", "watch", "create", "update", "patch", "delete"] + - apiGroups: [""] + resources: ["pods"] + verbs: ["get"] + - apiGroups: ["apps"] + resources: ["replicasets"] + verbs: ["get"] + {{- end }} --- kind: ClusterRoleBinding apiVersion: rbac.authorization.k8s.io/v1 @@ -184,9 +196,20 @@ spec: - "--leader-election" - "--extra-create-metadata" - "--feature-gates=Topology=true" + - "--enable-capacity={{ (include "csi-powermax.isStorageCapacitySupported" .) | default false }}" + - "--capacity-ownerref-level=2" + - "--capacity-poll-interval={{ .Values.storageCapacity.pollInterval | default "5m" }}" env: - name: ADDRESS value: /var/run/csi/csi.sock + - name: NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + - name: POD_NAME + valueFrom: + fieldRef: + fieldPath: metadata.name volumeMounts: - name: socket-dir mountPath: /var/run/csi @@ -487,4 +510,4 @@ spec: secret: secretName: proxy-server-root-certificate {{ end }} - {{ end }} \ No newline at end of file + {{ end }} From 7671dd1c089029a499dd33622e71a9cebc55e9e7 Mon Sep 17 00:00:00 2001 From: tssushma <98810659+tssushma@users.noreply.github.com> Date: Thu, 13 Jul 2023 14:10:23 +0530 Subject: [PATCH 3/6] Update csidriver.yaml Added changes related to StorageCapacityTracking --- charts/csi-powermax/templates/csidriver.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/charts/csi-powermax/templates/csidriver.yaml b/charts/csi-powermax/templates/csidriver.yaml index 52cc6694..75caa11d 100644 --- a/charts/csi-powermax/templates/csidriver.yaml +++ b/charts/csi-powermax/templates/csidriver.yaml @@ -7,5 +7,7 @@ metadata: name: csi-powermax {{- end }} spec: + podInfoOnMount: true attachRequired: true - fsGroupPolicy: {{ .Values.fsGroupPolicy }} \ No newline at end of file + storageCapacity: {{ (include "csi-powermax.isStorageCapacitySupported" .) | default true }} + fsGroupPolicy: {{ .Values.fsGroupPolicy }} From 5264fdf47a876599ac3d62983cec51056db65392 Mon Sep 17 00:00:00 2001 From: tssushma <98810659+tssushma@users.noreply.github.com> Date: Thu, 13 Jul 2023 14:52:01 +0530 Subject: [PATCH 4/6] Update values.yaml Added changes related to StorageCapacityTracking --- charts/csi-powermax/values.yaml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/charts/csi-powermax/values.yaml b/charts/csi-powermax/values.yaml index 418b1c32..4297923b 100644 --- a/charts/csi-powermax/values.yaml +++ b/charts/csi-powermax/values.yaml @@ -427,6 +427,20 @@ authorization: # Default value: "true" skipCertificateValidation: true +# Storage Capacity Tracking +# Note: Capacity tracking is supported in kubernetes v1.25 and above, this feature will be automatically disabled in older versions. +storageCapacity: + # enabled : Enable/Disable storage capacity tracking + # Allowed values: + # true: enable storage capacity tracking + # false: disable storage capacity tracking + # Default value: true + enabled: true + # pollInterval : Configure how often external-provisioner polls the driver to detect changed capacity + # Allowed values: 1m,2m,3m,...,10m,...,60m etc + # Default value: 5m + pollInterval: 5m + # VMware/vSphere virtualization support # set enable to true, if you to enable VMware virtualized environment support via RDM # Allowed Values: From 7fe2e7113bdd03ec30af81e75610bd5d5923034e Mon Sep 17 00:00:00 2001 From: tssushma <98810659+tssushma@users.noreply.github.com> Date: Fri, 14 Jul 2023 16:07:01 +0530 Subject: [PATCH 5/6] Update _helpers.tpl Storage Capacity Tracking K8s 1.24. --- charts/csi-powermax/templates/_helpers.tpl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/csi-powermax/templates/_helpers.tpl b/charts/csi-powermax/templates/_helpers.tpl index 84912579..8bcad2cd 100644 --- a/charts/csi-powermax/templates/_helpers.tpl +++ b/charts/csi-powermax/templates/_helpers.tpl @@ -51,7 +51,7 @@ Return the appropriate sidecar images based on k8s version {{- define "csi-powermax.isStorageCapacitySupported" -}} {{- if eq .Values.storageCapacity.enabled true -}} - {{- if and (eq .Capabilities.KubeVersion.Major "1") (ge (trimSuffix "+" .Capabilities.KubeVersion.Minor) "25") -}} + {{- if and (eq .Capabilities.KubeVersion.Major "1") (ge (trimSuffix "+" .Capabilities.KubeVersion.Minor) "24") -}} {{- true -}} {{- end -}} {{- end -}} From 4e90926aefa82f6f495d423038aeb9564ab34629 Mon Sep 17 00:00:00 2001 From: tssushma <98810659+tssushma@users.noreply.github.com> Date: Fri, 14 Jul 2023 17:29:01 +0530 Subject: [PATCH 6/6] Update values.yaml Changed the version to v1.24 --- charts/csi-powermax/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/csi-powermax/values.yaml b/charts/csi-powermax/values.yaml index 4297923b..620e637b 100644 --- a/charts/csi-powermax/values.yaml +++ b/charts/csi-powermax/values.yaml @@ -428,7 +428,7 @@ authorization: skipCertificateValidation: true # Storage Capacity Tracking -# Note: Capacity tracking is supported in kubernetes v1.25 and above, this feature will be automatically disabled in older versions. +# Note: Capacity tracking is supported in kubernetes v1.24 and above, this feature will be automatically disabled in older versions. storageCapacity: # enabled : Enable/Disable storage capacity tracking # Allowed values: