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?
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.
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.
A: An Application Load Balancer supports load balancing of applications using HTTP and HTTPS (Secure HTTP) protocols.
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.
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
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With