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
Is your feature request related to a problem? Please describe.
Since we are putting Quilkin behind UDP Load Balancers in K8s, we should have a readiness endpoint, so that Services know if the proxy is ready to receive traffic or not.
This I feel is particularly true when scaling up a proxy that is connected to an xDS resource, but has yet to receive endpoint instructions yet.
Describe the solution you'd like
I think the easiest option is to have a /ready admin http probe that returns 200 when the proxy has 1 or more endpoints configured.
If the proxy has no endpoints, it will return StatusCode::INTERNAL_SERVER_ERROR.
That way new Proxies that have yet to receive their endpoints from the xDS server won't get sent data that won't go anywhere.
Also if no proxies have endpoints, there's no point for the Service to send data to a proxy anyway, since it's not going anywhere.
Describe alternatives you've considered
We could leave things as is, and rely on the eventual consistency, but I think that will potentially put unnecessary delays in UDP network streams / connections.
Is your feature request related to a problem? Please describe.
Since we are putting Quilkin behind UDP Load Balancers in K8s, we should have a readiness endpoint, so that Services know if the proxy is ready to receive traffic or not.
This I feel is particularly true when scaling up a proxy that is connected to an xDS resource, but has yet to receive endpoint instructions yet.
Describe the solution you'd like
I think the easiest option is to have a
/ready
admin http probe that returns 200 when the proxy has 1 or more endpoints configured.If the proxy has no endpoints, it will return
StatusCode::INTERNAL_SERVER_ERROR
.That way new Proxies that have yet to receive their endpoints from the xDS server won't get sent data that won't go anywhere.
Also if no proxies have endpoints, there's no point for the Service to send data to a proxy anyway, since it's not going anywhere.
Describe alternatives you've considered
We could leave things as is, and rely on the eventual consistency, but I think that will potentially put unnecessary delays in UDP network streams / connections.
Additional context
quilkin/src/admin.rs
Lines 47 to 71 in 25d9360
The text was updated successfully, but these errors were encountered: