Skip to content
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

expose gRPC as gRPC web #1111

Closed
ctaggart opened this issue Jun 12, 2018 · 16 comments
Closed

expose gRPC as gRPC web #1111

ctaggart opened this issue Jun 12, 2018 · 16 comments

Comments

@ctaggart
Copy link

ctaggart commented Jun 12, 2018

Building off of rfc Ingress Support #629

As an operator, I would like to expose a set of gRPC based services to the outside world for use in web applications by having conduit expose the services as gRPC web.

Basically, something similar to what Envoy is building:
https://www.envoyproxy.io/docs/envoy/latest/configuration/http_filters/grpc_web_filter#config-http-filters-grpc-web

Web applications can then consume the gRPC web services using tools like https://www.npmjs.com/package/ts-protoc-gen

@grampelberg
Copy link
Contributor

Cool! It looks like this is via. Envoy's gRPC-Web support.

@ctaggart
Copy link
Author

A cool live example of gRPC web being used in the browser is https://grpcweb.jbrandhorst.com/

@hartmut-co-uk
Copy link

+1
there's been a lot of movement over the past few days
https://github.com/grpc/grpc-web

@hartmut-co-uk
Copy link

ah on a side note - I just noticed the example/showcase page is built on the

Improbable gRPC-Web implementation https://github.com/improbable-eng/grpc-web

Same as people with Google internally Improbably were came up with, designed and built a 'grpc web' solution for the browser - were the first to OpenSource and share their work
...collaborated and contributed with the grpc team to spec out the future 'official?' grpc-web protocol: https://github.com/grpc/grpc/blob/master/doc/PROTOCOL-WEB.md

I do hope I'm not saying anything wrong - anyone please let me know if that would be the case!

References:
https://improbable.io/games/blog/grpc-web-moving-past-restjson-towards-type-safe-web-apis
https://github.com/grpc/grpc-web/blob/master/ROADMAP.md
https://github.com/grpc/grpc-web/blob/master/BROWSER-FEATURES.md

@ctaggart
Copy link
Author

ctaggart commented Aug 4, 2018

Also worth mentioning the Rust based tower-grpc by contributes here too. I've been watching and reading from the sidelines. I'm really looking forward to how this plays out.

@hartmut-co-uk
Copy link

hot off the press - to clarify above grpc/grpc-web vs. improbable-eng/grpc-web - they actually do Inter-op..
grpc/grpc-web#91

@grampelberg
Copy link
Contributor

@hartmut-co-uk have you taken a look at google/rejoiner ? Does something like that make sense or are you looking for grpc/grpc-web specifically?

@hartmut-co-uk
Copy link

thx @grampelberg, was specifically for grpc/grpc-web

@ctaggart
Copy link
Author

ctaggart commented Sep 22, 2018

Congrats on Linkerd 2! I enjoyed this presentation by @klingerf and will probably try it out soon. I like seeing GRPC status next to HTTP status:

https://youtu.be/3Fpa2Z_r4nE?t=24m26s
image

We currently have nginx sidecars for our services providing TLS termination. I'm interested in replacing the sidecars with Linkerd 2, but I'd really like to see this feature added so I don't have to wedge another proxy in between such as the gRPC-Web Go Proxy.

@stale
Copy link

stale bot commented Dec 21, 2018

This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 14 days if no further activity occurs. Thank you for your contributions.

@stale stale bot added the wontfix label Dec 21, 2018
@hartmut-co-uk
Copy link

not stale

@stale stale bot removed the wontfix label Dec 22, 2018
@stale
Copy link

stale bot commented Mar 22, 2019

This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 14 days if no further activity occurs. Thank you for your contributions.

@stale stale bot added the wontfix label Mar 22, 2019
@grampelberg grampelberg added rfc and removed wontfix labels Mar 22, 2019
@grampelberg
Copy link
Contributor

For now, the decision is to have grpc-web run as a separate proxy instead of moving that functionality into the linkerd proxy directly.

@ejemba
Copy link

ejemba commented Sep 28, 2020

Hi @grampelberg, I'm new to linkerd2 and grpc-web. I'm willing to use linkerd2 with grpc-web.
Can you just describe what you mean by « run as a separate proxy » what will be the proxy here ?
thank you

@grampelberg
Copy link
Contributor

@ejemba the grpc-web project recommends Envoy, but there is also grpc-web.

@ejemba
Copy link

ejemba commented Sep 28, 2020

Thank you @grampelberg . I'll try to find some relevant projects to base me on.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jul 17, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

4 participants