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
discovered backends are added live before healthcheck runs #251
Comments
From my perspective - you should implement such behavioural changes with reflection in the config file. something like :
Also we have a One more remark : Pease remember that fixing your own issue related to specific use case you can dramatically affect other functionality. @yyyar @illarion could you please review #253 taking to account side effects that it can cause . |
I do understand, but to me this seems like what should be done (also why I am seeking feedback :-) ). If you set a health check policy your nodes should not receive traffic till they are deemed "Healthy". One thing I have done to mitigate this change was to ensure that Healthcheck is immediately kicked off. This means the only people that are functionally affected are those that set There are 2 questions,
|
Spoke to @nickdoikov offline, so I have prepared change that makes it initial backend status as live, user has option to make it unhealthy. |
Here we compare if a health transitions from between healthy and not healthy, and only if it transitions do we notify server of the state change.
gobetween/src/healthcheck/worker.go
Lines 95 to 108 in 7d8a736
However we see initial state is assumed to be healthy
gobetween/src/healthcheck/healthcheck.go
Lines 142 to 154 in 7d8a736
This was odd to me. I would have assumed that liveness would have been false(if health check is configured), and kicked of an immediate health check. However Health check is not kicked off immediately, and instead delays for wait period seconds.
gobetween/src/healthcheck/worker.go
Lines 63 to 73 in 7d8a736
There is a related issue to this, that asked for a delay before backends go live.
related to #50
The text was updated successfully, but these errors were encountered: