In cluster mode for failover to happen in case of partitioning the majority of masters should stay online. Can it be changed to majority of nodes? What would be the downsides of allowing both masters and slaves to vote and reach consensus, so majority of all nodes will be enough for failover?
The reason for this question is the fact requirement of only majority of masters to stay online makes cluster less tolerant to some outages. For instance if you have 3 machines each running 2 redis nodes with intention to have 1 master and 1 slave on each of them, it is totally possible that at some moment 2 masters would be on the same machine (for instance after restart of one of the instances). In this case this machine is a single point of failure. To avoid it you need at least 5 machines with 2 nodes on each. This is kind of naive example but it can easily extrapolated to big cluster deployments in several availability zones. So to tolerate a zone outage we at least need to run cluster in 5 zones (assuming each master has only one replica and each zone has the same number of nodes).