Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Deploy gRPC supporting application on AWS using ALB

I have two microservices communicating using gRPC.Both are docker applications deployed on ECS. How do I configure them to use AWS ALB?In documentation it says ALB supports HTTP/2, however I can only see HTTP1 settings. My application has one gRPC port and one health check API at 8080.How do I configure that on ALB?

like image 835
Surbhi Avatar asked May 15 '18 07:05

Surbhi


People also ask

Does application load balancer support gRPC?

Due its performance benefits, you can use gRPC for client to service communication as well. With support for gRPC protocol enabled, you can use your Application Load Balancer to efficiently route and load balance your gRPC traffic between microservices or between gRPC-enabled clients and services.

Can I use gRPC in AWS?

gRPC is an open-source remote procedure call (RPC) framework that can run in any environment. You can use it for microservice integrations and client-server communications. For more information about gRPC, see Application Load Balancer support for end-to-end HTTP/2 and gRPC on the Amazon Web Services (AWS) Blog.

What protocols does AWS ALB support?

A: An Application Load Balancer supports load balancing of applications using HTTP and HTTPS (Secure HTTP) protocols.

Does AWS WAF support gRPC?

You can use Amazon Elastic Compute Cloud (Amazon EC2) instances or IP addresses (for example with AWS Fargate) as gRPC targets, with support for gRPC health checks for the target groups.


1 Answers

I don't believe you can.

ALBs "support" HTTP2 but only in so far as they can accept HTTP2 and de-multiplex it before forwarding on HTTP1.

You can use AWS's newer "NLB" though that has other wrinkles. More details of doing this https://blog.prefab.cloud/blog/grpc-aws-some-gotchas

like image 134
jdwyah Avatar answered Sep 23 '22 04:09

jdwyah