docker redis集群(多机,一主二从,由一主一从升级的)

在docker redis集群(一主一从) https://www.cnblogs.com/leihongnu/p/16434040.html  的基础上

分别在3台虚拟机上添加redis7、redis8、redis9

环境 

ip        容器名

192.168.59.102:redis1、redis4、redis7

192.168.59.103:redis2、redis5、redis8

192.168.59.104:redis3、redis6、redis9

 

192.168.59.102

注意:密码  --requirepass 和 --masterauth必须一样

# mkdir -p /home/redis/node7/data

#docker create --name redis7 --network=host -v /home/redis/node7/data:/data redis --bind 192.168.59.102 --cluster-enabled yes --cluster-config-file redis-node7.conf --port 6007

192.168.59.103

# mkdir -p /home/redis/node8/data

#docker create --name redis8 --network=host -v /home/redis/node8/data:/data redis --bind 192.168.59.102 --cluster-enabled yes --cluster-config-file redis-node8.conf --port 6008

192.168.59.104

# mkdir -p /home/redis/node9/data

docker create --name redis9 --network=host -v /home/redis/node9/data:/data redis --bind 192.168.59.104 --cluster-enabled yes --cluster-config-file redis-node9.conf --port 6009

 

容器的规划,如下图

 

 

   

进入任意一个容器

注意:redis-cli --cluster add-node 从节点:端口 主节点:端口 --cluster-slave。添加从节点前,查看当前节点状态:CLUSTER nodes,确定主节点

将redis7加入redis2为从节点

redis-cli --cluster add-node 192.168.59.102:6007 192.168.59.103:6379 --cluster-slave

将redis8加入redis3为从节点
redis-cli --cluster add-node 192.168.59.103:6008 192.168.59.104:6379 --cluster-slave

将redis9加入redis1为从节点
redis-cli --cluster add-node 192.168.59.104:6009 192.168.59.102:6379 --cluster-slave

  

验证:

关闭192.168.59.102:redis1、redis4、redis7 与 192.168.59.103:redis2、redis5、redis8,即模拟服务器挂掉2台

 

 集群正常,因为,主实例挂掉,从实例会升级成为新的主实例,剩下的192.168.59.104集群节点中都有一个主实例在运行

 

 

结果:一主二从分别在3台服务器的情况,挂掉2台服务器,集群依旧正常运行

posted @ 2022-07-04 16:32  leihongnu  阅读(208)  评论(0编辑  收藏  举报