grpc / grpc-go

The Go language implementation of gRPC. HTTP/2 based RPC
https://grpc.io
Apache License 2.0
20.89k stars 4.34k forks source link

xds: support LRS for all cluster types #7192

Open easwars opened 4 months ago

easwars commented 4 months ago

When working on https://github.com/grpc/grpc-go/pull/7191, I realized that we were setting the LRS server configuration only for EDS clusters. This needs to be supported for all cluster types.

Note that for non-EDS cluster types, there is no locality info, so we default to reporting everything in a single locality name with all fields set to the empty string.

We need to also ensure that we have proper e2e test coverage for all supported cluster types.

easwars commented 4 months ago

For aggregate clusters, all configuration comes from the underlying clusters, including LRS.

https://github.com/grpc/proposal/blob/master/A75-xds-aggregate-cluster-behavior-fixes.md contains the latest spec on how aggregate clusters should work. A74 is related as well.

purnesh42H commented 4 months ago

@easwars shall we close this? I see the related PR is merged

easwars commented 4 months ago

That PR does not handle the issue mentioned in here. That PR only adds server config to the ClusterUpdate struct (this work was not done as part of A47, but is required for A71). This issue needs to stay open.

purnesh42H commented 4 months ago

That PR does not handle the issue mentioned in here. That PR only adds server config to the ClusterUpdate struct (this work was not done as part of A47, but is required for A71). This issue needs to stay open.

Let me know if you think it could be good task for me to look at