-
Notifications
You must be signed in to change notification settings - Fork 10
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
A bit lost in the documentation #4
Comments
Hello, Redis by design allows only one master, AFAIK you cannot have multiple masters, only multiple slaves of one single master. The high level algorithm works like this:
This much like how the new Redis Sentinel works (http://redis.io/topics/sentinel). We have autonomously implemented an automatic failover mechanism, but in our case we rely on an external tool, namely Apache ZooKeeper, for the management of distributed configurations and locks. ZooKeeper is very reliable and tested. Anyway, as mentioned you have to configure the master-slave replica set by yourself before you start the monitor, we wanted to avoid to create any dependence between Redis and our tool, so that it's very easy to add our monitoring infrastructure to any existing Redis configuration, even running old Redis versions. Our tool will discover your configuration by itself, but the configuration must be consistent, of course. On the other hand, you have to explicitly pass the list of ZooKeeper and Redis nodes to both our client and monitor, but this is how any high-availabilty configuration would work (except, maybe, for some more exotic auto-discovering distributed systems, which could use multicast and auto-discovery also of configurations, e.g Jini). Hope this clarifies a bit more your doubts. Regards, |
Thank you very much for the very detailed explanation. Is it safe to say that this method was created before Redis came up with the Sentinel feature? Because these two things seem to do the (almost) exact same thing. |
Yes, exactly. |
When you specify the command line interface of the monitor, which redis server is the master and which are the slaves? Does this setup only allow one Master?
What if I have 4 masters, each having 2 slaves? How would I setup the monitor options as well as the RedisFailover python initialization?
Is 6379 the master and 6389 & 6399 the slaves?
The text was updated successfully, but these errors were encountered: