Hi David, Is grpclb available now? since the PR that adds support for the c-ares DNS resolver has being merged. But the calls to grpc_lb_addresses_set_address still always set is_balancer=false in dns_resolver_ares.c, that confused me.
在 2017年5月31日星期三 UTC+8上午8:29:01,David Garcia Quintas写道: > > Hi Tudor, > > Apologies for the late response. It's timely that the PR that adds support > for the c-ares DNS resolver (https://github.com/grpc/grpc/pull/11237) is > very close to being merged. This is the piece that's missing for making > grpclb work in open source. In particular: > > - Have a look at this document > <https://github.com/grpc/proposal/blob/master/A5-grpclb-in-dns.md>. It > goes over the DNS configuration changes needed to control which addresses > are marked as balancers. It's currently a "proposal", to be promoted to a > doc shortly. It can be taken quite authoritatively, it's what > https://github.com/grpc/grpc/pull/11237 is implementing for balancer > discovery. > - Wait for https://github.com/grpc/grpc/pull/11237 to be merged, or > patch it in a local repo. > - Write a regular gRPC server (in any language) implementing the load > balancer protocol > > <https://github.com/grpc/grpc/blob/master/src/proto/grpc/lb/v1/load_balancer.proto>. > > This is the server to be marked in your DNS records as a balancer (as > described in the aforementioned document > <https://github.com/grpc/proposal/blob/master/A5-grpclb-in-dns.md>), > with which the client's grpclb will talk to to obtain the list of backend > addresses (what's called server_lists > > <https://github.com/grpc/grpc/blob/master/src/proto/grpc/lb/v1/load_balancer.proto#L120>). > > It's up to you to make the logic inside this balancer as simple or as > complex as you want. > > Let me know if you have any questions, I'll be more prompt to get back to > you this time around :) > David. > > On Tuesday, 18 April 2017 08:46:46 UTC-7, [email protected] wrote: >> >> Hello, >> >> What's the status of load balancing ( >> https://github.com/grpc/grpc/blob/master/doc/load-balancing.md) in C++? >> >> It seems that the "grpclb" implementation exists in core, but there's no >> way to obtain addresses with is_balancer=true (the DNS resolvers always >> assume that resolved addresses are regular backend addresses as opposed to >> balancer addresses; the calls to grpc_lb_addresses_set_address always set >> is_balancer=false). >> >> Right now, I'm planning to multiplex on my side onto a pool of channels >> (I'm using Kubernetes iptables forwarding, which looks like a L4 balancer >> from the client side -- all nodes are hidden behind the same IP address), >> but I'd be willing to switch to grpclb when it becomes available. >> >> Also, are there any plans to provide grpclb servers for common use cases >> (balancing to one Kubernetes service would be a very useful one, and would >> probably get a lot of usage). >> >> Thanks, >> -Tudor. >> >> -- You received this message because you are subscribed to the Google Groups "grpc.io" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/grpc-io. To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/e769124d-fded-4bac-8dbc-cf4ce153d9f5%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
