docker搭建redis集群

redis 集群原理

redis集群原理

1.redis的每个节点都可以相互访问

2.每个节点都会有一个slot(插槽),这个插槽记录的是一个槽范围。

redis的key会经过crc16进行计算,得出来的数值对槽的总数16383取余得到槽值,根据这个槽值找到对应的节点。

redis如何判断集群可用

1.当redis没有开启兼容部分master失效,如集群半数以上节点判断某个节点ping不通且这个节点也没有从节点则整个集群failed

2.当开始部分失效,如果集群中半数以上的master节点挂掉则集群failed

docker部署redis

本地环境,使用的windows(穷,没有mac)

 

启动docker容器

docker run -dp 6380:6379 --name redis-master1 -v E:/docker:/dataredis --cluster-enabled yes --cluster-config-file nodes-node-1.conf

docker run -dp 6381:6379 --name redis-master2 -v E:/docker:/dataredis --cluster-enabled yes --cluster-config-file nodes-node-2.conf


docker run -dp 6382:6379 --name redis-master3 -v E:/docker:/dataredis --cluster-enabled yes --cluster-config-file nodes-node-3.conf

配置集群

1.首先我们需要知道各个docker容器的IP地址是多少,以redis-master1做演示,其他同理。

docker inspect redis-master1

我的三个容器IP地址

redis-master1 172.17.0.2

redis-master2 172.17.0.3

redis-master3 172.17.0.4

2.随意进入一台机器配置集群

docker exec -it redis-master1 /bin/bash



redis-cli --cluster create 172.17.0.2 6379 172.17.0.3 6379 172.17.0.4 6379

3.测试数据

docker exec -it redis-master1 redis-cli -c

set nice lyp



docker exec -it redis-master2 redis-cli -c
get nice

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值