Thanks,
What y'all say makes a lot of sense. I've been typing this response
email with more questions but as I type the questions, it clicks. It
makes a lot of sense for the leader to be the only node that does the
DNS queries.
I think, in any way, the DNS spec caters for situations where you don't
want DNS resolvers or non-authoritative servers caching a record by
specifying the TTL of the record. I hope I can set the TTL for the SRV
record to something extremely low to force the resolver to always query
for the record from the authoritative DNS server.
What I'm still not sure about is whether people still use SRV records.
Only reference of services that use it I've found online is SIP :).
Thanks again,
Jason
On Sun, 2020-11-01 at 11:19 -0800, '
dig...@googlemail.com' via raft-dev
wrote:
> I was planning on doing exactly what you're suggesting for my
> service: have the leader poll DNS records periodically to figure out
> which nodes should be part of the cluster, and propose membership
> changes accordingly. A split can never happen, since membership
> changes require a majority in order to commit.
>
> As long as the cluster is only bootstrapped once, it should not be
> possible to go awry later on.
>
>
> On Sunday, 1 November 2020 at 18:33:35 UTC
archie...@gmail.com wrote:
> > Raft itself has no provision for automated configuration changes.
> > IOW, from Raft's perspective, all config changes are performed
> > "manually" by some superior being.
> >
> > Of course that superior being could be a human, or it could be some
> > other external computer algorithm.
> >
> > So your question lies entirely within the domain of whatever
> > machinery that you construct around Raft.
> >
> > That means, the good news is you can do whatever you want... as
> > long as you "follow the rules".. e.g.,
> > * Don't consider a configuration change complete until it's
> > committed in Raft
> > * Only process one config change at a time
> > * Prevent any Raft node from receiving a Raft message and
> > mistakenly assigning it to the wrong peer
> > * Prevent a peer that had its state suddenly erased from
> > participating in further communication with former cluster
> > * Etc.
> --
> You received this message because you are subscribed to the Google
> Groups "raft-dev" group.
> To unsubscribe from this group and stop receiving emails from it,
> send an email to
raft-dev+u...@googlegroups.com.
> To view this discussion on the web visit
>
https://groups.google.com/d/msgid/raft-dev/e18738cc-6880-4f5c-8bb1-42b5c1ec2089n%40googlegroups.com
> .