Ingress-nginx: Feature Request: gRPC support

Created on 18 Mar 2018  路  8Comments  路  Source: kubernetes/ingress-nginx

Is this a BUG REPORT or FEATURE REQUEST? (choose one):
FEATURE REQUEST

NGINX has announced gRPC load balancing support in the upcoming release - see https://www.nginx.com/blog/nginx-1-13-10-grpc/

Please add support for this to the ingress controller

Most helpful comment

I know - which is why I made sure to say "upcoming release" 馃槈

All 8 comments

@egeland this is not released yet. We need to wait for 1.3.10. The code for gRPC is only present in hg.

I know - which is why I made sure to say "upcoming release" 馃槈

I'd like to get the ball rolling on this.

I assume the following would need to be implemented:

  1. A new template file just for gRPC services
  2. A new set of annotations eg nginx.ingress.kubernetes.io/grpc-*
  3. Either build a new default backend for gRPC or extend the existing one
  4. Documentation.

What i'm not sure about is the conflict between existing annotations and gRPC, can they be re-used or should all gRPC annotations be prefixed grpc-*?

@panamafrancis first, let's wait for the release.

After that, I will update the nginx image to add support for gRPC.
Then we just need one annotation to add support for gRPC, something like nginx.ingress.kubernetes.io/grpc-backend just to enable the feature and see what's the behavior. Later we can start adding new configurations for all the gRPC settings.

To any user watching this issue: do you have a stateless gRPC service ready for Kubernetes?
I want to use something already tested so we can focus just on NGINX.

Temporal image: quay.io/aledbf/nginx-ingress-controller:0.345
The annotation nginx.ingress.kubernetes.io/grpc-backend: "true" is required to enable this feature.
If the gRPC service required TLS then also add the annotation
nginx.ingress.kubernetes.io/secure-backends: "true"

Thanks in advance

Does this feature is part of the 0.13.0?
I'm using helm to install ngnix and currently the values are:
repository: quay.io/kubernetes-ingress-controller/nginx-ingress-controller
tag: "0.13.0"

@aledbf cool thanks!

the annotations docs is out of date, this flag is missing.

Was this page helpful?
0 / 5 - 0 ratings