How to fix "no topology key found on CSINode"?

3.6k Views Asked by At

I am trying to get the aws-ebs-csi-driver helm chart working on a EKS 1.23 cluster.

The message I am getting from PVC events.

failed to provision volume with StorageClass "gp2": error generating accessibility requirements: no topology key found on CSINode
3

There are 3 best solutions below

0
Gabriel Stein On BEST ANSWER

I looked at the worker nodes (ec2) launch template / user data. The kubelet root path was not the standard /var/lib/kubelet. Instead it was a different one. I fixed the missing CSINode driver information by updating the volumes host paths of the ebs-driver node component with the correct kubelet root path.

0
Arockiasmy K On

Maybe your node group has taints and the EBS driver helm chart doesn't have the right tolerations. Once the EBS node driver daemonset can run on the nodes, it should work fine.

0
Yvette Lau On

I find there has an answer in github here which for the older version of the ebs-csi addon. " ensuring the ebs-csi-node DaemonSet was running on all nodes, even those with taints (which was not the default, needed to set node.tolerateAllTaints to true in the helm chart) "

Also, Here is the AWS post that can help with the topology aware volume provisioning on storageclass.

This one solve my issues.

Also, make sure your daemonset ebs-csi-node are running.