redis集群配置——3主3容
新建六个docker容器实例
--cluster-enabled yes #开启redis集群
--net host #使用宿主机的ip和端口 默认
--appendonly yes #开启持久化
docker run -d --name redis-node-1 --net host --privileged=true -v /data/redis/share/redis-node-1:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6381
docker run -d --name redis-node-2 --net host --privileged=true -v /data/redis/share/redis-node-2:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6382
docker run -d --name redis-node-3 --net host --privileged=true -v /data/redis/share/redis-node-3:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6383
docker run -d --name redis-node-4 --net host --privileged=true -v /data/redis/share/redis-node-4:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6384
docker run -d --name redis-node-5 --net host --privileged=true -v /data/redis/share/redis-node-5:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6385
docker run -d --name redis-node-6 --net host --privileged=true -v /data/redis/share/redis-node-6:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6386
构建集群关系
进入容器redis-node-1为6台机器构建集群关系
docker exec -it redis-node-1 bash
构建集群关系
--cluster create #构建集群
--cluster-replicas 1 #为每一个master创建一个salve节点
redis-cli --cluster create 192.168.2.128:6381 192.168.2.128:6382 192.168.2.128:6383 192.168.2.128:6384 192.168.2.128:6385 192.168.2.128:6386 --cluster-replicas 1
查看集群状态
进入6381作为切入点,查看集群状态
redis-cli -p 6381
cluster info
cluster nodes
数据读写储存
防止路由失效
进入节点时,加参数-c 并新增两个key
redis-cli -p 6381 -c
#使用集群环境
查看集群信息
redis-cli --cluster check IP:端口
容错切换迁移
6381宕机,6385从机成了新的master
当6381重启后,6385还是master,不会抢占回去,如果要恢复原先的主从,先启动6381,再停止6385,最后启动6385