At the moment, if you wanted to peer each node in a n-rack cluster with the ToR router, you have to either configure multiple Global Peers, and be happy that some of the sessions never establish (which will conflict with #1827 in v3.1) or configure many individual BGPPeer objects
The ability to target BGPPeer to nodes with better control that either "Global" or "per node"/
Allow matching on labels to target BGPPeer configurations to nodes.
I think configuring global peers that you know will fail is an antipattern. We should consider how we can make it easier to configure many individual BGPPeers.
As a strawman idea, if the BGP peers had a "node selector" they could query nodes with label 'rack=a', for example.
Yep, I think node selectors are the best idea. We label all our nodes with the rack they鈥檙e on :)
I've put together a prototype which includes this here: https://github.com/projectcalico/libcalico-go/pull/861
This has been merged to master!
Will be out in v3.3.0.
Most helpful comment
I think configuring global peers that you know will fail is an antipattern. We should consider how we can make it easier to configure many individual BGPPeers.
As a strawman idea, if the BGP peers had a "node selector" they could query nodes with label 'rack=a', for example.