具有自定义集群配置的Redis集群

时间:2019-12-04 09:48:16

标签: redis redis-cluster

我想创建一个Redis集群,其中只有特定的Redis主机为主和从属。我还要从我自己分配哪个主机应该是哪个主机的副本。
当前,cluster-create command在给定任一Redis主服务器中的hostname:port参数列表时创建集群。但这不能让我们提供所需的自定义配置。它向我们建议了将要创建的内容,我们可以批准或取消(而不是编辑)。

有没有简单的方法可以实现我的目标?

1 个答案:

答案 0 :(得分:0)

我自己想出了一个简单的好方法。

假设我们要创建集群为:

A1-S1 
A2-S2
A3-S3

其中A是主节点,S是它们相应的从节点,这形成一个集群。这些步骤将包括。

  • 在启动redis实例之前将其写入nodes.conf,以在connected字符串之后附加所需的插槽哈希。确保主机和从机具有相同的插槽哈希。仅对包含myself的行执行此操作。这看起来像这样:
Earlier:
a252d572140fd2b5410d4a63d051f1e6613cfd1f :6379@16379 myself,slave 0 0 0 connected

Final:
a252d572140fd2b5410d4a63d051f1e6613cfd1f :6379@16379 myself,slave 0 0 0 connected 0-5500

此后,启动redis实例。

  • 现在,每对主服务器和从服务器都一个接一个地聚在一起。对A1,A2和A3各自的从站分别执行3 cluster meet。这连接了主机和从机。
  • 如果主机在碰面操作后偶然成为从机,请从从机执行cluster failover使其成为主机。
  • 最后,对A1-A2和A2-A3再运行2个cluster meet

执行此操作将获得所需配置的集群。