1# Default values for aws-ebs-csi-driver.
2# This is a YAML-formatted file.
3# Declare variables to be passed into your templates.
6 repository: cgr.dev/chainguard-private/aws-ebs-csi-driver
7 # Overrides the image tag whose default is v{{ .Chart.AppVersion }}
8 tag: latest@sha256:79ac54be77a627428ab18f00f023ca2c143efc544e4dad864f1b5b192a17805e
9 pullPolicy: IfNotPresent
10# -- Custom labels to add into metadata
12# k8s-app: aws-ebs-csi-driver
14# Enable FIPS 140-3 mode: activates the Go Cryptographic Module (CMVP #5247) at runtime and
15# instructs the AWS SDK to use FIPS endpoints via AWS_USE_FIPS_ENDPOINT.
16# See docs/fips.md for details.
22 pullPolicy: IfNotPresent
23 repository: cgr.dev/chainguard-private/kubernetes-csi-external-provisioner
24 tag: latest@sha256:858cfd338b8a205c69dc12c971d6bd9507ee593ffdbf7fbe250a33e407cf369a
26 # Additional parameters provided by csi-provisioner.
28 # Grant additional permissions to csi-provisioner
29 additionalClusterRoleRules:
31 # Tune leader lease election for csi-provisioner.
32 # Leader election is on by default.
35 # Optional values to tune lease behavior.
36 # The arguments provided must be in an acceptable time.ParseDuration format.
37 # Ref: https://pkg.go.dev/flag#Duration
38 # leaseDuration: "15s"
39 # renewDeadline: "10s"
44 readOnlyRootFilesystem: true
45 allowPrivilegeEscalation: false
49 pullPolicy: IfNotPresent
50 repository: cgr.dev/chainguard-private/kubernetes-csi-external-attacher
51 tag: latest@sha256:64f5862646961b309f58a5ef7423377acbf25d142cc6ed43053455b127c5e700
52 # Tune leader lease election for csi-attacher.
53 # Leader election is on by default.
56 # Optional values to tune lease behavior.
57 # The arguments provided must be in an acceptable time.ParseDuration format.
58 # Ref: https://pkg.go.dev/flag#Duration
59 # leaseDuration: "15s"
60 # renewDeadline: "10s"
63 # Additional parameters provided by csi-attacher.
65 # Grant additional permissions to csi-attacher
66 additionalClusterRoleRules: []
71 readOnlyRootFilesystem: true
72 allowPrivilegeEscalation: false
74 # Enables the snapshotter sidecar even if the snapshot CRDs are not installed
78 pullPolicy: IfNotPresent
79 repository: cgr.dev/chainguard-private/kubernetes-csi-external-snapshotter
80 tag: latest@sha256:908e9a17f84d1e52afd027cb22f911535980142649f056c250b285e1659704cc
82 # Additional parameters provided by csi-snapshotter.
84 # Grant additional permissions to csi-snapshotter
85 additionalClusterRoleRules: []
90 readOnlyRootFilesystem: true
91 allowPrivilegeEscalation: false
93 # ALPHA: Enable the metadata-labeler sidecar to label Kubernetes Nodes with
94 # information from the EC2 API (e.g. number of ENIs)
95 # Also requires using metadata-labeler as the node's metadata source
98 # Additional parameters provided by metadataLabeler.
102 readOnlyRootFilesystem: true
103 allowPrivilegeEscalation: false
106 pullPolicy: IfNotPresent
107 repository: cgr.dev/chainguard-private/kubernetes-csi-livenessprobe
108 tag: latest@sha256:e8be58a0e72ca9afa628749822e34fcf714a63695a246bbb5c225e212b438132
109 # Additional parameters provided by livenessprobe.
113 readOnlyRootFilesystem: true
114 allowPrivilegeEscalation: false
118 pullPolicy: IfNotPresent
119 repository: cgr.dev/chainguard-private/kubernetes-csi-external-resizer
120 tag: latest@sha256:0ff6a9906253dd77be15f38a3914cb6c734afeae5604ef8dcbdda6dbc6ab19ef
121 # Tune leader lease election for csi-resizer.
122 # Leader election is on by default.
125 # Optional values to tune lease behavior.
126 # The arguments provided must be in an acceptable time.ParseDuration format.
127 # Ref: https://pkg.go.dev/flag#Duration
128 # leaseDuration: "15s"
129 # renewDeadline: "10s"
132 # Additional parameters provided by csi-resizer.
134 # Grant additional permissions to csi-resizer
135 additionalClusterRoleRules: []
140 readOnlyRootFilesystem: true
141 allowPrivilegeEscalation: false
145 pullPolicy: IfNotPresent
146 repository: cgr.dev/chainguard-private/kubernetes-csi-node-driver-registrar
147 tag: latest@sha256:9b28d0c15faa56b3a700ea07681dea87423ef465450cf162364289492b965068
149 # The port the health probe is bound to.
151 # Additional parameters provided by node-driver-registrar.
155 readOnlyRootFilesystem: true
156 allowPrivilegeEscalation: false
161 initialDelaySeconds: 30
167 pullPolicy: IfNotPresent
168 repository: cgr.dev/chainguard-private/aws-volume-modifier-for-k8s
169 tag: latest@sha256:7ab90d92daf54b076932ef3c2e243f52cb4d4920b8083cd6e8389b046980b0b9
172 # Optional values to tune lease behavior.
173 # The arguments provided must be in an acceptable time.ParseDuration format.
174 # Ref: https://pkg.go.dev/flag#Duration
175 # leaseDuration: "15s"
176 # renewDeadline: "10s"
179 # Additional parameters provided by volume-modifier-for-k8s.
182 # Add additional volume mounts on the volumemodifier container with sidecars.volumemodifier.volumeMounts
184 # And add mount paths for those additional volumes:
186 # mountPath: /mount/path
190 readOnlyRootFilesystem: true
191 allowPrivilegeEscalation: false
201 accessKey: access_key
204 volumeModificationFeature:
206 # Enable support for node-local volumes that use pre-attached EBS volumes
207 enableNodeLocalVolumes: false
208 # Additional parameters provided by aws-ebs-csi-driver controller.
214 preferredDuringSchedulingIgnoredDuringExecution:
218 - key: eks.amazonaws.com/compute-type
225 preferredDuringSchedulingIgnoredDuringExecution:
233 topologyKey: kubernetes.io/hostname
235 # The default filesystem type of the volume to provision when fstype is unspecified in the StorageClass.
236 # If the default is not set and fstype is unset in the StorageClass, then no fstype will be set
239 # Use envFrom to reference ConfigMaps and Secrets across all containers in the deployment
241 # If set, add pv/pvc metadata to plugin create and modify requests as parameters.
242 extraCreateMetadata: true
243 # Extra volume tags to attach to each dynamically provisioned volume.
250 # (deprecated) The TCP network address where the prometheus metrics endpoint
251 # will run (example: `:8080` which corresponds to port 8080 on local host).
252 # The default is empty string, which means metrics endpoint is disabled.
255 # If metrics are enabled, add prometheus.io/scrape and prometheus.io/port
256 # annotations to the metrics services.
257 enablePrometheusAnnotations: true
259 # Enables the ServiceMonitor resource even if the prometheus-operator CRDs are not installed
261 # Additional labels for ServiceMonitor object
264 # If set to true, AWS API call metrics will be exported to the following
265 # TCP endpoint: "0.0.0.0:3301"
267 # ID of the Kubernetes cluster used for tagging provisioned EBS volumes (optional).
270 userAgentExtra: "helm"
272 deploymentAnnotations: {}
276 # Warning: Disabling PodDisruptionBudget may lead to delays in stateful workloads starting due to controller
277 # pod restarts or evictions.
279 # unhealthyPodEvictionPolicy:
280 # Configure the maxUnavailable or minAvailable for the PDB
281 # If either parameter is non-null, no default is used for both
284 priorityClassName: system-cluster-critical
285 # AWS region to use. If not specified then the region will be looked up via the AWS EC2 metadata
291 revisionHistoryLimit: 10
298 # type: RollingUpdate
309 # A service account will be created for you if set to true. Set to false if you want to use your own.
311 name: ebs-csi-controller-sa
313 ## Enable if EKS IAM for SA is used
314 # eks.amazonaws.com/role-arn: arn:<partition>:iam::<account>:role/ebs-csi-role
315 automountServiceAccountToken: true
317 - key: CriticalAddonsOnly
321 tolerationSeconds: 300
322 # TSCs without the label selector stanza
326 # topologySpreadConstraints:
328 # topologyKey: topology.kubernetes.io/zone
329 # whenUnsatisfiable: ScheduleAnyway
331 # topologyKey: kubernetes.io/hostname
332 # whenUnsatisfiable: ScheduleAnyway
333 topologySpreadConstraints: []
334 # securityContext on the controller pod
340 # Add additional volume mounts on the controller with controller.volumes and controller.volumeMounts
342 # Add additional volumes to be mounted onto the controller:
348 # And add mount paths for those additional volumes:
350 # mountPath: /mount/path
352 # securityContext on the controller container (see sidecars for securityContext on sidecar containers)
353 containerSecurityContext:
356 readOnlyRootFilesystem: true
357 allowPrivilegeEscalation: false
359 # containers to be run before the controller's container starts.
364 # image: public.ecr.aws/amazonlinux/amazonlinux
365 # command: [ 'sh', '-c', "sleep 20" ]
366 # Enable opentelemetry tracing for the plugin running on the daemonset
368 # otelServiceName: ebs-csi-controller
369 # otelExporterEndpoint: "http://localhost:4317"
371 # dnsConfig for the controller pods
374 # Enable SELinux-only optimizations on the EBS CSI Driver node pods
375 # Must only be set true if all linux nodes in the DaemonSet have SELinux enabled
379 kubeletPath: /var/lib/kubelet
383 # If metrics are enabled, add prometheus.io/scrape and prometheus.io/port
384 # annotations to the metrics services.
385 enablePrometheusAnnotations: true
387 # Enables the ServiceMonitor resource even if the prometheus-operator CRDs are not installed
389 # Additional labels for ServiceMonitor object
396 requiredDuringSchedulingIgnoredDuringExecution:
399 - key: eks.amazonaws.com/compute-type
406 daemonSetAnnotations: {}
409 terminationGracePeriodSeconds: 30
410 tolerateAllTaints: true
414 tolerationSeconds: 300
421 revisionHistoryLimit: 10
426 name: ebs-csi-node-sa
428 ## Enable if EKS IAM for SA is used
429 # eks.amazonaws.com/role-arn: arn:<partition>:iam::<account>:role/ebs-csi-role
430 automountServiceAccountToken: true
431 # Disable mutating permissions for the node service account.
432 # When enabled, some features of the EBS CSI Driver node pods will not function, such as taint removal.
433 # Primarily useful in particularly security-sensitive environments, or on multi-tenant clusters that isolate tenants by node.
434 disableMutation: false
435 # Enable the linux daemonset creation
438 # Comma separated list of metadata sources that override the default used by the EBS CSI Driver. Valid sources include 'imds', 'kubernetes', and (ALPHA) 'metadata-labeler'
440 # Warning: This option will be removed in a future release. It is a temporary workaround for users unable to immediately migrate off of older kernel versions.
441 # Formats XFS volumes with bigtime=0,inobtcount=0,reflink=0, for mounting onto nodes with linux kernel version <= 5.4.
442 # Note that XFS volumes formatted with this option will only have timestamp records until 2038.
444 # The number of attachment slots to reserve for system use (and not to be used for CSI volumes)
445 # When this parameter is not specified (or set to -1), the EBS CSI Driver will attempt to determine the number of reserved slots via heuristic
446 # Cannot be specified at the same time as `node.volumeAttachLimit`
447 reservedVolumeAttachments:
448 # The "maximum number of attachable volumes" per node
449 # Cannot be specified at the same time as `node.reservedVolumeAttachments`
454 maxUnavailable: "10%"
456 # securityContext on the node pod
458 # The node pod must be run as root to bind to the registration/driver sockets
463 # allows you to deploy aws-ebs-csi-node daemonset to separate namespace (make sure namespace exists before deploy)
464 namespaceOverride: ""
465 # Add additional volume mounts on the node pods with node.volumes and node.volumeMounts
467 # Add additional volumes to be mounted onto the node pods:
473 # And add mount paths for those additional volumes:
475 # mountPath: /mount/path
477 # securityContext on the node container (see sidecars for securityContext on sidecar containers)
478 # Privileged containers always run as `Unconfined`, which means that they are not restricted by a seccomp profile.
479 containerSecurityContext:
480 readOnlyRootFilesystem: true
483 # containers to be run before the csi-node's container starts.
488 # image: public.ecr.aws/amazonlinux/amazonlinux
489 # command: [ 'sh', '-c', "sleep 20" ]
490 # Enable opentelemetry tracing for the plugin running on the daemonset
492 # otelServiceName: ebs-csi-node
493 # otelExporterEndpoint: "http://localhost:4317"
495 # dnsConfig for the node pods
498# Additional node DaemonSets, using the node config structure
499# See docs/additional-daemonsets.md for more information
503# node.kubernetes.io/instance-type: c5.large
504# volumeAttachLimit: 15
506# Add StorageClass resources like:
508# # annotation metadata
510# storageclass.kubernetes.io/is-default-class: "true"
513# my-label-is: supercool
514# # defaults to WaitForFirstConsumer
515# volumeBindingMode: WaitForFirstConsumer
516# # defaults to Delete
517# reclaimPolicy: Retain
523volumeSnapshotClasses: []
524# Add VolumeSnapshotClass resources like:
526# # annotation metadata
528# snapshot.storage.kubernetes.io/is-default-class: "true"
531# my-label-is: supercool
532# # deletionPolicy must be specified
533# deletionPolicy: Delete
536# Use old CSIDriver without an fsGroupPolicy set
537# Intended for use with older clusters that cannot easily replace the CSIDriver object
538# This parameter should always be false for new installations
539useOldCSIDriver: false
540# nodeAllocatableUpdatePeriodSeconds updates the node's max attachable volume count by directing Kubelet to periodically call NodeGetInfo at the configured interval.
541# Kubernetes enforces a minimum update interval of 10 seconds. A value of -1 uses a automatically determined value dependent on metadata sources.
542# This parameter is supported in Kubernetes 1.33+ and requires the MutableCSINodeAllocatableCount feature gate to be enabled in kubelet and kube-apiserver.
543nodeAllocatableUpdatePeriodSeconds: -1
544# Deploy EBS CSI Driver without controller and associated resources
545nodeComponentOnly: false
546# Set maximum verbosity for logs of each container and other recommended debugging parameters such as enabling AWS SDK debug logging
550 # Supply a custom image to the ebs-csi-driver-test pod in helm-tester.yaml
551 image: "us-central1-docker.pkg.dev/k8s-staging-test-infra/images/kubekins-e2e:v20260720-39d457d26c-master"