https://cloudnativelabs.github.io/post/2017-05-1-kube-networ...
(at least for our 3 node master, 3 node worker setup)
(I evaluated the calico + bgp option, too but it looked way to complex, as a k8s starter)
I’m heading to bed now (AEDST), but check out:
- https://docs.projectcalico.org/latest/getting-started/kubern...
- https://kubernetes.io/docs/tasks/administer-cluster/calico-n...
And there’s plenty of other resources out there. IMO if you’re designing a highly available platform, BGP is one of the simplest parts of that complex system.
In my experience you’re likely to run into much more finicky problems with higher layer systems including failover delays, reliance on casting systems and state drift.
https://cloudnativelabs.github.io/post/2017-11-01-kube-high-...
Slightly off topic, but in my experience most (general) internal networking loops stem from mis configured devices bridging networks (desktop level, network device level or VM / SDN)
Multiple paths on a Layer 3 network provide redundancy when used with a routing protocol such as BGP.
Multiple paths on a Layer 2 network provide redundancy when used with a protocol such as LACP. Without proper design, 2 network segments connected with multiple links will trigger Spanning Tree and shut down one of the links. And depending on the configuration, it may or may not unshut if the active link pair goes down.