Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix conflicting ARP when IP is shared #922

Closed
wants to merge 2 commits into from
Closed

Conversation

kvaps
Copy link
Contributor

@kvaps kvaps commented Jul 20, 2021

This PR implements the changes purposed by @liuyuan10 in #562 and adapt them for latest version v0.10.2
We're using this patch in production for a few month, it works perfectly.

When IP is shared by two services, it may be annonced from different
nodes causing conflicting arp responses.

This commit fixes by using service IP in the hash instead of service
name so that service sharing the same IP will have the same master.

For traffic cluster services, all nodes should be usable instead of
those running pods, so that services sharing IPs have the same set of
usable nodes.

Fixes #558

docker images prepared:

ghcr.io/kvaps/metallb-controller:v0.10.2-fix558
ghcr.io/kvaps/metallb-speaker:v0.10.2-fix558

liuyuan10 and others added 2 commits March 28, 2020 17:19
When IP is shared by two services, it may be annonced from different
nodes causing conflicting arp responses.

This commit fixes by using service IP in the hash instead of service
name so that service sharing the same IP will have the same master.

For traffic cluster services, all nodes should be usable instead of
those running pods, so that services sharing IPs have the same set of
usable nodes.
@kvaps kvaps changed the title Shared ip Fix conflicting ARP when IP is shared Jul 20, 2021
@champtar
Copy link
Contributor

This introduce 2 unneeded behavior change for all users:

  • the node responding to arp might change for everyone
  • when using traffic policy cluster we don't prefer node with endpoints anymore

Ideally changes in this PR should only impact shared IP services

@russellb
Copy link
Collaborator

obsoleted by #976

@russellb russellb closed this Oct 27, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Multiple services with same IP announced multiple times
4 participants