docker-redis集群(3主3从配置案例)

image.png

新建6个docker容器redis实例

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
image.png

进入容器

docker exec -it redis-node-1 /bin/bash

//注意,进入docker容器后才能执行一下命令,且注意自己的真实IP地址

redis-cli --cluster create 192.168.140.128:6381 192.168.140.128:6382 192.168.140.128:6383 192.168.140.128:6384 192.168.140.128:6385 192.168.140.128:6386 --cluster-replicas 1

--cluster-replicas 1 表示为每个master创建一个slave节点

image.png

进入6381客户端

redic-cli -p 6381

查看节点状态

cluster info
cluster nodes

M:6381
S:6385

M:6382
S:6386

M:6383
S:6384

主从容错切换迁移案例

  • 数据读写存储
    启动6机构成的集群并通过exec进入
    对6381新增两个key


    image.png

    报错,怎么办? 防止路由失效加参数-c并新增两个key

redis-cli -p 6381 -c
image.png

检查集群信息

redis-cli --cluster check 192.168.140.128:6381
  • 容错切换迁移
    测试:6381 停机,6385能不能上位


    image.png

你可能感兴趣的:(docker-redis集群(3主3从配置案例))