Context
I got redis cluster with 1 master, 3 replicas and 4 sentinels, I set the quorum 2.
+----+
| M1 |
| S1 |
+----+
|
+----+ | +----+
| R2 |----+----| R3 |
| S2 | | | S3 |
+----+ | +----+
|
|
+----+
| R4 |
| S4 |
+----+
After one node down (M1 and S1 are both odown), sentinels start a failover, and there should be 1 master, 2 replicas and 3 sentinels.
+----+
| M2 |
| S2 |
+----+
|
+----+ | +----+
| R3 |----+----| R4 |
| S3 | | S4 |
+----+ +----+
But if second node down(M2 and S2 are both odown), failover does not start. I found out that the number of sentinel is still 4, current sentinel is 2 not meet the majority.
As the redis doc, the 2nd failed.
- The quorum is the number of Sentinels that need to agree about the fact the master is not reachable, in order to really mark the master as failing, and eventually start a failover procedure if possible.
- However the quorum is only used to detect the failure. In order to actually perform a failover, one of the Sentinels need to be elected leader for the failover and be authorized to proceed. This only happens with the vote of the majority of the Sentinel processes.
Question
After one node down, the S1 is odwon, how to automaticlly refresh the number of sentinel, like change to 3, so that start a failover after node down twice.