Open pregenRobot opened 1 month ago
I'm a little bit lost about the background of this need.
Milvus do has CheckHealth
grpc service but not fully compatible with grpc standard one. And team is working on enhancing the meaning of this CheckHealth
API. If could be confusing if these both of these two services exist in Milvus proto.
I was wondering that if you could elaborate the detail need for this API please? @pregenRobot
/cc @jaime0815
@congqixia @jaime0815
Thank you for responding back!
To provide some context behind why we want this feature:
/healthz
at port 9091
so our load balancers can route HTTP requests to MilvusThe solution to add the standardized GRPC Healthcheck endpoint we believe is the best way to resolve this issue. Why?
I will appreciate your feedback on what you think about this proposal! I understand the team is working on expanding the CheckHealth API and feel it would be really valuable if the extended functionality you are considering takes into account the standard.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Rotten issues close after 30d of inactivity. Reopen the issue with /reopen
.
Is there an existing issue for this?
What would you like to be added?
I would like to add an endpoint to perform healthcheck using the standardized GRPC Healthcheck endpoint
https://github.com/grpc/grpc/blob/master/doc/health-checking.md
Why is this needed?
Software load balancers often require us to perform healthchecks before requests can be routed to the service in a Kubernetes cluster. It becomes a big hassle if an unstandardized health checking endpoints for a service is provided, instead of the standardized one as we will have to implement a separate logic specifically for Milvus.
Anything else?
In order to provide compatibility and prevent breaking changes, we propose a separate healthcheck endpoint (aside from the existing one) that follows the standardized GRPC health checking protocol.