gardener / etcd-druid

An etcd operator to configure, provision, reconcile and monitor etcd clusters.
Apache License 2.0
70 stars 49 forks source link

Statefulset PreDeploy flow checks for pod readiness if labels were patched #841

Closed shreyas-s-rao closed 2 months ago

shreyas-s-rao commented 2 months ago

How to categorize this PR?

/area quality /kind bug

What this PR does / why we need it: Statefulset PreDeploy flow checks for pod readiness if labels were patched. This ensures there is no transient quorum loss due to back-to-back double rolling of sts pods during downgrade of etcd-druid from master/v0.23.0+ version to v0.22.x version.

Which issue(s) this PR fixes: Fixes #

Special notes for your reviewer: /cc @unmarshall @seshachalam-yv @ishan16696

Release note:

NONE
shreyas-s-rao commented 2 months ago

/retest

shreyas-s-rao commented 2 months ago

/retest

ishan16696 commented 2 months ago

Hi @shreyas-s-rao , why can't we use this https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#minimum-ready-seconds to give some extra buffer to the pods to become Ready ?

shreyas-s-rao commented 2 months ago

@ishan16696 this is a good suggestion in general, but atleast as of today druid does not set minReadySeconds on the sts, and druid is the only actor who creates and manages the sts. So there's no need to consider this field here.

ishan16696 commented 2 months ago

@ishan16696 this is a good suggestion in general, but atleast as of today druid does not set minReadySeconds on the sts, and druid is the only actor who creates and manages the sts. So there's no need to consider this field here.

yeah, let's discuss this later . As of now, we can go ahead with this PR.