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?
Deploy gRPC supporting application on AWS using ALB
5.8k views Asked by Surbhi At
2
There are 2 answers
0
chaitan94
On
As of 30th October 2020, it is now possible to do this, as end-to-end support for HTTP/2 has finally been added to ALBs.
Annoucement about this: https://aws.amazon.com/about-aws/whats-new/2020/10/application-load-balancers-enable-grpc-workloads-end-to-end-http-2-support/
Check these blog posts to understand how to set it up on ECS:
- Using Fargate Launch type: https://aws.amazon.com/blogs/opensource/containerize-and-deploy-a-grpc-application-on-aws-fargate/
- Using EC2 Launch type: https://dev.to/chaitan94/deploying-a-grpc-service-in-ecs-with-the-ec2-launch-type-2aa
Related Questions in AMAZON-WEB-SERVICES
- S3 integration testing
- How to get content of BLOCK types LAYOUT_TITLE, LAYOUT_SECTION_HEADER and LAYOUT_xx in Textract
- Error **net::ERR_CONNECTION_RESET** error while uploading files to AWS S3 using multipart upload and Pre-Signed URL
- Failed to connect to your instance after deploying mern app on aws ec2 instance when i try to access frontend
- AWS - Tab Schema Conversion don't show up after creating a Migration Project
- Unable to run Bash Script using AWS Custom Lambda Runtime
- Using Amazon managed Prometheus to get EC2 metrics data in Grafana
- AWS Dns record A not navigate to elb
- Connection timed out error with smtp.gmail.com
- AWS Cognito Multi-tenant Integration | Ok to use Client’s Idp?
- Elasticbeanstalk FastAPI application is intermittently not responding to https requests
- Call an External API from AWS Lambda
- Why my mail service api spring isnt working?
- export 'AWSIoTProvider' (imported as 'AWSIoTProvider') was not found in '@aws-amplify/pubsub'
- How to take first x seconds of Audio from a wav file read from AWS S3 as binary stream using Python?
Related Questions in GRPC
- gRPC: Asynchronous client thread safety clarification
- gRPC client is slower in C++ than using `ghz` with the same count of threads
- Incorrect/incomplete python pb2 file generation with buf
- Logging interceptor using grpc.aio python
- Shutting down a channel of a client from Server using grpc-java
- Can I create a gRPC recipe for Python4Android to build a firestore kivy app?
- gRPC async server : bad thread scailibility
- Error during signUp: Error: 13 INTERNAL: Received RST_STREAM with code 2 triggered by internal client error: Protocol error
- Should I use string or Value as type in a message for a serialized object?
- Is there a way that allows us to queue multiple grpc requests?
- How do I programmatically enable InternalLogLevel.TRACE for Netty's Http2FrameLogger, relied upon by grpc-java?
- Grpc Java - Failed to set up TLS using boring ssl on Redhat
- how can i use googlemap gRPC in android?
- Least Connection Load balancing using Grpc
- Missing packages in github.com/grpc-ecosystem/go-grpc-middleware upgrading from v1 to v2
Related Questions in AMAZON-ECS
- Canary deployment using spinnaker in AWS ECS
- AWS CloudFormation stuck at CreateTags
- AWS ECS agent does not start in EC2 instance
- Migrate AWS ECS cluster IPV4 to IPV6
- Mysql error on AWS ECS: [InnoDB] Unable to lock ./ibdata1 error
- Log retation setting for ECS
- No GPU EC2 instances associated with AWS Batch
- How to configure CPU utilized metric for ECS in AWS for Alarm?
- Connection services in different containers in the same ec2 instance
- How to get ECS task to communicate with cloudwatch agent?
- CodePipeline Deploy Stage missing AWSLambda/ automatically update running ecs tasks
- bot3 ecs.execute_command: Task Identifier is invalid
- Step scaling option disabled for ECS Fargate service
- APCu cache in docker container
- Loki on ecs crashes when cleaning up chunks
Related Questions in GRPC-JAVA
- Shutting down a channel of a client from Server using grpc-java
- How do I programmatically enable InternalLogLevel.TRACE for Netty's Http2FrameLogger, relied upon by grpc-java?
- Grpc Java - Failed to set up TLS using boring ssl on Redhat
- How should I handle the gRPC server shutdown during CRaC checkpointing?
- Understanding of onError and onComplete on stream connectivity in Bidirectional streaming using grpc-java
- Consume SpiceDB LookupResources gRPC stream from Clojure using Java gRPC library
- Flink Job consuming Google PubSub - DEADLINE_EXCEEDED exception
- gRPC deployment unexpected HTTP/1
- gRPC Error : io.grpc.StatusRuntimeException: CANCELLED: io.grpc.Context was cancelled without error
- grpc-web js client request to grpc-java backend server fails when using nginx instead of envoy
- Number of streams created in a bidirectional streaming using grpc-java
- The proper way to setting gRPC java logs programmatically
- How to extract amount of retries that happened from rpc call?
- How to refer gradle plugin generated protobuf files to subproject using SpringCloud Gateway
- How to handle (catch) io.grpc.StatusRuntimeException: UNAVAILABLE: Unable to resolve host
Related Questions in AMAZON-ALB
- maintenance page when no healthy instances in target group
- How do I configure AWS Application load balancer and NAT gateway to have the public IP
- How do I add a nested security group to another security Group and have it work with an Application loads balancer?
- API Gateway to ALB
- AWS: what's the point in using CloudFront for API requests instead of routing them to ALB directly?
- AWS setup: moving single page static application frontend to S3 (from web server)
- aws WAF in front of ec2-instance with traefik
- Blocking AJAX Post requests on webapp hosted in Amazon ALB with WAF enabled - in case form data contains space character
- Is it possible to change 403 error page on AWS WAF v2?
- AWS kubernetes Ingress URL is not working
- Exchange behind AWS ALB Load Balancer with WAF
- Does AWS WAF prevent GET flood?
- Getting an ALB to map port 80 to port 3000 on a node server
- Cannot reach AWS Fargate task through ALB
- Intermittent 502 gateway errors with AWS ALB in front of ECS services running express / nginx
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
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