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
ceph: Enable mon failover for the arbiter in stretch mode #8984
Conversation
c.ClusterInfo = clienttest.CreateTestClusterInfo(1) | ||
monName := "arb" | ||
|
||
// don't skip failover for non-stretch |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's use t.Run()
like in a few other places to properly name the tests instead of the comments.
} | ||
return true | ||
} | ||
|
||
func (c *Cluster) shouldSkipFailover(name string) bool { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we return errors instead here so then the caller can print it. With that, we know why we are skipping the failover.
12d69ba
to
cb34e2c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In case you have another rebase to go through and care about addressing the small suggestion otherwise LGTM.
} | ||
|
||
// Ceph does not support updating the arbiter mon in older versions | ||
return errors.Errorf("refusing to failover arbiter mon %q on a stretched cluster until upgrading to ceph version v16.2.7", name) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
use arbiterFailoverSupportedCephVersion.String()
?
Prior to ceph v16.2.7 the failover of the arbiter mon was not supported. Now the new tiebreaker mon can be set during the failover event and provide more dynamic stability to the mon quorum if another node is available in the arbiter zone. Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
cb34e2c
to
12689bd
Compare
ceph: Enable mon failover for the arbiter in stretch mode (backport #8984)
Description of your changes:
Prior to ceph v16.2.7 the failover of the arbiter mon was not supported. Now the new tiebreaker mon can be set during the failover event and provide more dynamic stability to the mon quorum as long as another node is available in the arbiter
zone.
Checklist:
make codegen
) has been run to update object specifications, if necessary.