App Mesh + GRPC + new server discovery

0

Hi, I'm testing out App Mesh as a potential replacement of current setup with Consul. I have several services communicating over GRPC and there is the usual challenge on how to discover new instances (e.g. ASG scale out).

Currently we have two methods in Prod, one where the servers periodically terminate connections, to allow clients to discover new servers. Another one with GRPC Client side load balancing where we call DNS Consul agent locally to get the list of instances and discover new ones.

With App Mesh (Envoy), how can I do that? Ideally I'm thinking on leveraging xDS APIs for that, but I can't find any doc on how to have my clients connecting to it. Any insights?

Cheers

Nico
질문됨 9달 전416회 조회
2개 답변
1
수락된 답변

Thanks Ashish for your answer. Not sure this Github issue really covers the use case I shared, let me clarify. By default GRPC will open X channels / connections to servers, once done, as long as the connections remain alive it won't try to open any new one.

Let's assume the following case:

We have 1 client and 10 servers Client opened connections to the 10 servers and keep them alive as long as the servers exist Then traffic increases and we auto-scale-out to 2 clients and 12 servers. What happens is that the 2 new servers will receive only very little traffic coming only from the new client. Because the initial client still has all its connections opened. First 10 servers will probably dislike the too big load and problems will start.

Browsing the web a bit more the last days, I think I found what I need: https://github.com/aws-samples/aws-cloudmap-grpc-name-resolver This way, GRPC client load balancing will automatically discover the new servers and open new connections accordingly to properly balance the load.

Probably mixed up things talking about xDS in my initial message, how that worked wasn't so clear at time of writing. Thanks

Nico
답변함 9달 전
0

In case of App Mesh, We are configuring round-robin load balancing and this is not yet configurable in App Mesh API.

This read should really help to get info about how to have my clients connecting to it. https://github.com/aws/aws-app-mesh-roadmap/issues/70

AWS
지원 엔지니어
답변함 9달 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인

관련 콘텐츠