How can I resize AWS EFS stroge in k8s pvc?

2/17/2022

I'd like to expand my PVC storage, but it does not expand and gives me this error:

kubectl patch pvc/"data-mongodb-0" -p='{"spec": {"resources": {"requests": {"storage": "110Gi"}}}}'

Describe of PVC:

Events:
  Type     Reason             Age   From           Message
  ----     ------             ----  ----           -------
  Warning  ExternalExpanding  26s   volume_expand  Ignoring the PVC: didn't find a plugin capable of expanding the volume; waiting for an external controller to process this PVC.

I have my storage class allowVolumeExpansion true. This is basically an AWS EFS storage. I tested it and there is no issues expanding EBS volumes but cannot do it with the EFS ones. Any workarounds to make this happen?

PVC spec:

spec:
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 100G
  storageClassName: aws-efs
  volumeMode: Filesystem
  volumeName: pvc-cea0000c-0000-4520-bac0-000000000
status:
  accessModes:
  - ReadWriteOnce
  capacity:
    storage: 100G
  phase: Bound

StorageClass:

allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: aws-efs
provisioner: mongodb/aws-efs
reclaimPolicy: Retain
volumeBindingMode: Immediate
-- titanic
amazon-efs
kubernetes
kubernetes-pvc

1 Answer

2/17/2022

AWS EFS does not support allowVolumeExpansion mainly because the mounted volume has a logical size of 8 exabytes which means unlimited. There's no need to expand the volume.

-- gohm'c
Source: StackOverflow