New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add gRPC health check #3040
Comments
Might be related to #3002. |
+1 Unable to set up ALB->(gRPC)->ECS because there is no support for gRPC health checks as is required by AWS ALB. This would be a common use case, IMO. #3002 is only talking about enhancing HTTP health checks. |
You can specify the allowed return codes on the ALB, as a workaround just set them to |
I use this config for ALB for OTLP/GRPC, which works like a charm:
Unfortunately, I have a problem with OTLP/HTTP. It works fine with JSON payload, but it has problem with protobuf payloads sometimes (SSL handshake timeout, client headers timeout):
Any idea how to configure AWS ALB to work with OTLP HTTP Protobuf? |
@jangaraj , i am trying to setup openetelemetry image in ecs faregate with elb. But it i failing for grpc health check. do you have reference blog or repo to refer? Because you are able to setup grpc communication checking with you |
ELB doesn't support GRPC, only ALB. |
@jangaraj , Load balancer type: Application. Could you please review below template and suggest any changes? Any suggestions highly appreciated. ApiContainerSecurityGroup: |
@jangaraj , at least cloud you please share your cloudformation template.. i will reference it to find solution to make grpc health check |
This doesn't work for me. The load balancer health check still fails |
I made an extension for grpc healthcheck if anyone is interested - https://github.com/jammymalina/otel-grpc-healthcheck. You have to use the otel builder to be able to use it in the collector. I'd like to make it part of the opentelemetry-collector-contrib so if anyone can help me with that it would be great. My extension is using the standard grpc health check - /grpc.health.v1.Health/Check |
I filed #8397 to add it as an option for grpc servers |
Hello, any updates on this? |
We're waiting for the gRPC health check too. If you are looking to set up ALB (gRPC) -> ECS, one workaround would be to deploy the gRPC proxy as a sidecar to route health requests to the HTTP endpoint. |
You can use this extension for now - https://github.com/jammymalina/otel-grpc-healthcheck. We use it in prod with Application Load Balancer for quite a while so I dare say it's pretty stable. The docs are still missing (too lazy to add them) but the config is pretty straightforward. It works with default you just have to make sure you include the original healtcheck extension with default settings too. You have to use the otel collector builder to build to use the extension |
Is your feature request related to a problem? Please describe.
If you want to deploy the OpenTelemetry Collector in gateway-mode behind an AWS Application Load Balancer (ALB) to support gRPC (e.g. OTLP) then ALB requires a gRPC health check. Today, we have a health check extension, however it only support HTTP.
Describe the solution you'd like
Either extend the health check extension or add health check endpoints to gRPC receivers.
Describe alternatives you've considered
Switch from gRPC to HTTP for receiving data
The text was updated successfully, but these errors were encountered: