0

I'm unable to get PVC working on a new eks cluster. I see the error Waiting for a volume to be created either by the external provisioner 'ebs.csi.aws.com' or manually by the system administrator. If volume creation is delayed, please verify that the provisioner is running and correctly registered. under PVC.

As a result my postgresql pod hasn't started. This is a new EKS cluster and I'm not sure if I missed something when setting it up.

Any idea why the PVC isn't working?

StorageClass:

[ec2-user@ip-10-15-1-155 manageiq-operator]$ kubectl get sc
NAME            PROVISIONER             RECLAIMPOLICY   VOLUMEBINDINGMODE      ALLOWVOLUMEEXPANSION   AGE
gp2 (default)   kubernetes.io/aws-ebs   Delete          WaitForFirstConsumer   false                  56m

PVC:

[ec2-user@ip-10-15-1-155 manageiq-operator]$ kubectl get pvc
NAME         STATUS    VOLUME   CAPACITY   ACCESS MODES   STORAGECLASS   VOLUMEATTRIBUTESCLASS   AGE
postgresql   Pending                                      gp2            <unset>                 21m

Describe PVC:

[ec2-user@ip-10-15-1-155 manageiq-operator]$ kubectl describe pvc postgresql
Name:          postgresql
Namespace:     manageiq
StorageClass:  gp2
Status:        Pending
Volume:
Labels:        app=manageiq
               manageiq.org/backup=t
Annotations:   volume.beta.kubernetes.io/storage-provisioner: ebs.csi.aws.com
               volume.kubernetes.io/selected-node: ip-192-168-34-13.eu-central-1.compute.internal
               volume.kubernetes.io/storage-provisioner: ebs.csi.aws.com
Finalizers:    [kubernetes.io/pvc-protection]
Capacity:
Access Modes:
VolumeMode:    Filesystem
Used By:       postgresql-5db7cc5767-dq5mv
Events:
  Type    Reason                Age                 From                         Message
  ----    ------                ----                ----                         -------
  Normal  WaitForFirstConsumer  21m                 persistentvolume-controller  waiting for first consumer to be created before binding
  Normal  ExternalProvisioning  72s (x82 over 21m)  persistentvolume-controller  Waiting for a volume to be created either by the external provisioner 'ebs.csi.aws.com' or manually by the system administrator. If volume creation is delayed, please verify that the provisioner is running and correctly registered.

Get Pods:

[ec2-user@ip-10-15-1-155 manageiq-operator]$ kubectl get pods
NAME                                 READY   STATUS                       RESTARTS   AGE
postgresql-5db7cc5767-dq5mv          0/1     Pending                      0          2m27s
Mark
  • 97

1 Answers1

1

Same as yours with v1.27.15-eks In 2024. At first.I consider it deprecated that AWS EKS Document not mention any word about gp2.

End Up I follow "Store app data" within docs and setup EBS storage class. Then It Works.

Finally realized that it's beacuse I haven't setting up Amazon EBS CSI driver and IAM role for it cuz provisioner: kubernetes.io/aws-ebs depends on it.