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 IP地址的绑定的实现
May 08 Redis
浅谈Redis的几个过期策略
May 27 Redis
解析Redis Cluster原理
Jun 21 Redis
Redis缓存-序列化对象存储乱码问题的解决
Jun 21 Redis
redis使用不当导致应用卡死bug的过程解析
Jul 01 Redis
redis 存储对象的方法对比分析
Aug 02 Redis
Redis如何实现分布式锁
Aug 23 Redis
使用redis实现延迟通知功能(Redis过期键通知)
Sep 04 Redis
Redis高并发防止秒杀超卖实战源码解决方案
Nov 01 Redis
Redis安装使用RedisJSON模块的方法
Mar 23 Redis
浅谈Redis的事件驱动模型
May 30 Redis
浅谈Redis存储数据类型及存取值方法
Redis IP地址的绑定的实现
May 08 #Redis
redis通过6379端口无法连接服务器(redis-server.exe闪退)
redis 查看所有的key方式
Redis5之后版本的高可用集群搭建的实现
详解RedisTemplate下Redis分布式锁引发的系列问题
详解Redis实现限流的三种方式
Apr 27 #Redis
You might like
全国FM电台频率大全 - 12 安徽省
2020/03/11 无线电
一个PHP分页类的代码
2011/05/18 PHP
PHP中register_globals参数为OFF和ON的区别(register_globals 使用详解)
2012/02/05 PHP
PHP调用Linux的命令行执行文件压缩命令
2013/01/27 PHP
php对图像的各种处理函数代码小结
2013/07/08 PHP
PHP添加Xdebug扩展的方法
2014/02/12 PHP
PHP使用xmllint命令处理xml与html的方法
2014/12/15 PHP
iis 7下安装laravel 5.4环境的方法教程
2017/06/14 PHP
PHP实现的回溯算法示例
2017/08/15 PHP
半角全角相互转换的js函数
2009/10/16 Javascript
jQuery实现仿路边灯箱广告图片轮播效果
2015/04/15 Javascript
Jquery解析json字符串及json数组的方法
2015/05/29 Javascript
node.js+express制作网页计算器
2016/01/17 Javascript
jQuery Ajax实现跨域请求
2017/01/21 Javascript
JavaScript创建对象的七种方式全面总结
2017/08/21 Javascript
Vue页面刷新记住页面状态的实现
2019/12/27 Javascript
javascript实现贪吃蛇经典游戏
2020/04/10 Javascript
微信小程序通过websocket实时语音识别的实现代码
2020/08/19 Javascript
Python中DJANGO简单测试实例
2015/05/11 Python
Python中操作mysql的pymysql模块详解
2016/09/13 Python
python实现微信小程序自动回复
2018/09/10 Python
解决python opencv无法显示图片的问题
2018/10/28 Python
python 叠加等边三角形的绘制的实现
2019/08/14 Python
python numpy--数组的组合和分割实例
2020/02/24 Python
Python Selenium库的基本使用教程
2021/01/04 Python
使用CSS3的rem属性制作响应式页面布局的要点解析
2016/05/24 HTML / CSS
Ivory Isle Designs美国/加拿大:婚礼和活动文具公司
2018/08/21 全球购物
车间主管岗位职责
2013/11/14 职场文书
上级检查欢迎词
2014/01/18 职场文书
超市开业庆典活动策划方案
2014/09/15 职场文书
故意伤害辩护词
2015/05/21 职场文书
2016年春节问候语
2015/11/11 职场文书
2016年暑期见闻作文
2015/11/25 职场文书
生产实习心得体会范文
2016/01/22 职场文书
Python实现学生管理系统并生成exe可执行文件详解流程
2022/01/22 Python
Python使用PyYAML库读写yaml文件的方法
2022/04/06 Python