I am using 0.33 strimzi in AWS EKS with kubernetes 1.24 version. When I try to deploy kafka-persistent-single.yaml the zookeeper pods are in pending state. Storage class showing as gp2.
Events in pod says
running PreBind plugin "VolumeBinding": binding volumes: provisioning failed for PVC "data-my-cluster-zookeeper-0"
Events in PVC says
waiting for a volume to be created, either by external provisioner "ebs.csi.aws.com" or manually created by system administrator
However kafka-ephemeral-single.yaml works fine. What is the provision to be done for this?
The kafka-persistent-single.yaml
uses persistent storage which has to be provisioned by you or your cluster. It uses the Persistent volume Claims and Storage class mechanism to do so. The Kubernetes events suggest that the storage provisioner didn't create it. This could have variety of reasons: Wrong storage class, some issues with the provisioner, some issues with your AWS account such as running into some limits etc. So that is where you should check for more details and logs.
kafka-ephemeral-single.yaml
is using the emptyDir
storage. So it does not need any proper persistent disks to be provisioned (but it also does not offer any kind of reliability and is suitable only for shortlived ephemeral clusters such as CIs, integration tests or development etc.). That is why it works.