@@ -164,6 +164,12 @@ minReadySeconds is already available as an optional field for Deployments,
164
164
DaemonSets, ReplicasSets and Replication Controllers. Enabling this option
165
165
helps in bringing StatefulSets on par with other workload controllers.
166
166
167
+ Note: The important point to understand is when will a pod be considered
168
+ ` Ready ` which might depend on the container probes configured. For example,
169
+ for a pod with single container having a readiness check with ` initialDelaySeconds ` ,
170
+ for the pod to considered ` Available ` it has to be implicitly ` Ready ` for
171
+ ` initialDelaySeconds ` +` minReadySeconds ` .
172
+
167
173
### Goals
168
174
169
175
StatefulSet Controller honoring minReadySeconds and mark Pod ready only if Pod
@@ -173,12 +179,15 @@ is available for given time mentioned in minReadySeconds.
173
179
174
180
Moving minReadySeconds to Pod Spec is beyond the scope of this KEP
175
181
because of following reasons:
176
- - The effort to change pod spec would be large.
182
+ - The effort to change pod spec would be large. While this also helps other controllers like
183
+ endpoint controller to look at the pod status and propagate, the main goal of this KEP is to introduce
184
+ minReadySeconds field to StatefulSet spec to bring consistency.
177
185
- Currently our workload controllers are inconsistent and we prioritize consistency of experience.
178
186
- StatefulSets are just different enough from daemonsets and deployments that real world use of minReadySeconds
179
187
for stateful sets might influence any future design or point in a more appropriate direction.
180
188
181
189
More information about the discussion can be found [ here] ( https://github.com/kubernetes/kubernetes/issues/65098 )
190
+ and why we are going ahead with this approach as there was consensus to bring consistency of experience.
182
191
183
192
184
193
## Proposal
0 commit comments