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 Cluster 字段模糊匹配及删除
May 27 Redis
厉害!这是Redis可视化工具最全的横向评测
Jul 15 Redis
Redis中一个String类型引发的惨案
Jul 25 Redis
Redis入门教程详解
Aug 30 Redis
在项目中使用redis做缓存的一些思路
Sep 14 Redis
SpringBoot整合Redis入门之缓存数据的方法
Nov 17 Redis
CentOS8.4安装Redis6.2.6的详细过程
Nov 20 Redis
Redis+Lua脚本实现计数器接口防刷功能(升级版)
Feb 12 Redis
在Centos 8.0中安装Redis服务器的教程详解
Mar 21 Redis
Redis批量生成数据的实现
Jun 05 Redis
如何使用注解方式实现 Redis 分布式锁
Jul 23 Redis
浅谈Redis存储数据类型及存取值方法
Redis IP地址的绑定的实现
May 08 #Redis
redis通过6379端口无法连接服务器(redis-server.exe闪退)
redis 查看所有的key方式
Redis5之后版本的高可用集群搭建的实现
详解RedisTemplate下Redis分布式锁引发的系列问题
详解Redis实现限流的三种方式
Apr 27 #Redis
You might like
php下实现一个阿拉伯数字转中文数字的函数
2008/07/10 PHP
ajax php 实现写入数据库
2009/09/02 PHP
PHP用GD库生成高质量的缩略图片
2011/03/09 PHP
php中把美国时间转为北京时间的自定义函数分享
2014/07/28 PHP
php json_encode与json_decode详解及实例
2016/12/13 PHP
一个用js实现的页内搜索代码
2007/05/23 Javascript
jQuery News Ticker 基于jQuery的即时新闻行情展示插件
2011/11/05 Javascript
js限制文本框输入长度两种限制方式(长度、字节数)
2012/12/19 Javascript
node.js中的http.request.end方法使用说明
2014/12/10 Javascript
jQuery.prop() 使用详解
2015/07/19 Javascript
jquery的幻灯片图片切换效果代码分享
2015/09/07 Javascript
jQuery实现的文字hover颜色渐变效果实例
2016/02/20 Javascript
基于Bootstrap使用jQuery实现简单可编辑表格
2016/05/04 Javascript
bootstrap select2插件用ajax来获取和显示数据的实例
2018/08/09 Javascript
原生JS实现获取及修改CSS样式的方法
2018/09/04 Javascript
JSON字符串操作移除空串更改key/value的介绍
2019/01/05 Javascript
对TypeScript库进行单元测试的方法
2019/07/18 Javascript
Vue可自定义tab组件用法实例
2019/10/24 Javascript
vue实现在线学生录入系统
2020/05/30 Javascript
jquery实现上传图片功能
2020/06/29 jQuery
[09:37]DOTA2卡尔工作室 英雄介绍圣堂刺客篇
2013/06/13 DOTA
[49:21]TNC vs VG 2019DOTA2国际邀请赛淘汰赛 胜者组赛BO3 第三场 8.20.mp4
2019/08/22 DOTA
python实现给微信公众号发送消息的方法
2017/06/30 Python
Python算法之求n个节点不同二叉树个数
2017/10/27 Python
pygame游戏之旅 创建游戏窗口界面
2018/11/20 Python
用python建立两个Y轴的XY曲线图方法
2019/07/08 Python
python利用 keyboard 库记录键盘事件
2020/10/16 Python
HTML5+CSS3:3D展示商品信息示例
2017/01/03 HTML / CSS
深圳-东方伟业笔试部分
2015/02/11 面试题
毕业生求职简历的自我评价
2013/10/07 职场文书
林肯就职演讲稿
2014/05/19 职场文书
公路施工安全责任书
2015/05/08 职场文书
2019年亲子运动会口号
2019/10/11 职场文书
redis通过6379端口无法连接服务器(redis-server.exe闪退)
2021/05/08 Redis
Logback 使用TurboFilter实现日志级别等内容的动态修改操作
2021/08/30 Java/Android
淡雅古典唯美少女娇媚宁静迷人写真
2022/03/21 杂记