Redis6.0搭建集群Redis-cluster的方法


Posted in Redis onMay 08, 2021

此处以三台服务器部署为例,IP地址分别为192.168.124.23,192.168.124.24,192.168.124.25 使用普通用户ubuntu登录
总共三个主节点和三个从节点。每台服务器分配槽位不同的一主一从

从官网https://redis.io/download下载Redis6.0

Stable版安装包到/usr/local/redis-6.0.x.tar.gz(文件位置可自定义)

将安装包解压tar -zxvf redis-6.0.x.tar.gz

进入redis文件夹(cd /usr/localredis-6.0.x)并编译make(make命令若出错,请尝试升级gcc版本)

验证编译结果是否成功make test(报错CentOS请执行yum install tcl再重试)

创建用于存放集群的文件夹(可自定义文件夹位置和名称,这里以/usr/local/redis-cluster为例)

mkdir /usr/local/redis-cluster
cd /usr/local/redis-cluster

每个服务器复制两份redis至 /usr/local/redis-cluster 目录下并分别改名为redis7000~7005,命令例:(若用户不为root,需使用chown命令修改文件夹属主)

#复制命令例:
cp -r redis-6.0.x  /usr/local/redis-cluster/redis7000
#这里只是验证您是否成功操作到此,并更改权限

#查看文件目录确认是否已成功复制进来
ubuntu@192.168.124.23: /usr/local/redis-cluster$ ls
redis7000  redis7001
#此处的ubuntu改成你的用户名
ubuntu@192.168.124.23: /usr/local/redis-cluster$ sudo chown -R ubuntu:root /usr/local/redis-cluster
#-------------------------------------------------
ubuntu@192.168.124.24:/usr/local/redis-cluster$ ls
redis7002  redis7003
ubuntu@192.168.124.24:/usr/local/redis-cluster$ sudo chown -R ubuntu:root /usr/local/redis-cluster
#-------------------------------------------------
ubuntu@192.168.124.25:/usr/local/redis-cluster$  ls
redis7004  redis7005
ubuntu@192.168.124.25:/usr/local/redis-cluster$ sudo chown -R ubuntu:root /usr/local/redis-cluster

以redis7000为例修改配置文件,redis7001~7005需做相同的操作(不同的节点使用自己的端口号,而不是7000)

cd /usr/local/redis-cluster/redis7000 
#拷贝一份配置文件,将来使用此新文件来启动Redis集群
cp redis.conf redis7000.conf 
#修改配置文件(进入vim编辑器后可使用"‘/'键 来快速定位配置项位置)
vi redis7000.conf

接下来编辑此配置文件,修改如下配置项

#############
port 7000 #设置启动端口
cluster-enabled yes #允许集群启动
cluster-config-file nodes7000.conf #集群配置文件名
cluster-node-timeout 5000 #集群节点之间多少毫秒无法连接后判定节点挂掉
pidfile /usr/local/redis-cluster/redis7000/redis7000.pid #修改pid文件创建位置
logfile /usr/local/redis-cluster/redis7000/redis7000.log #修改日志文件存储位置
dir /usr/local/redis-cluster/redis7000/data/ #修改数据文件存储位置
#############

使用任意一个节点创建集群,这里使用redis7000结点创建(注意,一次创建,永久使用,以后重启集群直接从第九步开始)
cd /usr/local/redis-cluster

redis7000/src/redis-cli --cluster create  192.168.124.23:7000 192.168.124.23:7001  192.168.124.24:7002 192.168.124.24:7003  192.168.124.25:7004 192.168.124.25:7005  --cluster-replicas 1

执行该命令后会将16384个槽位平均分配给三组节点,输入Y确认

在三个服务器上分别启动节点

ubuntu@192.168.124.23:/usr/local/redis-cluster$ ./redis7000/src/redis-server redis7000/redis7000.conf
ubuntu@192.168.124.23:/usr/local/redis-cluster$ ./redis7001/src/redis-server redis7001/redis7001.conf
#----------------------------------------------------
ubuntu@192.168.124.24:/usr/local/redis-cluster$ ./redis7002/src/redis-server redis7002/redis7002.conf
ubuntu@192.168.124.24:/usr/local/redis-cluster$ ./redis7003/src/redis-server redis7003/redis7003.conf
#----------------------------------------------------
ubuntu@192.168.124.25:/usr/local/redis-cluster$ ./redis7004/src/redis-server redis7004/redis7004.conf
ubuntu@192.168.124.25:/usr/local/redis-cluster$ ./redis7005/src/redis-server redis7005/redis7005.conf

选一台服务器开启客户端,这里选择192.168.124.23的7000端口,进入客户端后可用cluster info命令查看集群是否成功启动。成功后就可以使用了。

ubuntu@192.168.124.23:/usr/local/redis-cluster$ ./redis7000/src/redis-cli -c -h 192.168.124.23 -p 7000

结束命令:(在任意一台服务器执行,这里选择192.168.124.23的Redis7000目录下)建议将命令保存在一个shell脚本文件方便运行

redis7000/src/redis-cli -c -h 192.168.124.23 -p 7000 shutdown
redis7000/src/redis-cli -c -h 192.168.124.23 -p 7001 shutdown
redis7000/src/redis-cli -c -h 192.168.124.24 -p 7002 shutdown
redis7000/src/redis-cli -c -h 192.168.124.24 -p 7003 shutdown
redis7000/src/redis-cli -c -h 192.168.124.25 -p 7004 shutdown
redis7000/src/redis-cli -c -h 192.168.124.25 -p 7005 shutdown

到此这篇关于Redis6.0搭建集群Redis-cluster的方法的文章就介绍到这了,更多相关Redis6.0搭建集群Redis-cluster内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Redis 相关文章推荐
详解Redis瘦身指南
May 26 Redis
详解Redis复制原理
Jun 04 Redis
Windows中Redis安装配置流程并实现远程访问功能
Jun 07 Redis
Redis 哨兵集群的实现
Jun 18 Redis
比较几种Redis集群方案
Jun 21 Redis
了解Redis常见应用场景
Jun 23 Redis
Redis集群的关闭与重启操作
Jul 07 Redis
Redis字典实现、Hash键冲突及渐进式rehash详解
Sep 04 Redis
为什么RedisCluster设计成16384个槽
Sep 25 Redis
Window server中安装Redis的超详细教程
Nov 17 Redis
Redis基本数据类型哈希Hash常用操作命令
Jun 01 Redis
Redis全局ID生成器的实现
Jun 05 Redis
浅谈Redis存储数据类型及存取值方法
Redis IP地址的绑定的实现
May 08 #Redis
redis通过6379端口无法连接服务器(redis-server.exe闪退)
redis 查看所有的key方式
Redis5之后版本的高可用集群搭建的实现
详解RedisTemplate下Redis分布式锁引发的系列问题
详解Redis实现限流的三种方式
Apr 27 #Redis
You might like
apache+mysql+php+ssl服务器之完全安装攻略
2006/09/05 PHP
PHP函数之error_reporting(E_ALL ^ E_NOTICE)详细说明
2011/07/01 PHP
Yii使用ajax验证显示错误messagebox的解决方法
2014/12/03 PHP
php中使用gd库实现远程图片下载实例
2015/05/12 PHP
PHP正则验证Email的方法
2015/06/15 PHP
Laravel搭建后台登录系统步骤详解
2016/07/26 PHP
javascript indexOf函数使用说明
2008/07/03 Javascript
jQuery 版元素拖拽原型代码
2011/04/25 Javascript
使用jQuery.wechat构建微信WEB应用
2014/10/09 Javascript
小白谈谈对JS原型链的理解
2016/05/03 Javascript
详解使用angular-cli发布i18n多国语言Angular应用
2017/05/20 Javascript
javascript实现二叉树的代码
2017/06/08 Javascript
angularjs2中父子组件的数据传递的实例代码
2017/07/05 Javascript
vue动态绑定组件子父组件多表单验证功能的实现代码
2018/05/14 Javascript
bootstrap模态框弹出和隐藏,动态改变中间内容的实例
2018/08/10 Javascript
vue2.0 中使用transition实现动画效果使用心得
2018/08/13 Javascript
vue + any-touch实现一个iscroll 实现拖拽和滑动动画效果
2019/04/08 Javascript
Vue.extend实现挂载到实例上的方法
2019/05/01 Javascript
vue+elementUi 实现密码显示/隐藏+小图标变化功能
2020/01/18 Javascript
JS自定义右键菜单实现代码解析
2020/07/16 Javascript
使用typescript快速开发一个cli的实现示例
2020/12/09 Javascript
[49:31]DOTA2-DPC中国联赛 正赛 Elephant vs LBZS BO3 第二场 1月29日
2021/03/11 DOTA
python妙用之编码的转换详解
2017/04/21 Python
pycharm安装图文教程
2017/05/02 Python
CSS3结构性伪类选择器九种写法
2012/04/18 HTML / CSS
台湾网购生鲜第一品牌:i3Fresh爱上新鲜
2017/10/26 全球购物
Dockers鞋官网:Dockers Shoes
2018/11/13 全球购物
一家外企的面试题目(C/C++面试题,C语言面试题)
2014/03/24 面试题
运动会广播稿80字
2014/01/23 职场文书
高一物理教学反思
2014/01/24 职场文书
小露珠教学反思
2014/04/30 职场文书
2014世界杯球队球队口号
2014/06/05 职场文书
美术第二课堂活动总结
2014/07/08 职场文书
旅游局领导班子“四风”问题对照检查材料思想汇报
2014/09/29 职场文书
加强作风建设工作总结
2014/10/23 职场文书
开展党的群众路线教育实践活动情况汇报
2014/11/05 职场文书