Thanks Carl!

On Thursday, September 6, 2018 at 3:55:32 PM UTC-4, Carl Mastrangelo wrote:
>
> It should be sufficient to have GrpclbLoadBalancerFactory in the 
> classpath.  You can set it explicitly if you would like.
>
>
> As for the endpoint, The load balancer and the load report are separate 
> pieces.  The load balancer it the proto service that your client connects 
> to and asks for server addresses and weights.  The load reporter service 
> connects to your servers and asks them how loaded or alive they are.  Only 
> the load balancer api was part of this release, and there currently isn't a 
> load reporter.  I am considering showing how to make a simple one, but 
> there isn't an off the shelf version for use yet.   
>
> On Thursday, September 6, 2018 at 8:15:28 AM UTC-7, Lisandro Diaz wrote:
>>
>> Do i need to create my own loadbalancer or can i use the RoundRobin 
>>
>>> NettyChannelBuilder.forTarget(rpcTarget)
>>>     .loadBalancerFactory(RoundRobinLoadBalancerFactory.getInstance())
>>>     .nameResolverFactory(DnsNameResolverProvider.asFactory())
>>>     .negotiationType(NegotiationType.valueOf(rpcNegotiationType))
>>>     .build();
>>>
>>>
>> or do i need to use .loadBalancerFactory(GrpclbLoadBalancerFactory.
>> getInstance())
>>
>> Also the proto defined in grpclb is this meant to be served up by the 
>> loadbalancer (i.e: HAProxy) ? Which means i have to expose a grpc endpoint 
>> on HAProxy to reply with stats?
>>
>> On Tuesday, July 31, 2018 at 2:30:41 PM UTC-4, Carl Mastrangelo wrote:
>>>
>>> In release 1.14, it is now possible to use gPRC LB, gRPC's full featured 
>>> load balancer client.  This is an experimental feature that contacts a gRPC 
>>> LB server to get load balancing data.  
>>>
>>> To get started, you will need to set the JVM flag 
>>> "-Dio.grpc.internal.DnsNameResolverProvider.enable_grpclb=true", and 
>>> include the grpc-grpclb artifact on your class path.  This enables using 
>>> DNS SRV records to point to gRPCLB servers when doing load balancing.  
>>>
>>> The DNS entries need to be in a specific format to be usable.   For a 
>>> service called "api.service.com", It should look something like this:
>>>
>>> A api.service.com - 127.0.0.1
>>> AAAA api.service.com - ::1
>>> SRV _grpclb._tcp.api.service.com - lb.service.com
>>> A  lb.service.com - 192.168.0.1
>>>
>>>
>>> gRPC will check for an SRV record with the prefix "_grpclb._tcp"   on 
>>> the target you provide to the channel.  If present, gRPC will use the 
>>> addresses of THAT domain as balancer addresses.  In LB parlance, 
>>> lb.service.com is a *balancer* address, while api.service.com is a 
>>> *backend* address.   Balanacer addresses must speak the gRPCLB protocol (as 
>>> defined in the proto).
>>>
>>> There will be upcoming documentation on the exact way to configure this, 
>>> but this is being announced here for interested parties to try it out and 
>>> answer any questions.
>>>
>>

-- 
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/69440f45-f578-4829-a3a6-c0f872ec5d7c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to