You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
Nodes in my cluster have different network connection. Some nodes are connected to LAN via fast connection but some nodes use slow connection.
I'm using ARP mode, so only one node can announce an address.
When using kube-vip it often happens that nodes with slow connection capture the loadbalancer lease.
I would prefer to set some preferences or priorities, so that loadbalancer addresses are announced from nodes with faster internet connection when possible.
It seems like currently kube-vip treats all nodes the same, and the node to advertise loadbalancer IPs is chosen randomly.
Describe the solution you'd like
Per-node option to lower probability that this node will capture loadbalancer service lease.
The node with lowered priority should announce services when and only when other nodes aren't available [for this service].
Maybe it could be possible to add a delay before kube-vip attempts to capture service lease, which is set via node annotations.
High priority nodes could use zero delay, so that they capture the lease immediately, while low priority nodes could add, for example, 50 ms delay, so that it will [almost] never be the first to capture the lease.
Describe alternatives you've considered
Use service election + externalTrafficPolicy: Local. Issues: some services are deployed as a daemon set, so local traffic policy doesn't prevent kube-vip from using slow nodes.
Disable service election and remove kube-vip from nodes with slow network. Issues: externalTrafficPolicy: Local breaks
Make network uniform across all nodes. Issues: not possible in my setup :-)
The text was updated successfully, but these errors were encountered:
Is your feature request related to a problem? Please describe.
Nodes in my cluster have different network connection. Some nodes are connected to LAN via fast connection but some nodes use slow connection.
I'm using ARP mode, so only one node can announce an address.
When using kube-vip it often happens that nodes with slow connection capture the loadbalancer lease.
I would prefer to set some preferences or priorities, so that loadbalancer addresses are announced from nodes with faster internet connection when possible.
It seems like currently kube-vip treats all nodes the same, and the node to advertise loadbalancer IPs is chosen randomly.
Describe the solution you'd like
Per-node option to lower probability that this node will capture loadbalancer service lease.
The node with lowered priority should announce services when and only when other nodes aren't available [for this service].
Maybe it could be possible to add a delay before kube-vip attempts to capture service lease, which is set via node annotations.
High priority nodes could use zero delay, so that they capture the lease immediately, while low priority nodes could add, for example, 50 ms delay, so that it will [almost] never be the first to capture the lease.
Describe alternatives you've considered
externalTrafficPolicy: Local
. Issues: some services are deployed as a daemon set, so local traffic policy doesn't prevent kube-vip from using slow nodes.externalTrafficPolicy: Local
breaksThe text was updated successfully, but these errors were encountered: