Arun:
Hi. My EKS managed node is of 20GiB in size. What if my node runs out of space? How can I provision EBS volume dynamically in such scenario? I know we can do it manually on the fly by stopping the instance. but this will cause downtime.
Chang Ge:
The best practice is that if you anticipate any Pod might use large volume of data, use a PVC instead of emptyDir
.
Arun:
What if I want to use additional space? should StorageClass work? or EBS CSI driver?
Chang Ge:
I don’t think so - both storage class and EBS CSI driver are for PVCs, they’re not meant for the nodes themselves. So the only way is (as you wrote) do it manually and stop the instance.
Arun:
Thank you. So dynamic provision of EB volumes using CSI driver/StorageClass wouldn’t exceed the storage capacity assigned to that node (in my case 20 GiB). Did I understand correctly?
Chang Ge:
Not sure what you mean, the size of the PVC is irrelevant to the node’s disk size.
Arun:
When I’m creating my managed node group, I chose t3.medium instance family with 20GiB in Size. How do we consume 20GiB storage?
Chang Ge:
Any volume
that does not use a PVC (such as the ones using emptyDir
) will consume those 20GiB storage.
Also all containers’ operating system and their “local” disks will also consume those 20GiB storage.
Arun:
perfect. understood now. thank you