Customizing the Block Storage for VPC configmap
You can customize the Block Storage for VPC configmap for more control over snapshot settings.
- Download the Block Storage for VPC configmap and review the parameters.
kubectl get cm addon-vpc-block-csi-driver-configmap -n kube-system -o yaml > vpc-configmap.yaml
- Open the
configmap.yaml
file and update the settings that you want to change. - Reapply the configmap to your cluster.
kubectl apply -f vpc-configmap.yaml
- Verify that the pods are restarted successfully and configurations are applied
kubectl get pods -n kube-system | grep vpc-block
Block Storage for VPC configmap reference
data:
IsVolumeSnapshotClassDefault: "true"
IsStorageClassDefault: "true"
AttachDetachMinRetryGAP: "3" # Initial retry interval for checking Attach/Detach Status. Default 3 seconds
AttachDetachMinRetryAttempt: "3" # Number of attempts for AttachDetachMinRetryGAP. Default is 3 retries for 3 seconds retry gap.
AttachDetachMaxRetryAttempt: "46" # Total number of retries for for checking Attach/Detach Status. Default is 46 times i.e ~7 mins (3 secs * 3 times + 6 secs * 6 times + 10 secs * 10 times)
AttacherWorkerThreads: "15" # The number of goroutines for processing VolumeAttachments
AttacherKubeAPIBurst: "10" # The number of requests to the Kubernetes API server, exceeding the QPS, that can be sent at any given time
AttacherKubeAPIQPS: "5.0" # The number of requests per second sent by a Kubernetes client to the Kubernetes API server.
# Adjust the resource request per container
CSIDriverRegistrarCPURequest: "10m" #container:csi-driver-registrar, resource-type: cpu-request
CSIDriverRegistrarMemoryRequest: "20Mi" #container:csi-driver-registrar, resource-type: memory-request
NodeDriverMemoryRequest: "30m" #container:iks-vpc-block-node-driver, resource-type: cpu-request
NodeDriverCPURequest: "75Mi" #container:iks-vpc-block-node-driver, resource-type: memory-request
LivenessProbeCPURequest: "5m" #container:liveness-probe, resource-type: cpu-request
LivenessProbeMemoryRequest: "10Mi" #container:liveness-probe, resource-type: memory-request
SecretSidecarCPURequest: "10m" #container:storage-secret-sidecar, resource-type: cpu-request
SecretSidecarMemoryRequest: "20Mi" #container:storage-secret-sidecar, resource-type: memory-request
CSIProvisionerCPURequest: "20m" #container:csi-provisioner, resource-type: cpu-request
CSIProvisionerMemoryRequest: "40Mi" #container:csi-provisioner, resource-type: memory-request
CSIAttacherCPURequest: "15m" #container:csi-attacher, resource-type: cpu-request
CSIAttacherMemoryRequest: "30Mi" #container:csi-attacher, resource-type: memory-request
CSIResizerCPURequest: "20m" #container:csi-resizer, resource-type: cpu-request
CSIResizerMemoryRequest: "40Mi" #container:csi-resizer, resource-type: memory-request
BlockDriverCPURequest: "75m" #container:iks-vpc-block-driver, resource-type: cpu-request
BlockDriverMemoryRequest: "150Mi" #container:iks-vpc-block-driver, resource-type: memory-request
CSISnapshotterCPURequest: "20m" #container:csi-snapshotter, resource-type: cpu-request
CSISnapshotterMemoryRequest: "40Mi" #container:csi-snapshotter, resource-type: memory-request
# Set resource limits per container
CSIDriverRegistrarCPULimit: "40m" #container:csi-driver-registrar, resource-type: cpu-limit
CSIDriverRegistrarMemoryLimit: "80Mi" #container:csi-driver-registrar, resource-type: memory-limit
NodeDriverCPULimit: "120m" #container:iks-vpc-block-node-driver, resource-type: cpu-limit
NodeDriverMemoryLimit: "300Mi" #container:iks-vpc-block-node-driver, resource-type: memory-limit
LivenessProbeCPULimit: "20m" #container:liveness-probe, resource-type: cpu-limit
LivenessProbeMemoryLimit: "40Mi" #container:liveness-probe, resource-type: memory-limit
SecretSidecarCPULimit: "40m" #container:storage-secret-sidecar, resource-type: cpu-limit
SecretSidecarMemoryLimit: "80Mi" #container:storage-secret-sidecar, resource-type: memory-limit
CSIProvisionerCPULimit: "80m" #container:csi-provisioner, resource-type: cpu-limit
CSIProvisionerMemoryLimit: "160Mi" #container:csi-provisioner, resource-type: memory-limit
CSIAttacherCPULimits: "60m" #container:csi-attacher, resource-type: cpu-limit
CSIAttacherMemoryLimit: "120Mi" #container:csi-attacher, resource-type: memory-limit
CSIResizerCPULimit: "80m" #container:csi-resizer, resource-type: cpu-limit
CSIResizerMemoryLimit: "160Mi" #container:csi-resizer, resource-type: memory-limit
BlockDriverCPULimit: "300m" #container:iks-vpc-block-driver, resource-type: cpu-limit
BlockDriverMemoryLimit: "600Mi" #container:iks-vpc-block-driver, resource-type: memory-limit
CSISnapshotterCPULimit: "80m" #container:csi-snapshotter, resource-type: cpu-limit
CSISnapshotterMemoryLimit: "160Mi" #container:csi-snapshotter, resource-type: memory-limit
CSISnapshotterRetryIntervalStart: "1s" #container:csi-snapshotter, Initial retry interval of failed volume snapshot creation or deletion.
CSISnapshotterRetryIntervalMax: "300s" #container:csi-snapshotter, Maximum retry interval of failed volume snapshot creation or deletion.
CSISidecarLogLevel: "5" #container:csi-snapshotter, glog/klog log level
IsSnapshotEnabled : "true" #container: iks-vpc-block-driver
CustomSnapshotCreateDelay: "300" #container: iks-vpc-block-driver
VolumeAttachmentLimit: "12" #container: iks-vpc-block-driver