是否可以创建一个具有2个节点的redis集群,一个节点充当主节点,另一个节点充当从节点。
如果我尝试使用两个节点(一个作为主节点,另一个作为从节点),则会得到以下错误:
>>> Creating cluster
Connecting to node 127.0.0.1:6379: OK
Connecting to node 192.168.40.159:6379: OK
*** ERROR: Invalid configuration for cluster creation.
*** Redis Cluster requires at least 3 master nodes.
*** This is not possible with 2 nodes and 1 replicas per node.
*** At least 6 nodes are required.发布于 2014-12-10 09:45:54
是。至少3个主节点的需求是由ruby脚本设定的,但在集群中并不是一个硬限制。
您需要做的第一件事是发送一个包含16385个参数的cluster命令,如
cluster addslots 0 1 2 3 ... 16384到集群。由于有太多的参数无法在redis-cli中手动输入它们,所以我建议编写一个程序来实现这一点,在这个程序中,您可以打开连接到redis节点的TCP套接字,将前面的命令转换为redis命令字符串并将其写入套接字。
在发送命令的几秒钟后,单个节点集群将处于联机状态。然后用redis-cli连接到另一个节点,输入以下命令使其成为从节点
cluster meet MASTER_HOST MASTER_PORT
cluster replicate MASTER_ID其中MASTER_HOST:MASTER_PORT是前一个节点的地址,MASTER_ID是该节点的ID,您可以通过cluster nodes命令检索它。
为了方便起见,我已经为这些类型的redis集群管理编写了python工具,您可以用
pip install redis-trib发布于 2014-02-26 09:54:46
Redis-群集不适合您的用例。
对于用例,您需要配置一台服务器(主服务器),然后配置第二台服务器,并添加"slaveof“指令--将其指向主服务器。如何处理故障转移取决于您的场景,但我建议使用redis-sentinel。
有关更详细的演练,请参见Redis复制页
发布于 2015-06-27 22:49:10
不,不可能用一个主节点创建一个redis集群,因为建议这里设置一个redis集群至少需要3个主节点。
https://stackoverflow.com/questions/21952813
复制相似问题