同一台虚拟机中开启6个redis实例,模拟分片集群
IP | PORT | 角色 |
192.168.19.128 | 7001 | master |
192.168.19.128 | 7002 | master |
192.168.19.128 | 7003 | master |
192.168.19.128 | 8001 | slave |
192.168.19.128 | 8002 | slave |
192.168.19.128 | 8003 | slave |
创建实例目录
- # 进入/tmp目录
- cd /tmp
- # 创建目录
- mkdir 7001 7002 7003 8001 8002 8003
systemctl start docker
创建6个容器redis实例
- docker run -d --name redis-7001 --net host --privileged=true -v /tmp/7001:/data redis:latest --cluster-enabled yes --appendonly yes --port 7001
-
- docker run -d --name redis-7002 --net host --privileged=true -v /tmp/7002:/data redis:latest --cluster-enabled yes --appendonly yes --port 7002
-
- docker run -d --name redis-7003 --net host --privileged=true -v /tmp/7003:/data redis:latest --cluster-enabled yes --appendonly yes --port 7003
-
- docker run -d --name redis-8001 --net host --privileged=true -v /tmp/8001:/data redis:latest --cluster-enabled yes --appendonly yes --port 8001
-
- docker run -d --name redis-8002 --net host --privileged=true -v /tmp/8002:/data redis:latest --cluster-enabled yes --appendonly yes --port 8002
-
- docker run -d --name redis-8003 --net host --privileged=true -v /tmp/8003:/data redis:latest --cluster-enabled yes --appendonly yes --port 8003
进入容器,随便一个容器
docker exec -it redis-7001 bash
构建主从关系,执行一次
redis-cli --cluster create --cluster-replicas 1 192.168.19.128:7001 192.168.19.128:7002 192.168.19.128:7003 192.168.19.128:8001 192.168.19.128:8002 192.168.19.128:8003
执行过程提示输入yes:Can I set the above configuration? (type 'yes' to accept): yes
通过命令可以查看集群状态
redis-cli -p 7001 cluster nodes
至此集群创建成功
Redis添加和删除节点:Docker下Redis集群伸缩_呆萌很的博客-CSDN博客