Description
Description
What problem are you trying to solve?
JuiceFS users using JuiceFS CSI Driver in Kubernetes with karpenter have encountered the following problem:
I have pods on the same node that are depend on each other.
For example pod B depends on pod A and they are on the same node. And when B is deleted, A will be deleted by its controller(kubelet will trigger A's controller). But when A is deleted before B, B will not run well and result in Error.
But when I did a disruption in node. A and B are evicted in the same time, and B will cause Error which can not be accepted by consumers.
I tried two methods:
- setup PodDisruptionBudget for A (which is proven to be effective in Kubernetes without karpenter), but karpenter ignored it, and evict both A and B.
- set annotation
karpenter.sh/do-not-disrupt
in A , but karpenter do not trigger disruption anymore.
PDB will prevent A from be evicted during drain, and A will be deleted by its controller after B is deleted, so the entire drain can be successful. But it seems not work in karpenter.
Can karpenter provide something like PDB? It will help a lot in JuiceFS's case. Thanks!
How important is this feature to you?
- Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
- Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
- If you are interested in working on this issue or have submitted a pull request, please leave a comment
Activity