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

BUG 2282254: mon: fix bind addr when IPv6 and msgr2 are enabled #656

Merged
merged 1 commit into from
May 23, 2024

Conversation

BlaineEXE
Copy link

When IPv6-only network mode is enabled and when mons are configured to listen only on msgrV2 port, Rook has to add the port to the mon --public-bind-addr in order to force mons to stop listening on the msgrV1 port. This can cause problems for IPv6 clusters where adding ':' to the end of an IP addr looks like a valid IPv6 address.

In IPv6 mode, Rook needs to set this to '[]:' with the brackets to be a non-ambiguous IPv6 address.

In IPv4 mode, Rook needs to keep its existing behavior. IPv4 mode should also continue to be the defualt assumption if the network config isn't specified.

If 'dualStack: true' is specified, Rook is informed that the environment is dual stack, but Rook doesn't know which IP family to expect from the pod IP. In this scenario, it is safest for Rook not to apply the port, since assuming either IPv4 or IPv6 format could be incorrect. In this scenario, mons may still listen on msgrV1 ports, but this is preferable to an environment where mons perpetually crash.

Signed-off-by: Blaine Gardner [email protected]
(cherry picked from commit 573a47e) (cherry picked from commit ccafc2b)

Checklist:

  • Commit Message Formatting: Commit titles and messages follow guidelines in the developer guide.
  • Reviewed the developer guide on Submitting a Pull Request
  • Pending release notes updated with breaking and/or notable changes for the next minor release.
  • Documentation has been updated, if necessary.
  • Unit tests have been added, if necessary.
  • Integration tests have been added, if necessary.

When IPv6-only network mode is enabled and when mons are configured to
listen only on msgrV2 port, Rook has to add the port to the mon
--public-bind-addr in order to force mons to stop listening on the
msgrV1 port. This can cause problems for IPv6 clusters where adding
':<port>' to the end of an IP addr looks like a valid IPv6 address.

In IPv6 mode, Rook needs to set this to '[<ip>]:<port>' with the
brackets to be a non-ambiguous IPv6 address.

In IPv4 mode, Rook needs to keep its existing behavior. IPv4 mode should
also continue to be the defualt assumption if the network config isn't
specified.

If 'dualStack: true' is specified, Rook is informed that the environment
is dual stack, but Rook doesn't know which IP family to expect from the
pod IP. In this scenario, it is safest for Rook not to apply the port,
since assuming either IPv4 or IPv6 format could be incorrect. In this
scenario, mons may still listen on msgrV1 ports, but this is preferable
to an environment where mons perpetually crash.

Signed-off-by: Blaine Gardner <[email protected]>
(cherry picked from commit 573a47e)
(cherry picked from commit ccafc2b)
@BlaineEXE BlaineEXE requested a review from travisn May 23, 2024 17:21
Copy link

openshift-ci bot commented May 23, 2024

@BlaineEXE: No Bugzilla bug is referenced in the title of this pull request.
To reference a bug, add 'Bug XXX:' to the title of this pull request and request another bug refresh with /bugzilla refresh.

In response to this:

mon: fix bind addr when IPv6 and msgr2 are enabled

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-sigs/prow repository.

@BlaineEXE BlaineEXE changed the title mon: fix bind addr when IPv6 and msgr2 are enabled BUG 2282254: mon: fix bind addr when IPv6 and msgr2 are enabled May 23, 2024
@openshift-ci openshift-ci bot added bugzilla/severity-urgent Referenced Bugzilla bug's severity is urgent 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. labels May 23, 2024
Copy link

openshift-ci bot commented May 23, 2024

@BlaineEXE: This pull request references Bugzilla bug 2282254, which is valid. The bug has been updated to refer to the pull request using the external bug tracker.

3 validation(s) were run on this bug
  • bug is open, matching expected state (open)
  • bug target release (ODF 4.16.0) matches configured target release for branch (ODF 4.16.0)
  • bug is in the state POST, which is one of the valid states (NEW, ASSIGNED, ON_DEV, POST, POST)

Requesting review from QA contact:
/cc @nehaberry

In response to this:

BUG 2282254: mon: fix bind addr when IPv6 and msgr2 are enabled

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-sigs/prow repository.

Copy link

openshift-ci bot commented May 23, 2024

@openshift-ci[bot]: GitHub didn't allow me to request PR reviews from the following users: nehaberry.

Note that only red-hat-storage members and repo collaborators can review this PR, and authors cannot review their own PRs.

In response to this:

@BlaineEXE: This pull request references Bugzilla bug 2282254, which is valid. The bug has been updated to refer to the pull request using the external bug tracker.

3 validation(s) were run on this bug
  • bug is open, matching expected state (open)
  • bug target release (ODF 4.16.0) matches configured target release for branch (ODF 4.16.0)
  • bug is in the state POST, which is one of the valid states (NEW, ASSIGNED, ON_DEV, POST, POST)

Requesting review from QA contact:
/cc @nehaberry

In response to this:

BUG 2282254: mon: fix bind addr when IPv6 and msgr2 are enabled

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-sigs/prow repository.

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-sigs/prow repository.

@travisn
Copy link

travisn commented May 23, 2024

/approve
/lgtm

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label May 23, 2024
@BlaineEXE BlaineEXE added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label May 23, 2024
Copy link

openshift-ci bot commented May 23, 2024

[APPROVALNOTIFIER] This PR is APPROVED

Approval requirements bypassed by manually added approval.

This pull-request has been approved by: BlaineEXE, travisn

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

The pull request process is described here

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

@BlaineEXE BlaineEXE merged commit a2396a5 into red-hat-storage:release-4.16 May 23, 2024
47 of 49 checks passed
@BlaineEXE BlaineEXE deleted the bp-ipv6-fix-4.16 branch May 23, 2024 18:15
Copy link

openshift-ci bot commented May 23, 2024

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

Bugzilla bug 2282254 has been moved to the MODIFIED state.

In response to this:

BUG 2282254: mon: fix bind addr when IPv6 and msgr2 are enabled

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-sigs/prow 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. bugzilla/severity-urgent Referenced Bugzilla bug's severity is urgent 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. lgtm Indicates that a PR is ready to be merged.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants