Complicated problem regarding deployment, ingress and readiness probe

Hi Guys,
I have very difficult problem regarding deployment, ingress and readiness probe.
I’m creating HA deployment for druid.
When there is more than one replica - one become leader and others forward all http traffic to leader
So what I’ve done

  1. I’m using traefik as Ingress so I needed to proper handle of ready status
  2. There is isLeader http endpoint which I use as readiness probe
  3. There is health http endpoint which I use as liveness probe

To this point everything is OK. I have one ready replica (out of 3)
But how should I configure RollingUpdate strategy to have all replicas updated ?
The prefered way is to create new replicas, kill not ready replicas and at the end kill leader.
From my side I’d like to use liveness probe instead of readiness probe to perform update.

Any ideas ?

Are you using a deployment or a stateful set?

If you are using a deployment, I don’t think you can choose the order they are updated and that is by design.

You may do some tricks if you use more than one deployment: one for leader with 1 replica and one for others. But not sure that makes sense (it might, though).

If you are using stateful set, I think you have more flexibility in that regard. But I never used it, so I can’t really help :-/

Those are the two options to explore I can think of :slight_smile: