tokers commented on pull request #2279: URL: https://github.com/apache/apisix/pull/2279#issuecomment-697242300
> > @imjoey One thing confuses me that the labels field is attached on the whole `upstream` object, It's closer to the labels on Kubernetes Service, not the Pod, and labels on Pod are more pragmatic, so what about attaching labels for each node in this upstream, with this support, we can group the nodes by labels, and in turn implementing some features like blue green release, canary release or other route rules. > > Your idea is great, > But we also need to pay attention to the structure of APISIX, > > 1. The `nodes` under `upstream` is not an object yet; > 2. Blue-green or canary releases are more tied to business, not suitable for writing in upstream objects, but more suitable for extension in plug-ins, But upstream currently does not provide any plug-in implementation; > if we add labels in nodes, I think it will be a big change. 1. I think whether the `Node` is embedded in `Upstream` or as a separate object doesn't matter, even in XDS protocol, the CDS does not necessarily depend on EDS. 2. What we can do is not implementing these route rules in upstream logic, instead, a traffic split plugin can be introduced to solve these problems, I will submit an issue this few days, with some details. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected]
