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

wanfed via mesh gateways in secondary datacenters should use gateways on startup if configured #9342

Closed
rboyer opened this issue Dec 7, 2020 · 2 comments · Fixed by #9528
Labels
theme/federation-usability Anything related to Federation type/bug Feature does not function as expected

Comments

@rboyer
Copy link
Member

rboyer commented Dec 7, 2020

After #7931, startup of a secondary server will always dial the primary datacenter's mesh gateways directly, because the feedback loop gets a positive "safe to use local mesh gateways" signal from the federation state replicator, but in establishLeadership that hasn't started yet.

We could change this so that if there ARE federation states recorded in the state store, we should use those on startup, and only switch back to dialing direct if we get 3 failures in a row (similar to what we do outside of just startup to fix connectivity issues).

Affects 1.8+

@rboyer rboyer added type/bug Feature does not function as expected theme/federation-usability Anything related to Federation labels Dec 7, 2020
@rboyer
Copy link
Member Author

rboyer commented Dec 14, 2020

One thing that will have to be done is to use the existence of replicated FederationState data as a signal to override the serf "fs" feature flag.

@rboyer
Copy link
Member Author

rboyer commented Dec 14, 2020

There may be a similar interaction with the "are acls upgraded" serf feature flag that slows down convergence after full secondary dc restarts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
theme/federation-usability Anything related to Federation type/bug Feature does not function as expected
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant