Prevent replicating certain master to guarantee better availability

30 views
Skip to first unread message

edvard....@leonidasoy.fi

unread,
Sep 27, 2016, 5:18:10 AM9/27/16
to Redis DB
Cheers. we've been trying to find a solution for this scenario, where we want to prevent any replicas mirroring a master that lies in the same server. Same server meaning
even "same virtual server", as this particular setup consists of few very powerful / robust PCs.

To be more precise, assume we have three servers A, B and C with masters and replicas running in each. rX means (originally configured as) replica in X, rX->Y means replica in X following master at Y. We want to start with initial configuration

rA->B
rB->C
rC->A

Now, if master in B goes down, rA is promoted to master. This is what we want, no problem. But assuming the highly unlikely (though still possible) scenario that both B and C go down, and rA and rB will be promoted to master status. This is ok too. The problem is that when say, B wakes up, it is assigned to master with least number of replicas. This could be either rA or rB, and we want to prevent it being rA, because it is in the same system.

So, logically we would like to be able to say "you may replicate any node but this". 

It is also quite likely there is much better way to achieve similar reliability, but we don't just see it yet. Any ideas?
Reply all
Reply to author
Forward
0 new messages