-
Notifications
You must be signed in to change notification settings - Fork 211
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
need sticky client ip hashing in case of both fail-over and recovery #191
Comments
btw if current iphash1 is stable in both cases (failover & recovery of backend from static list) when discovery kind="static" - it should suffice. However it is not clearly mentioned in GB documentation/code. |
@illarion could you please add more description to Iphash1/iphash ? |
@nickdoikov - is it known what is the behavior for iphash1 in case of static backends list where no new servers are discovered but some can fail and recover? |
@AmitBawer yes it is known and it's really simple: in case of failure of some backend, its clients get rebalanced to other backends. Other clients are not rebalanced. If the affected backend recovers, only its clients get rebalanced back. |
@illarion / @nickdoikov its important for our use-case that stickiness is preserved, which means that if some clients are redirected from a failed backend X to another backend Y, then even if X recovers, the clients redirected to Y remain there. |
Thanks for your contribution, @AmitBawer |
@yyyar Thank you indeed, looking forward for such functionality. |
Reading the requirement of @AmitBawer an option named Maybe just a delay for rebalance could suffice, I dunno! |
@shantanugadgil , i believe that if no rebalance never occurs after recovery we might end up theoretically in situation where all clients are forever redirected to the ever-healthy backend and the recovered one would remain idle. Unless you have meant something else. |
I wonder if sticky is actually just a reasonable option for any of the balance methods. |
so, I wrote 'sticky priority' and submitted it, see #209
It meets this criteria mentioned by @AmitBawer above. |
Currently release 0.6.1 allows using iphash1 for client-ip hashing load balancing strategy.
yet according to documentation it is guaranteed that active back-end traffic will remain redirected as is in case another back-end fails. When the failed back-end recovers it is possible that active back-ends traffic will get reshuffled as in the original iphash method.
We need a client-ip hashing method which guarantees that the active traffic is kept stable in both cases.
The text was updated successfully, but these errors were encountered: