You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
What happened:
CloneSet pods do not become ready due to ReadinnesGate InPlaceUpdateReady. Pod status shows
message: corresponding condition of pod readiness gate "InPlaceUpdateReady" does
not exist.
What you expected to happen:
CloneSet pods are not affected by ReadinnesGate InPlaceUpdateReady when type is ReCreate
How to reproduce it (as minimally and precisely as possible):
Create s CloneSet with
updateStrategy:
paused: true
type: ReCreate
get a couple of pods with added ReadinnesGate InPlaceUpdateReady which doesn't become ready.
Temporary fix is to enable and re-disable updateStrategy using f.e. these patches:
kubectl patch cloneset test --type='merge' -p '{"spec": {"updateStrategy":{"paused":false}}}'
sleep 5
kubectl patch cloneset test --type='merge' -p '{"spec": {"updateStrategy":{"paused":true}}}'
But I have to toggle paused for every new pod of this CloneSet
Anything else we need to know?:
What I'm trying to achieve is to mimic StatefulSet's updateStrategyOnDelete, where I can change StatefulSet as many times as I need to, but pods are not affected until pod is created after scale up or pod is re-created after delete. That's why I need to pause updateStrategy in CloneSet - I have to ensure that new pod will be re-created after delete with the same name to use existing PVC. At the same time I need to control which pods have to be scaled down instead of latest pods in StatefulSet. PV& PVC auto removal feature of CloneSet is useful too.
Environment:
GKE 1.20
Kruise version:
1.0.0
Kubernetes version (use kubectl version):
Install details (e.g. helm install args):
Install via helm with args
installation:
namespace: kruise-system
Others:
The text was updated successfully, but these errors were encountered:
@voron Thanks for reporting. It is an irrational problem.
CloneSet pods are not affected by ReadinnesGate InPlaceUpdateReady when type is ReCreate
Actually, pods should be injected with readinnesGate InPlaceUpdateReady no matter the update type is ReCreate or InPlaceIfPossible, because users can modify the update type any time.
But we should have to refresh the pod state including readiness condition before we check paused and skip to execute update.
What happened:
CloneSet pods do not become ready due to
ReadinnesGate
InPlaceUpdateReady
. Pod status showsWhat you expected to happen:
CloneSet pods are not affected by
ReadinnesGate
InPlaceUpdateReady
whentype
isReCreate
How to reproduce it (as minimally and precisely as possible):
CloneSet
withReadinnesGate
InPlaceUpdateReady
which doesn't become ready.Temporary fix is to enable and re-disable
updateStrategy
using f.e. these patches:But I have to toggle
paused
for every new pod of thisCloneSet
Anything else we need to know?:
What I'm trying to achieve is to mimic StatefulSet's
updateStrategy
OnDelete
, where I can change StatefulSet as many times as I need to, but pods are not affected until pod is created after scale up or pod is re-created after delete. That's why I need to pauseupdateStrategy
inCloneSet
- I have to ensure that new pod will be re-created after delete with the same name to use existing PVC. At the same time I need to control which pods have to be scaled down instead of latest pods in StatefulSet. PV& PVC auto removal feature ofCloneSet
is useful too.Environment:
GKE 1.20
1.0.0
kubectl version
):Install via helm with args
The text was updated successfully, but these errors were encountered: