文章目录
- 一、docker创建6个redis容器
- 创建6个redis容器
- 回顾各个属性含义
- 二、划分主从,3主3从
- 划分主从
- 查看状态
- 查看节点信息
基础理论在这里有详细描述:
docker学习(九、分布式存储亿级数据知识)
后续redis集群操作:
docker学习(十一、Redis集群存储数据方式)
一、docker创建6个redis容器
创建6个redis容器
docker run -d --name redis-node-1 --net host --privileged=true -v /data/redis/share-node-1:/data redis --cluster-enabled yes --appendonly yes --port 6381
docker run -d --name redis-node-2 --net host --privileged=true -v /data/redis/share-node-2:/data redis --cluster-enabled yes --appendonly yes --port 6382
docker run -d --name redis-node-3 --net host --privileged=true -v /data/redis/share-node-3:/data redis --cluster-enabled yes --appendonly yes --port 6383
docker run -d --name redis-node-4 --net host --privileged=true -v /data/redis/share-node-4:/data redis --cluster-enabled yes --appendonly yes --port 6384
docker run -d --name redis-node-5 --net host --privileged=true -v /data/redis/share-node-5:/data redis --cluster-enabled yes --appendonly yes --port 6385
docker run -d --name redis-node-6 --net host --privileged=true -v /data/redis/share-node-6:/data redis --cluster-enabled yes --appendonly yes --port 6386
回顾各个属性含义
--name redis-node-1 容器名字为redis-node-1
--net host 使用宿主机的IP和端口号,默认
--priviged=true 获取宿主机root用户全新啊
-v /data/redis/share/redis-node-6:/data 容器卷,宿主机地址:docker内部地址
redis redis镜像,如果版本号不是latest,需要加上,例如redis:6.0.8
--cluster-enabled yes 开启redis集群
--appendonly yes 开启持久化
--port 6381 redis端口号
二、划分主从,3主3从
划分主从
# 进入docker容器
docker exec -it redis-node-1 /bin/bash
# 进行划分主从,注意命令是自己的真实IP地址,可以宿主机ifconfig查看
redis-cli --cluster create 172.27.64.169:6381 172.27.64.169:6382 172.27.64.169:6383 172.27.64.169:6384 172.27.64.169:6385 172.27.64.169:6386 --cluster-replicas 1
–cluster-replicas 1 表示为每一个master创建1个slave节点,6个节点,也就是3个master3个slave
可以看到每个节点存储的hash槽与这个匹配上了,redis一共16384个槽。
接下来输入yes,可以看到三个Master,三个Slave
查看状态
在容器中执行命令查看状态
# 进入redis
redis-cli -p 6381
# 查看集群状态
cluster info
查看节点信息
# 查看集群节点信息
cluster nodes
1、2、3是master,4、5、6是slave。而他们的对应关系每次是随机分配的,可以看到我的主从关系是:
master1 – > slave6
master2 – > slave4
master3 – > slave5
到这里集群的简单搭建就完成了~
到这里集群的简单搭建就完成了~
到这里集群的简单搭建就完成了~