Skip to content

[release-4.8] Bug 2054225: Fix gateway routers answer ARP/NDP requests for LoadBalancer/ExternalIP services#957

Merged
openshift-merge-robot merged 2 commits intoopenshift:release-4.8from
andreaskaris:bz2054225
Mar 3, 2022
Merged

[release-4.8] Bug 2054225: Fix gateway routers answer ARP/NDP requests for LoadBalancer/ExternalIP services#957
openshift-merge-robot merged 2 commits intoopenshift:release-4.8from
andreaskaris:bz2054225

Conversation

@andreaskaris
Copy link
Contributor

- What this PR does and why is it needed

Backport of #952

- Special notes for reviewers

commit 917d97ccc28cbfca9a44bd2eebe5b66f1cdd4ad9 (HEAD -> bz2054225, downstream-akaris/bz2054225)
Author: Ori Braunshtein <obraunsh@redhat.com>
Date:   Wed Oct 13 12:35:33 2021 +0300

    Neighbor solicitations and ARP requests used to hit all 3 OVN
    load-balancers in addition to the node local IP for ExternalIP.
    ARP requests or IPv6 NS would receive <node number + 1> replies.
    
    This fix stops ARP requests and IPv6 NS for ExternalIPs from entering
    the OVN dataplane. Only the node with the actual local IP will now
    answer to the NS or ARP request.
    
    Signed-off-by: Andreas Karis <ak.karis@gmail.com>
    (cherry picked from commit 91d37a667d041574f58e27b4aebbc0258a627816)
    (cherry picked from commit 1813ea577927fdfe9baa3bd07020f1a551f1d7cc)
    
    Conflicts:
            go-controller/pkg/node/gateway_shared_intf.go
    Due to absence of 2c0ec2337e590e2287c57f80975dadb79a9ad1cf in 4.8

commit 8b2409fd0990005548f168caecb513d4a66351f8
Author: Ori Braunshtein <obraunsh@redhat.com>
Date:   Thu Jul 29 16:27:55 2021 +0300

    Output address resolution requests to LOCAL port
    
    Currently address resolution requests (ARP/Neighbor solicitation) for
    LoadBalancer/External IPs are answered by all of the gateway routers in the cluster.
    By forwarding these requests to the local port, a network load balancer implementation
    like MetalLB is able to be the only one replying to them - thus enabling it
    to be the only one announcing a specific LoadBalancer service IP.
    
    Signed-off-by: Ori Braunshtein <obraunsh@redhat.com>
    (cherry picked from commit 5d546a0498dd0a55b80c05cfbcd60bf761581cc7)
    (cherry picked from commit bb4eeedfd6908de46cc996d51c24451de10f5856)
    
    Conflicts:
        go-controller/pkg/node/gateway_shared_intf.go
    Due to absence of 2c0ec2337e590e2287c57f80975dadb79a9ad1cf in 4.8

- How to verify it

- Description for the changelog

Currently address resolution requests (ARP/Neighbor solicitation) for
LoadBalancer/External IPs are answered by all of the gateway routers in the cluster.
By forwarding these requests to the local port, a network load balancer implementation
like MetalLB is able to be the only one replying to them - thus enabling it
to be the only one announcing a specific LoadBalancer service IP.

Signed-off-by: Ori Braunshtein <obraunsh@redhat.com>
(cherry picked from commit 5d546a0)
(cherry picked from commit bb4eeed)

Conflicts:
    go-controller/pkg/node/gateway_shared_intf.go
Due to absence of 2c0ec23 in 4.8
load-balancers in addition to the node local IP for ExternalIP.
ARP requests or IPv6 NS would receive <node number + 1> replies.

This fix stops ARP requests and IPv6 NS for ExternalIPs from entering
the OVN dataplane. Only the node with the actual local IP will now
answer to the NS or ARP request.

Signed-off-by: Andreas Karis <ak.karis@gmail.com>
(cherry picked from commit 91d37a6)
(cherry picked from commit 1813ea5)

Conflicts:
	go-controller/pkg/node/gateway_shared_intf.go
Due to absence of 2c0ec23 in 4.8
@openshift-ci openshift-ci bot added the bugzilla/severity-high Referenced Bugzilla bug's severity is high for the branch this PR is targeting. label Feb 14, 2022
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Feb 14, 2022

@andreaskaris: This pull request references Bugzilla bug 2054225, which is invalid:

  • expected the bug to target the "4.8.z" release, but it targets "4.9.z" instead
  • expected dependent Bugzilla bug 2014003 to be in one of the following states: VERIFIED, RELEASE_PENDING, CLOSED (ERRATA), CLOSED (CURRENTRELEASE), but it is POST instead
  • expected dependent Bugzilla bug 1987445 to target a release in 4.9.0, 4.9.z, but it targets "4.10.0" instead

Comment /bugzilla refresh to re-evaluate validity if changes to the Bugzilla bug are made, or edit the title of this pull request to link to a different bug.

Details

In response to this:

[release-4.8] Bug 2054225: Fix gateway routers answer ARP/NDP requests for LoadBalancer/ExternalIP services

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@openshift-ci openshift-ci bot added the bugzilla/invalid-bug Indicates that a referenced Bugzilla bug is invalid for the branch this PR is targeting. label Feb 14, 2022
@andreaskaris
Copy link
Contributor Author

Verification instructions for QE:
verification.txt

@andreaskaris
Copy link
Contributor Author

/bugzilla refresh

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Feb 14, 2022

@andreaskaris: This pull request references Bugzilla bug 2054225, which is invalid:

  • expected dependent Bugzilla bug 2014003 to be in one of the following states: VERIFIED, RELEASE_PENDING, CLOSED (ERRATA), CLOSED (CURRENTRELEASE), but it is POST instead

Comment /bugzilla refresh to re-evaluate validity if changes to the Bugzilla bug are made, or edit the title of this pull request to link to a different bug.

Details

In response to this:

/bugzilla refresh

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@andreaskaris
Copy link
Contributor Author

/bugzilla refresh

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Feb 23, 2022

@andreaskaris: This pull request references Bugzilla bug 2054225, which is invalid:

  • expected dependent Bugzilla bug 2014003 to be in one of the following states: VERIFIED, RELEASE_PENDING, CLOSED (ERRATA), CLOSED (CURRENTRELEASE), but it is ON_QA instead

Comment /bugzilla refresh to re-evaluate validity if changes to the Bugzilla bug are made, or edit the title of this pull request to link to a different bug.

Details

In response to this:

/bugzilla refresh

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@andreaskaris
Copy link
Contributor Author

/bugzilla refresh

@openshift-ci openshift-ci bot added bugzilla/valid-bug Indicates that a referenced Bugzilla bug is valid for the branch this PR is targeting. and removed bugzilla/invalid-bug Indicates that a referenced Bugzilla bug is invalid for the branch this PR is targeting. labels Feb 23, 2022
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Feb 23, 2022

@andreaskaris: This pull request references Bugzilla bug 2054225, which is valid. The bug has been moved to the POST state.

6 validation(s) were run on this bug
  • bug is open, matching expected state (open)
  • bug target release (4.8.z) matches configured target release for branch (4.8.z)
  • bug is in the state ASSIGNED, which is one of the valid states (NEW, ASSIGNED, ON_DEV, POST, POST)
  • dependent bug Bugzilla bug 2014003 is in the state VERIFIED, which is one of the valid states (VERIFIED, RELEASE_PENDING, CLOSED (ERRATA), CLOSED (CURRENTRELEASE))
  • dependent Bugzilla bug 2014003 targets the "4.9.z" release, which is one of the valid target releases: 4.9.0, 4.9.z
  • bug has dependents

Requesting review from QA contact:
/cc @anuragthehatter

Details

In response to this:

/bugzilla refresh

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@andreaskaris
Copy link
Contributor Author

/retest

@trozet
Copy link
Contributor

trozet commented Mar 1, 2022

/lgtm
/label backport-risk-assessed

@openshift-ci openshift-ci bot added the backport-risk-assessed Indicates a PR to a release branch has been evaluated and considered safe to accept. label Mar 1, 2022
@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Mar 1, 2022
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Mar 1, 2022

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: andreaskaris, trozet

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Mar 1, 2022
@trozet
Copy link
Contributor

trozet commented Mar 1, 2022

/assign @anuragthehatter

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

3 similar comments
@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@asood-rh
Copy link
Contributor

asood-rh commented Mar 2, 2022

/label cherry-pick-approved

@openshift-ci openshift-ci bot added the cherry-pick-approved Indicates a cherry-pick PR into a release branch has been approved by the release branch manager. label Mar 2, 2022
@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

22 similar comments
@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Mar 3, 2022

@andreaskaris: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/4.8-upgrade-from-stable-4.7-e2e-aws-ovn-upgrade 917d97c link false /test 4.8-upgrade-from-stable-4.7-e2e-aws-ovn-upgrade

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@openshift-bot
Copy link
Contributor

/retest-required

Please review the full test history for this PR and help us cut down flakes.

@openshift-merge-robot openshift-merge-robot merged commit 285e60c into openshift:release-4.8 Mar 3, 2022
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Mar 3, 2022

@andreaskaris: All pull requests linked via external trackers have merged:

Bugzilla bug 2054225 has been moved to the MODIFIED state.

Details

In response to this:

[release-4.8] Bug 2054225: Fix gateway routers answer ARP/NDP requests for LoadBalancer/ExternalIP services

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. backport-risk-assessed Indicates a PR to a release branch has been evaluated and considered safe to accept. bugzilla/severity-high Referenced Bugzilla bug's severity is high for the branch this PR is targeting. bugzilla/valid-bug Indicates that a referenced Bugzilla bug is valid for the branch this PR is targeting. cherry-pick-approved Indicates a cherry-pick PR into a release branch has been approved by the release branch manager. lgtm Indicates that a PR is ready to be merged.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants

Comments