I've set up an Azure Application Gateway with Azure Kubernetes Service using the Azure Application Gateway Ingress Controller (AGIC) and confirmed that it's working correctly using the sample guestbook app.

I then used almost the exact configuration to deploy a Golang app that uses the gRPC-gateway to the same AKS cluster.

The default liveness and readiness health checks fail so I've configured custom exec based (not fit for prod) so that they pass the checks and are added to the backend pool.

The gateway (REST) pod is healthy however the pod that uses gRPC is still unhealthy and has the following error message.

Cannot connect to server. Check whether any NSG/UDR/Firewall is blocking 
access to server. Check if application is running on correct port.

I'm guessing that the gateway doesn't support gRPC/binary communication but I'm not positive and cannot find anything in the documentation.

Setup Details: - Greenfield - Application Gateway Ingress Controller tutorial to build the AKS cluster

I've submitted a help ticket to Microsoft however I'm still waiting for a reply. Has anyone else tried to host gRPC apps using the Application Gateway?


Whilst I can't find a definitive answer, the documentation for the Application Gateway Ingress controller does seem to indicate that gRPC is not supported, but is being worked on.

We are working on enhancing the product with features that customers have been asking for, such as using certificates stored on Application Gateway, mutual TLS authentication, gRPC, and HTTP/2

  • Many thanks for the answer. Also, I received a confirmation from Azure support. gRPC is not supported and there is no timeframe. None of their Layer 7 LBs/WAFs support gRPC. As a side note, I also confirmed that the Application Gateway only supports HTTP probes. Other types of readiness and liveness probes are not supported. – Charles Green Feb 27 '20 at 15:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.