GRPC internal load balancing

Hi,

Long answer short : does render manage correctly DNS resolution for internal gRPC loadbalancing?

When we had deploy our internal grpc microservices connected to a gateway (http rest exposed publicly) on traditional k8s on AWS, we have faced an issue related to GRPC : more details here gRPC Load Balancing on Kubernetes without Tears | Kubernetes

We had to enable round robin on our gateway and a network resolution to resolve ip of different internal grpc server instance due to HTTP2 creating only one connection for all request.

You could see our logs from public gateway deploy on render with dns resolver : it find only one ip (10.218.101.9) of our 2 instances of internal GRPC microservice

Hi Jérémy,

This is not something we support as of today. Our infra team is investigating Linkerd (mentioned in the article you linked above) at some point, which could enable this functionality, but we don’t have any timelines for that work today.

I’d encourage you to submit a feature request at https://feedback.render.com/. It helps to include as much context as possible about your use case, the problem you’re looking to solve, etc.

We rely heavily on customer feedback as a part of our planning and product roadmap process, so capturing interest on the feature request page is very helpful.

Regards,

Matt

Hi Jérémy,

One thing I should have mentioned is the RENDER_DISCOVERY_SERVICE environment variable, which will give you a hostname that can be used to identify the IP addresses for all the instances.

So, from looking at the screenshot above, you should be able to use ms-users-c54x-discovery to find both of the IP addresses.

Regards,

Matt

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.