手把手教你搭建Redis集群第三篇(分片集群模式)

1、分片集群

有了主从复制,每个数据库当中也需要保存每个集群中的所有数据,容易形成木桶效应。使Jedis实现了分片集群,是由客户端控制哪些key数据保存到哪个数据库中,如果在水平扩容时就必须手动进行数据迁移,而且需要将整个集群停止服务,这样做非常不好的。

Redis3.0版本的一大特性就是集群(Cluster),接下来我们一起学习集群。
(1)所有的redis节点彼此互联(PING-PONG机制),内部使用二进制协议优化传输速度和带宽.
(2)节点的fail是通过集群中超过半数的节点检测失效时才生效.
(3)客户端与redis节点直连,不需要中间proxy层.客户端不需要连接集群所有节点,连接集群中任何一个可用节点即可
(4)redis-cluster把所有的物理节点映射到[0-16383]slot(插槽)上,cluster 负责维护node<->slot<->value

2、搭建redis分片集群

2.1 先杀掉之前搭建的哨兵模式集群
在这里插入图片描述
2.2 分别修改7001、7002、7003当中的redis.conf文件 将cluster-enabled yes 这一行放开
在这里插入图片描述
2.3 安装ruby环境
因为redis-trib.rb是有ruby语言编写的所以需要安装ruby环境

yum -y install zlib ruby rubygems

在这里插入图片描述

gem install redis

在这里插入图片描述
发现CentOS7 库中的红宝石的版本支持到2.0.0,可ruby安装Redis(我用的redis版本是4.0.6)的需要最低是2.3.0,下面我们将版本替换成2.3.0

yum -y install curl

在这里插入图片描述
安装RVM

gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
curl -L get.rvm.io | bash -s stable

然后重新编译

source /usr/local/rvm/scripts/rvm

安装2.3.3版本

rvm install 2.3.3

在这里插入图片描述
将2.3.0版本比设置为默认的版本

rvm use 2.3.3 --default

在这里插入图片描述
卸载一个已知版本2.0.0

rvm remove 2.0.0

重新gem install redis

gem install redis

在这里插入图片描述

接下来创建集群,首先进入redis的安装包路径下:
在这里插入图片描述
启动三台redis
在这里插入图片描述
然后让你确认集群的主从信息
在这里插入图片描述
点击确认之后可以看到集群已经搭建成功
在这里插入图片描述
测试
在这里插入图片描述
什么情况??(error) MOVED 7638 127.0.0.1:6380
因为abc的hash槽信息是在7002上,现在使用redis-cli连接的7001,无法完成set操作,需要客户端跟踪重定向。

在这里插入图片描述
查看集群节点信息
在这里插入图片描述

今天写的很粗糙,后续会修改一下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值