The semantics of the Parallel
value for podManagementPolicy
on StatefulSets as described in the docs are ambiguous to me (and seemingly others: Statefulset Pod Management Policy set to Parallel ).
The docs state:
Parallel pod management tells the StatefulSet controller to launch or terminate all Pods in parallel, and to not wait for Pods to become Running and Ready or completely terminated prior to launching or terminating another Pod. This option only affects the behavior for scaling operations. Updates are not affected.
However, as stated in this issue, updates are performed in parallel. This PR proposes a rephrasing, but the intended semantics are not clear to me either.
My question is: what operations are not covered by scaling operations OR updates? It seems to me like no ordering will be enforced at all if the Parallel
option is set, but I am probably missing some scenarios?
Follow-up question; is there any timeline for the graduation of the MaxUnavailableStatefulSet
feature gate? It would seem like the reintroduction of some constraints on updates is necessary if what I said above is correct.