We are looking for a HA redis cluster deployment configuration without data replication.
More precisely for each master in the cluster we want replicas act as "standby" instances that when the associated master fails will elect one to become the new master, but with an empty state for all the slots allocated to the master-replicas group. This will allow for a HA deployment without dealing with potentially replication consistency issues.
Is there a configuration that will allow for the above semantics
Comment From: yossigo
@davidnus I am not sure I fully understand your intention. Do you mean you're looking for high availability, but don't care about losing the data when a master fails as long as you have a new instance to talk to?
Comment From: davidnus
@yossigo, correct. we don't care about loss of data on master nodes but need the new instance be available. The data we store are of transient nature and can be cheaply 'rebuilt' when the 'standby' instance takes over the slots. Replication for our use is both more expensive and harder to guarantee correctness.
Comment From: yossigo
@davidnus thanks for clarifying this. It's not currently possible with Redis Cluster. You could do something like that with standalone Redis instances if you orchestrate it yourself of course, as a workaround.
Comment From: madolson
Hm, I couldn't dig up the conversation I had with salvatore about this, but we were at one point talking about optimizing redis cluster for a specific customer we have. It was a pure caching use case that had data that was only valid for ~5 seconds. They asked for three things relevant to open source: 1. On partition splits, keep serving reads. (This was implemented with a flag that was in Redis 6) 2. Instant slot transfers where data from the old node was just async purged and the new node immediately starts accepting writes. (Salvatore said he would think about this, today we throw an error) 3. Have floating standby replicas, that would start votes to promote themselves when a master dies. (Salvatore was for this)
So, I like this proposal.