RRM
RRM

Reputation: 2669

Redis cluster with one master and N replica/slave

Is it possible to create a Redis cluster with only 1 master and N slaves/replicas?

I tried it and it failed:

redis-cli --cluster create 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 --cluster-replicas 2

*** ERROR: Invalid configuration for cluster creation.
*** Redis Cluster requires at least 3 master nodes.
*** This is not possible with 3 nodes and 2 replicas per node.
*** At least 9 nodes are required.

Is there a way to avoid this restriction of minimum 3 masters?

Upvotes: 1

Views: 4232

Answers (1)

Tasos Bitsios
Tasos Bitsios

Reputation: 2789

Redis Cluster doesn't support what you are asking for, but there is another H/A Redis mode, "Redis Sentinel":

https://redis.io/docs/manual/sentinel/


This article is worth reading as it illustrates some pros and cons of the two H/A modes:

Redis Sentinel Pros:

  • With three nodes, you can build up a fully functional Sentinel deployment. (Image 2)

  • Simplicity - it’s usually simple to maintain and configure.

  • Highly available, you can build a Redis Sentinel deployment that can survive certain failures without any need for human intervention.

  • Work as long as a single master instance is available; it can survive the failure of all slave instances.

  • Multiple slave nodes can replicate data from a master node.

Redis Sentinel Cons:

  • Not scalable; writes must go to the master, cannot solve the problem of read-write separation.

  • Slaves may serve reads, but because of asynchronous replication, outdated reads may result.

  • It doesn’t shard data, so master and slave utilization will be imbalanced.

  • The slave node is a waste of resources because it does not serve as a backup node.

  • Redis-Sentinel must be supported by the client. The client holds half of the magic.

Upvotes: 1

Related Questions