Skip to content

Commit b6e53ee

Browse files
chore: update awsebscsiprovisioner chart (#492)
* chore: update aws-ebs-csi-driver from 0.4.0 to 0.5.0 [Documentation](https://github.com/kubernetes-sigs/aws-ebs-csi-driver/blob/v0.5.0/docs/README.md) filename | sha512 hash --------- | ------------ [v0.5.0.zip](https://github.com/kubernetes-sigs/aws-ebs-csi-driver/archive/v0.5.0.zip) | `c53327e090352a7f79ee642dbf8c211733f4a2cb78968ec688a1eade55151e65f1f97cd228d22168317439f1db9f3d2f07dcaa2873f44732ad23aaf632cbef3a` [v0.5.0.tar.gz](https://github.com/kubernetes-sigs/aws-ebs-csi-driver/archive/v0.5.0.tar.gz) | `ec4963d34c601cdf718838d90b8aa6f36b16c9ac127743e73fbe76118a606d41aced116aaaab73370c17bcc536945d5ccd735bc5a4a00f523025c8e41ddedcb8` * Add a cmdline option to add extra volume tags ([#353](kubernetes-sigs/aws-ebs-csi-driver#353), [@jieyu](https://github.com/jieyu)) * Switch to use kustomize for manifest ([#360](kubernetes-sigs/aws-ebs-csi-driver#360), [@leakingtapan](https://github.com/leakingtapan)) * enable users to set ec2-endpoint for nonstandard regions ([#369](kubernetes-sigs/aws-ebs-csi-driver#369), [@amdonov](https://github.com/amdonov)) * Add standard volume type ([#379](kubernetes-sigs/aws-ebs-csi-driver#379), [@leakingtapan](https://github.com/leakingtapan)) * Update aws sdk version to enable EKS IAM for SA ([#386](kubernetes-sigs/aws-ebs-csi-driver#386), [@leakingtapan](https://github.com/leakingtapan)) * Implement different driver modes and AWS Region override for controller service ([#438](kubernetes-sigs/aws-ebs-csi-driver#438), [@rfranzke](https://github.com/rfranzke)) * Add manifest files for snapshotter 2.0 ([#452](kubernetes-sigs/aws-ebs-csi-driver#452), [@leakingtapan](https://github.com/leakingtapan)) * Return success if instance or volume are not found ([#375](kubernetes-sigs/aws-ebs-csi-driver#375), [@bertinatto](https://github.com/bertinatto)) * Patch k8scsi sidecars CVE-2019-11255 ([#413](kubernetes-sigs/aws-ebs-csi-driver#413), [@jnaulty](https://github.com/jnaulty)) * Handle mount flags in NodeStageVolume ([#430](kubernetes-sigs/aws-ebs-csi-driver#430), [@bertinatto](https://github.com/bertinatto)) * Run upstream e2e test suites with migration ([#341](kubernetes-sigs/aws-ebs-csi-driver#341), [@wongma7](https://github.com/wongma7)) * Use new test framework for test orchestration ([#359](kubernetes-sigs/aws-ebs-csi-driver#359), [@leakingtapan](https://github.com/leakingtapan)) * Update to use 1.16 cluster with inline test enabled ([#362](kubernetes-sigs/aws-ebs-csi-driver#362), [@leakingtapan](https://github.com/leakingtapan)) * Enable leader election ([#380](kubernetes-sigs/aws-ebs-csi-driver#380), [@leakingtapan](https://github.com/leakingtapan)) * Update go mod and mount library ([#388](kubernetes-sigs/aws-ebs-csi-driver#388), [@leakingtapan](https://github.com/leakingtapan)) * Refactor NewCloud by pass in region ([#394](kubernetes-sigs/aws-ebs-csi-driver#394), [@leakingtapan](https://github.com/leakingtapan)) * helm: provide an option to set extra volume tags ([#396](kubernetes-sigs/aws-ebs-csi-driver#396), [@jieyu](https://github.com/jieyu)) * Allow override for csi-provisioner image ([#401](kubernetes-sigs/aws-ebs-csi-driver#401), [@gliptak](https://github.com/gliptak)) * Enable volume expansion e2e test for CSI migration ([#407](kubernetes-sigs/aws-ebs-csi-driver#407), [@leakingtapan](https://github.com/leakingtapan)) * Swith to use kops 1.16 ([#409](kubernetes-sigs/aws-ebs-csi-driver#409), [@leakingtapan](https://github.com/leakingtapan)) * Added tolerations for node support ([#420](kubernetes-sigs/aws-ebs-csi-driver#420), [@zerkms](https://github.com/zerkms)) * Update helm chart to better match available values and add the ability to add annotations ([#423](kubernetes-sigs/aws-ebs-csi-driver#423), [@krmichel](https://github.com/krmichel)) * [helm] Also add toleration support to controller ([#433](kubernetes-sigs/aws-ebs-csi-driver#433), [@jyaworski](https://github.com/jyaworski)) * Add ec2:ModifyVolume action ([#434](kubernetes-sigs/aws-ebs-csi-driver#434), [@zodiac12k](https://github.com/zodiac12k)) * Schedule the EBS CSI DaemonSet on all nodes by default ([#441](kubernetes-sigs/aws-ebs-csi-driver#441), [@pcfens](https://github.com/pcfens)) * bump chart version * chore: bump liveness probe from 1.1.0 to 2.0.0 - Introduce V(5) on the health check begin/success log lines to allow filtering of these entries from logs. If you would like to retain these log entries the action required would be to set `-v==5` or higher for the livenessprobe container. ([#57](kubernetes-csi/livenessprobe#57), [@stefansedich](https://github.com/stefansedich)) - Deprecated "--connection-timeout" argument has been removed. ([#59](kubernetes-csi/livenessprobe#59), [@msau42](https://github.com/msau42)) - Fix nil pointer bug when driver responds with not ready ([#58](kubernetes-csi/livenessprobe#58), [@scuzhanglei](https://github.com/scuzhanglei)) - Migrated to Go modules, so the source builds also outside of GOPATH. ([#53](kubernetes-csi/livenessprobe#53), [@pohly](https://github.com/pohly)) * chore: bump csi external-provisioner from 1.3.0 to 1.4.0 All external-provisioner versions < 1.4.0 are deprecated and will stop functioning in Kubernetes v1.20. See [#323](kubernetes-csi/external-provisioner#323) and [k/k#80978](kubernetes/kubernetes#80978) for more details. Upgrade your external-provisioner to v1.4+ before Kubernetes v1.20. None - Fixes migration scenarios for Topology, fstype, and accessmodes for the kubernetes.io/gce-pd in-tree plugin ([#277](kubernetes-csi/external-provisioner#277), [@davidz627](https://github.com/davidz627)) - Checks if volume content source is populated if creating a volume from a snapshot source. ([#283](kubernetes-csi/external-provisioner#283), [@zhucan](https://github.com/zhucan)) - Fixes issue when SelfLink removal is turned on in Kubernetes. ([#323](kubernetes-csi/external-provisioner#323), [@msau42](https://github.com/msau42)) - CSI driver can return `CreateVolumeResponse` with size 0, which means unknown volume size. In this case, Provisioner will use PVC requested size as PV size rather than 0 bytes ([#271](kubernetes-csi/external-provisioner#271), [@hoyho](https://github.com/hoyho)) - Fixed potential leak of volumes after CSI driver timeouts. ([#312](kubernetes-csi/external-provisioner#312), [@jsafrane](https://github.com/jsafrane)) - Fixes issue where provisioner provisions volumes for in-tree PVC's which have not been migrated ([#341](kubernetes-csi/external-provisioner#341), [@davidz627](https://github.com/davidz627)) - Send the CSI volume_id instead of PVC Name to the csi-driver in volumeCreate when datasource is PVC ([#310](kubernetes-csi/external-provisioner#310), [@Madhu-1](https://github.com/Madhu-1)) - Fixes nil pointer derefence in log when migration turned on ([#342](kubernetes-csi/external-provisioner#342), [@davidz627](https://github.com/davidz627)) - Handle deletion of CSI migrated volumes ([#273](kubernetes-csi/external-provisioner#273), [@ddebroy](https://github.com/ddebroy)) - Reduced logging noise of unrelated PVCs. Emit event on successful provisioning. ([#351](kubernetes-csi/external-provisioner#351), [@jsafrane](https://github.com/jsafrane)) - Added extra verification of source Snapshot and PersistentVolumeClaim before provisioning. ([#352](kubernetes-csi/external-provisioner#352), [@jsafrane](https://github.com/jsafrane)) * chore: bump attacher * Fixed handling of ControllerUnpublish errors. The attacher will retry to ControllerUnpublish a volume after any error except for NotFound. (#168, @jsafrane) * bump external-snapshotter from 1.1.0 to 1.2.2 Breaking Changes * Changes the API group name for the fake VolumeSnapshot object to "snapshot.storage.k8s.io" to be in-sync with the group name of the real VolumeSnapshot object. As a result, the generated interfaces for clientset and informers of VolumeSnapshot are also changed from "VolumeSnapshot" to "Snapshot". (#123, @xing-yang) New Features * Adds Finalizer on the snapshot source PVC to prevent it from being deleted when a snapshot is being created from it. (#47, @xing-yang) Other Notable Changes * Add Status subresource for VolumeSnapshot. (#121, @zhucan) * Cherry picks PR #138: Prebound snapshots will work correctly with CSI drivers that does not support ListSnasphots.(#156, @hakanmemisoglu) * Cherry picks PR #172: Added extra verification of source PersistentVolumeClaim before creating snapshot.(#173, @xing-yang) * bump external-resizer from 0.2.0 to 0.4.0 New Features * Add prometheus metrics to CSI external-resizer under the /metrics endpoint. This can be enabled via the "--metrics-address" and "--metrics-path" options. (#67, @saad-ali) Bug Fixes * Avoid concurrent processing of same PVCs (#6, @mlmhl) * Exit on CSI gRPC conn loss (#55, @ggriffiths) * Verify claimref associated with PVs before resizing (#57, @gnufied) Other Notable Changes * Migrated to Go modules, so the source builds also outside of GOPATH. (#60, @pohly) * feat(awsebscsiprovisioner): updated awsebscsiprovisioner flags - updated args as mentioned in comments - updated container versions as mentioned in the comments D2IQ-64990 #comment updated awsebscsiprovisioner pod arg * feat(awsebscsiprovisioner): added podAnnotations - added statefulSet.podAnnotations feature - added new roles and snapshotter-controller - added more values to be setable D2IQ-64992 #comment updated awsebscsiprovisioner to include statefulSet.podAnnotations * fix: added replacing system-x-critial replacement - this was added for being able to run the ct install / upgrade behaviour so that we also can test with that priorityClassName set pods, that normally get a system-node critial or system-cluster-critical priorityClassName set. These only will be allowed to run in namespace kube-system and that for we need to drop the priorityClassName here to null for our tests. - separated lint and install, as otherwise lint would fail because of the sed changes - exclude gcp-csi-driver [D2IQ-65765] [D2IQ-65765]: https://jira.d2iq.com/browse/D2IQ-65765 Co-authored-by: Sebastian Brandt <[email protected]>
1 parent 0b5c42c commit b6e53ee

13 files changed

+272
-32
lines changed

stable/awsebscsiprovisioner/Chart.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
apiVersion: v1
2-
appVersion: "0.4.0"
2+
appVersion: "0.5.0"
33
description: AWS EBS CSI driver and storage provisioner
44
name: awsebscsiprovisioner
55
maintainers:
66
- name: alejandroEsc
77
- name: gpaul
88
- name: hectorj2f
9-
version: 0.3.3
9+
version: 0.3.4
1010
kubeVersion: ">=1.15.0"
1111
home: https://github.com/kubernetes-sigs/aws-ebs-csi-driver
1212
sources:
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Check that statefulSet.podAnnoations is rendered
2+
statefulSetCSIController:
3+
podAnnotations:
4+
iam.amazonaws.com/role: ebs-csi-driver-role
5+
statefulSetCSISnapshotController:
6+
podAnnotations:
7+
iam.amazonaws.com/role: ebs-csi-snapshot-controller-role
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Check that statefulSet.podAnnoations is rendered
2+
replicas: 2
3+
extraVolumeTags:
4+
konvoy: cluster-name-random
5+
konvoy-version: 1.4.2
6+
storageclass:
7+
isDefault: true
8+
reclaimPolicy: Delete
9+
volumeBindingMode: WaitForFirstConsumer
10+
type: io1
11+
fstype: xfs
12+
iopsPerGB: 100
13+
encrypted: true
14+
kmsKeyId: arn:aws:kms:us-west-2:123456789011:key/d72124e7-ffff-1111-zzzz-4f820a16908e
15+
allowedTopologies:
16+
- matchLabelExpressions:
17+
- key: topology.ebs.csi.aws.com/zone
18+
values:
19+
- us-west-2a
20+
- us-west-2b
21+
- us-west-2c

stable/awsebscsiprovisioner/templates/_helpers.tpl

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,4 +42,17 @@ app.kubernetes.io/instance: {{ .Release.Name }}
4242
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
4343
{{- end }}
4444
app.kubernetes.io/managed-by: {{ .Release.Service }}
45-
{{- end -}}
45+
{{- end -}}
46+
47+
{{/*
48+
Convert the `--extra-volume-tags` command line arg from a map.
49+
*/}}
50+
{{- define "aws-ebs-csi-driver.extra-volume-tags" -}}
51+
{{- $result := dict "pairs" (list) -}}
52+
{{- range $key, $value := .Values.extraVolumeTags -}}
53+
{{- $noop := printf "%s=%s" $key $value | append $result.pairs | set $result "pairs" -}}
54+
{{- end -}}
55+
{{- if gt (len $result.pairs) 0 -}}
56+
- --extra-volume-tags={{- join "," $result.pairs -}}
57+
{{- end -}}
58+
{{- end -}}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
apiVersion: storage.k8s.io/v1beta1
3+
kind: CSIDriver
4+
metadata:
5+
name: ebs.csi.aws.com
6+
spec:
7+
attachRequired: true
8+
podInfoOnMount: false

stable/awsebscsiprovisioner/templates/daemonset.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@ spec:
1616
app: ebs-csi-node
1717
app.kubernetes.io/name: {{ include "aws-ebs-csi-driver.name" . }}
1818
app.kubernetes.io/instance: {{ .Release.Name }}
19+
{{- if .Values.node.podAnnotations }}
20+
annotations: {{ toYaml .Values.node.podAnnotations | nindent 8 }}
21+
{{- end }}
1922
spec:
2023
nodeSelector:
2124
beta.kubernetes.io/os: linux
@@ -31,6 +34,7 @@ spec:
3134
privileged: true
3235
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
3336
args:
37+
- node
3438
- --endpoint=$(CSI_ENDPOINT)
3539
- --logtostderr
3640
- --v=5

stable/awsebscsiprovisioner/templates/roles.yaml

Lines changed: 104 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,19 @@ kind: ServiceAccount
44
metadata:
55
name: ebs-csi-controller-sa
66
namespace: {{ .Release.Namespace }}
7+
{{- with .Values.serviceAccount.controller.annotations }}
8+
annotations: {{ toYaml . | nindent 4 }}
9+
{{- end }}
10+
11+
---
12+
apiVersion: v1
13+
kind: ServiceAccount
14+
metadata:
15+
name: ebs-csi-snapshot-controller
16+
namespace: {{ .Release.Namespace }}
17+
{{- with .Values.serviceAccount.snapshot.annotations }}
18+
annotations: {{ toYaml . | nindent 4 }}
19+
{{- end }}
720

821
---
922
kind: ClusterRole
@@ -20,15 +33,24 @@ rules:
2033
- apiGroups: ["storage.k8s.io"]
2134
resources: ["storageclasses"]
2235
verbs: ["get", "list", "watch"]
36+
- apiGroups: [""]
37+
resources: ["events"]
38+
verbs: ["get", "list", "watch", "create", "update", "patch"]
39+
- apiGroups: ["snapshot.storage.k8s.io"]
40+
resources: ["volumesnapshots"]
41+
verbs: ["get", "list"]
42+
- apiGroups: ["snapshot.storage.k8s.io"]
43+
resources: ["volumesnapshotcontents"]
44+
verbs: ["get", "list"]
2345
- apiGroups: ["storage.k8s.io"]
2446
resources: ["csinodes"]
2547
verbs: ["get", "list", "watch"]
2648
- apiGroups: [""]
2749
resources: ["nodes"]
2850
verbs: ["get", "list", "watch"]
29-
- apiGroups: [""]
30-
resources: ["events"]
31-
verbs: ["get", "list", "watch", "create", "update", "patch"]
51+
- apiGroups: ["coordination.k8s.io"]
52+
resources: ["leases"]
53+
verbs: ["get", "watch", "list", "delete", "update", "create"]
3254

3355
---
3456
kind: ClusterRoleBinding
@@ -95,7 +117,7 @@ rules:
95117
verbs: ["get", "list", "watch"]
96118
- apiGroups: [""]
97119
resources: ["events"]
98-
verbs: ["list", "watch", "create", "update", "patch"]
120+
verbs: ["get", "list", "watch", "create", "update", "patch"]
99121
- apiGroups: [""]
100122
resources: ["secrets"]
101123
verbs: ["get", "list"]
@@ -108,6 +130,12 @@ rules:
108130
- apiGroups: ["snapshot.storage.k8s.io"]
109131
resources: ["volumesnapshots"]
110132
verbs: ["get", "list", "watch", "update"]
133+
- apiGroups: ["snapshot.storage.k8s.io"]
134+
resources: ["volumesnapshotcontents"]
135+
verbs: ["create", "get", "list", "watch", "update", "delete"]
136+
- apiGroups: ["snapshot.storage.k8s.io"]
137+
resources: ["volumesnapshotcontents/status"]
138+
verbs: ["update"]
111139
- apiGroups: ["apiextensions.k8s.io"]
112140
resources: ["customresourcedefinitions"]
113141
verbs: ["create", "list", "watch", "delete"]
@@ -125,6 +153,77 @@ roleRef:
125153
kind: ClusterRole
126154
name: ebs-external-snapshotter-role
127155
apiGroup: rbac.authorization.k8s.io
156+
157+
---
158+
kind: ClusterRole
159+
apiVersion: rbac.authorization.k8s.io/v1
160+
metadata:
161+
name: ebs-csi-snapshot-controller-role
162+
rules:
163+
- apiGroups: [""]
164+
resources: ["persistentvolumes"]
165+
verbs: ["get", "list", "watch"]
166+
- apiGroups: [""]
167+
resources: ["persistentvolumeclaims"]
168+
verbs: ["get", "list", "watch", "update"]
169+
- apiGroups: ["storage.k8s.io"]
170+
resources: ["storageclasses"]
171+
verbs: ["get", "list", "watch"]
172+
- apiGroups: [""]
173+
resources: ["events"]
174+
verbs: ["get", "list", "watch", "create", "update", "patch"]
175+
- apiGroups: ["snapshot.storage.k8s.io"]
176+
resources: ["volumesnapshotclasses"]
177+
verbs: ["get", "list", "watch"]
178+
- apiGroups: ["snapshot.storage.k8s.io"]
179+
resources: ["volumesnapshotcontents"]
180+
verbs: ["create", "get", "list", "watch", "update", "delete"]
181+
- apiGroups: ["snapshot.storage.k8s.io"]
182+
resources: ["volumesnapshots"]
183+
verbs: ["get", "list", "watch", "update"]
184+
- apiGroups: ["snapshot.storage.k8s.io"]
185+
resources: ["volumesnapshots/status"]
186+
verbs: ["update"]
187+
188+
---
189+
kind: ClusterRoleBinding
190+
apiVersion: rbac.authorization.k8s.io/v1
191+
metadata:
192+
name: ebs-csi-snapshot-controller-binding
193+
subjects:
194+
- kind: ServiceAccount
195+
name: ebs-csi-snapshot-controller
196+
namespace: {{ .Release.Namespace }}
197+
roleRef:
198+
kind: ClusterRole
199+
name: ebs-csi-snapshot-controller-role
200+
apiGroup: rbac.authorization.k8s.io
201+
202+
---
203+
kind: Role
204+
apiVersion: rbac.authorization.k8s.io/v1
205+
metadata:
206+
name: ebs-csi-snapshot-controller-leaderelection
207+
namespace: {{ .Release.Namespace }}
208+
rules:
209+
- apiGroups: ["coordination.k8s.io"]
210+
resources: ["leases"]
211+
verbs: ["get", "watch", "list", "delete", "update", "create"]
212+
213+
---
214+
kind: RoleBinding
215+
apiVersion: rbac.authorization.k8s.io/v1
216+
metadata:
217+
name: ebs-csi-snapshot-controller-leaderelection
218+
namespace: {{ .Release.Namespace }}
219+
subjects:
220+
- kind: ServiceAccount
221+
name: ebs-csi-snapshot-controller
222+
namespace: {{ .Release.Namespace }}
223+
roleRef:
224+
kind: Role
225+
name: ebs-csi-snapshot-controller-leaderelection
226+
apiGroup: rbac.authorization.k8s.io
128227
{{- end }}
129228

130229
{{- if .Values.resizer.enabled }}
@@ -153,7 +252,7 @@ rules:
153252
verbs: ["get", "list", "watch"]
154253
- apiGroups: [""]
155254
resources: ["events"]
156-
verbs: ["list", "watch", "create", "update", "patch"]
255+
verbs: ["get", "list", "watch", "create", "update", "patch"]
157256

158257
---
159258
kind: ClusterRoleBinding
@@ -169,12 +268,3 @@ roleRef:
169268
name: ebs-external-resizer-role
170269
apiGroup: rbac.authorization.k8s.io
171270
{{- end}}
172-
173-
---
174-
apiVersion: storage.k8s.io/v1beta1
175-
kind: CSIDriver
176-
metadata:
177-
name: ebs.csi.aws.com
178-
spec:
179-
attachRequired: true
180-
podInfoOnMount: false
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
{{- if .Values.snapshotter.enabled }}
2+
kind: StatefulSet
3+
apiVersion: apps/v1
4+
metadata:
5+
name: ebs-csi-snapshot-controller
6+
namespace: {{ .Release.Namespace }}
7+
spec:
8+
serviceName: ebs-csi-snapshot-controller
9+
replicas: 1
10+
selector:
11+
matchLabels:
12+
app: ebs-csi-snapshot-controller
13+
app.kubernetes.io/name: {{ include "aws-ebs-csi-driver.name" . }}
14+
app.kubernetes.io/instance: {{ .Release.Name }}
15+
template:
16+
metadata:
17+
{{- if .Values.statefulSetCSISnapshotController.podAnnotations }}
18+
annotations:
19+
{{- range $key, $value := .Values.statefulSetCSISnapshotController.podAnnotations }}
20+
{{ $key }}: {{ $value | quote }}
21+
{{- end }}
22+
{{- end }}
23+
labels:
24+
app: ebs-csi-snapshot-controller
25+
app.kubernetes.io/name: {{ include "aws-ebs-csi-driver.name" . }}
26+
app.kubernetes.io/instance: {{ .Release.Name }}
27+
spec:
28+
serviceAccount: ebs-csi-snapshot-controller
29+
containers:
30+
- name: ebs-csi-snapshot-controller
31+
image: "{{ .Values.snapshotter.image.repository }}:{{ .Values.snapshotter.image.tag }}"
32+
args:
33+
- --v=5
34+
- --leader-election=false
35+
{{- end }}

stable/awsebscsiprovisioner/templates/statefulset.yaml

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,18 @@ metadata:
66
namespace: {{ .Release.Namespace }}
77
spec:
88
serviceName: ebs-csi-controller
9-
replicas: 1
9+
replicas: {{ .Values.replicas }}
1010
selector:
1111
matchLabels:
1212
app: ebs-csi-controller
1313
template:
1414
metadata:
15+
{{- if .Values.statefulSetCSIController.podAnnotations }}
16+
annotations:
17+
{{- range $key, $value := .Values.statefulSetCSIController.podAnnotations }}
18+
{{ $key }}: {{ $value | quote }}
19+
{{- end }}
20+
{{- end }}
1521
labels:
1622
app: ebs-csi-controller
1723
app.kubernetes.io/name: {{ include "aws-ebs-csi-driver.name" . }}
@@ -28,7 +34,9 @@ spec:
2834
- name: ebs-plugin
2935
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
3036
args :
37+
- controller
3138
- --endpoint=$(CSI_ENDPOINT)
39+
{{ include "aws-ebs-csi-driver.extra-volume-tags" . }}
3240
- --logtostderr
3341
- --v=5
3442
env:
@@ -74,6 +82,8 @@ spec:
7482
{{- if .Values.provisioner.enableVolumeScheduling }}
7583
- --feature-gates=Topology=true
7684
{{- end}}
85+
- --enable-leader-election
86+
- --leader-election-type=leases
7787
env:
7888
- name: ADDRESS
7989
value: /var/lib/csi/sockets/pluginproxy/csi.sock
@@ -85,6 +95,7 @@ spec:
8595
args:
8696
- --csi-address=$(ADDRESS)
8797
- --v=5
98+
- --leader-election=true
8899
env:
89100
- name: ADDRESS
90101
value: /var/lib/csi/sockets/pluginproxy/csi.sock
@@ -97,6 +108,7 @@ spec:
97108
args:
98109
- --csi-address=$(ADDRESS)
99110
- --connection-timeout=15s
111+
- --leader-election=true
100112
env:
101113
- name: ADDRESS
102114
value: /var/lib/csi/sockets/pluginproxy/csi.sock

stable/awsebscsiprovisioner/templates/storageclass.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@ parameters:
2424
{{- if .Values.storageclass.encrypted }}
2525
encrypted: {{ .Values.storageclass.encrypted | quote }}
2626
{{- end }}
27+
{{- if .Values.storageclass.kmsKeyId }}
28+
kmsKeyId: {{ .Values.storageclass.kmsKeyId | quote }}
29+
{{- end }}
2730
{{- if .Values.storageclass.allowedTopologies }}
2831
{{- with .Values.storageclass.allowedTopologies }}
2932
allowedTopologies:

0 commit comments

Comments
 (0)