We have a three-node GKE cluster. One node per zone.
We have a StatefulSet with three replicas. Each with their own PVC.
Now the PVCs on GKE use a regional storage class, but we see that the volumes only ever exist in two of the three zones.
What we fear can happen during a deployment or maintenance window is, two of the StatefulSet pods being killed and then being schedule on a node where the volume cannot be attached to due to regional/zonal constraints.
What is the best practice here to set this up correctly?
google regional persistent disk will choose only one primary and secondary zone, and usage is restricted to only those zones for its lifetime. it can't be used in more than two zones.
https://cloud.google.com/kubernetes-engine/docs/how-to/persistent-volumes/regional-pd