We use the free version of Nexus on EKS, with DB stored in EFS.
The free version has a lock file preventing Nexus from running on 2 pods.
Issue is: when a node dies and it is handled "properly" (=with node termination handler), a new pod gets created but fails to start because of lock file => this prevents node termination handler from completing its work.
Solution
we need a "at most 1 pod", which is provided by Statefulsets.
Background
We use the free version of Nexus on EKS, with DB stored in EFS. The free version has a lock file preventing Nexus from running on 2 pods.
Issue is: when a node dies and it is handled "properly" (=with node termination handler), a new pod gets created but fails to start because of lock file => this prevents node termination handler from completing its work.
Solution
we need a "at most 1 pod", which is provided by Statefulsets.
References
https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#recreate-deployment