我已经创建了一个Redis群集。
xxx.xxx.xxx.195:9100 xxx.xxx.xxx.196:9100 xxx.xxx.xxx.197:9100
xxx.xxx.xxx.195:9200 xxx.xxx.xxx.196:9200 xxx.xxx.xxx.197:9200
我遇到过,当我同时停止2个Redis实例(同时是xxx.xxx.xxx.196的2个实例)时,CLUSTER将无法恢复,
xxx.xxx.xxx.195:9100 (Master) xxx.xxx.xxx.196:9100 (Master) xxx.xxx.xxx.197:9100 (Slave)
xxx.xxx.xxx.195:9200 (Slave) xxx.xxx.xxx.196:9200 (Master) xxx.xxx.xxx.197:9200 (Slave)
但同时如果我停止了{.1}}和9100 -Master
的.195服务器的2个实例。群集恢复并正常工作
群集配置文件:
9200 - Slave
Redis登录专用从属服务器:
protected-mode no
activerehashing yes
cluster-enabled yes
cluster-config-file /opt/redis/conf/nodes9100.conf
cluster-slave-validity-factor 0
cluster-node-timeout 5000
appendonly yes
答案 0 :(得分:0)
发现问题:
src:https://redis.io/topics/cluster-tutorial
Redis Cluster还在分区期间提供一定程度的可用性,实际上是在某些节点发生故障或无法通信时继续运行的能力。但是,如果发生较大的故障,群集将停止运行(例如,当大多数主人不可用时)。