Hi. Am 23.10.2018 um 09:49 schrieb Willy Tarreau: > Hi Pavlos, > > On Tue, Oct 23, 2018 at 09:42:26AM +0200, Pavlos Parissis wrote: >>> While we won't be doing anything specific for gRPC, my previous reading of >>> the spec taught me that if we simply support H2 end to end it *should* work. >> >> So, haproxy wont be able to understand services and calls of those services >> and take >> load balancing decisions in the same way we do with HTTP1 where we can take >> decisions >> base on verbs(HTTP Methods) and nouns(URL, cookie and etc). > > I'm not sure what you mean because the basic stuff (http actions, fetching > samples, ACLs etc) will be OK. What will definitely not be ready will be to > have a TCP frontend connecting to an HTTP backend, "tcp-request content" > rules processing HTTP elements, Lua, etc.
Will be h2c possible, as some gRPC server starts with HTTP not HTTPS? >> I have to mention that I know very little about gRPC/brotobuf and I have >> looked what >> other products offer when they claim that they support gRPC and I didn't >> find any >> other software loadbalancer that is able to route traffic based on the >> verbs/nouns. > > If this is the only thing they need, that sounds fairly basic. What we > will not have will be support for PUSH but this is not required for gRPC > (I initially thought it was because some people speak about bidirectionnal > HTTP/2 when they want to mean in fact HTTP/2 on both sides). That's why > I'm really saying that it's possible that in the end you'll have everything > you need. > >> It could be that my expectation is unrealistic and lb software doesn't need >> to >> take any decisions based on those verbs/nouns. > > I don't know what is needed, but I definitely expect that at least this > should work :-) I think also but what I have seen out there is hat 'Te: trailers' could be a challenge, as this blog entry describes. https://nghttp2.org/blog/2015/03/24/proxying-grpc-with-nghttpx/ I'm not sure if haproxy can handle this. > Cheers, > Willy Best regards Aleks