Redis 集群搭建

news2025/7/19 11:34:52

前缀参考文章1:Centos7 安装并启动 Redis-6.2.6

前缀参考文章2:Redis 主从复制-服务器搭建【薪火相传/哨兵模式】

管道符查看所有redis进程:ps -ef|grep redis

杀死所有redis进程:killall redis-server

 

1. 首先修改 redis.conf 配置

[root@localhost ~]# cd /usr/local/redis-6.2.6
[root@localhost redis-6.2.6]# vim redis.conf

① 开启 daemonize yes

     此步骤是优化后端启动(启动不会弹出redis图标和大量繁琐信息)

进去编辑命令输入:/daemonize 回车直接跳转它的位置上

     将原先的注释掉,重新编辑开启 daemonize yes

 

② 打开集群模式 :cluster-enabled yes

 

③ 设定节点配置文件名:cluster-config-file nodes-6379.conf

     这个后面要单独配置

 ④ 设定节点失联时间:cluster-node-timeout 15000

      超过该时间(毫秒),集群自动进行主从切换

 

2. 在 cd /usr/local/redis-6.2.6/ 目录下拷贝六个 redis.conf

[root@localhost ~]# cd /usr/local/redis-6.2.6
[root@localhost redis-6.2.6]# vim redis6379.conf

 ① vim redis6379.conf 的编辑内容如下

include /usr/local/redis-6.2.6/redis.conf
pidfile "/var/run/redis_6379.pid"
port 6379
dbfilename "dump6379.rdb"
cluster-config-file nodes-6379.conf

② vim redis6380.conf 的编辑内容如下

 

include /usr/local/redis-6.2.6/redis.conf
pidfile "/var/run/redis_6380.pid"
port 6380
dbfilename "dump6380.rdb"
cluster-config-file nodes-6380.conf

③ vim redis6381.conf 的编辑内容如下

include /usr/local/redis-6.2.6/redis.conf
pidfile "/var/run/redis_6381.pid"
port 6381
dbfilename "dump6381.rdb"
cluster-config-file nodes-6381.conf

④ 如此反复,再编辑 redis6389.conf、redis6390.conf、redis6391.conf

 

端口全部替换命令  :%s/6379/6389

include /usr/local/redis-6.2.6/redis.conf
pidfile "/var/run/redis_6389.pid"
port 6389
dbfilename "dump6389.rdb"
cluster-config-file nodes-6389.conf
include /usr/local/redis-6.2.6/redis.conf
pidfile "/var/run/redis_6390.pid"
port 6390
dbfilename "dump6390.rdb"
cluster-config-file nodes-6390.conf
include /usr/local/redis-6.2.6/redis.conf
pidfile "/var/run/redis_6391.pid"
port 6391
dbfilename "dump6391.rdb"
cluster-config-file nodes-6391.conf

3. 以拷贝的六个文件作为参照启动服务

[root@localhost redis-6.2.6]# redis-server redis6379.conf 
[root@localhost redis-6.2.6]# redis-server redis6380.conf 
[root@localhost redis-6.2.6]# redis-server redis6381.conf 
[root@localhost redis-6.2.6]# redis-server redis6389.conf 
[root@localhost redis-6.2.6]# redis-server redis6390.conf 
[root@localhost redis-6.2.6]# redis-server redis6391.conf

4. 将六个节点合成一个集群

① 组合前,要确保所有redis实例启动后,nodes-xxxx.conf 文件都正常生成

 

② 合体为一个集群

redis-cli --cluster create 192.168.230.128:6379 192.168.230.128:6380 192.168.230.128:6381 192.168.230.128:6389 192.168.230.128:6390 192.168.230.128:6391 --cluster-replicas 1

 

5. 测试集群

[root@localhost redis-6.2.6]# redis-cli -c -p 6379
-c:表示以 集群 方式进入 节点 6379

 

此图可看出,集群成功! 

在节点6379 保存k1:1,计算槽空间为12706,属于节点6381位置,所以保存在节点6381,;

在节点6381 保存k2:2,计算槽空间为449,属于节点6379位置,所以保存在节点6379;

而无论保存在哪个节点的槽空间范围,我都可以在各个节点获取到对应的值。

通过 cluster nodes 命令查看集群信息

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/369028.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Jmeter(GUI模式)详细教程

Jmeter(GUI模式)详细教程 目录:导读 一、安装Jmeter 二、Jmeter工作原理 三、Jmeter操作步骤 Jmeter界面 1、测试计划 2、线程组 3、HTTP请求 4、监听器 四、压力测试 写在最后 前些天,领导让我做接口的压力测试。What…

cocos2dx+lua学习笔记:UIScrollView的使用

前言 本篇在讲什么 本篇简单介绍Lua篇cocos2dx中UIScrollView的相关内容 仅介绍简单的应用,仅供参考 本篇适合什么 适合初学Cocos2dX的小白 适合想要在Cocos2dx-lua中使用UIScrollView的人 本篇需要什么 对Lua语法有简单认知 对Cocos2dx-Lua有简单认知 Co…

【JavaSE】复习(基础)

文章目录基础1.1. public class 和 class1.2. 字面量1.3. 变量的引出1.4. javadoc的使用1.5. 转义字符1.6. 逻辑运算1.7. 用户键盘输入1.8. switch1.9. for循环1.10.方法的调用1.11.break return1.12.方法重载(overload)1.13.成员变量中的实例变量1.14.方…

计算机网络你都懂了吗

文章目录一、计算机网络的定义简单定义通用定义二、计算机网络通信过程三、什么是网络协议(Protocol)四、网络协议组成及功能一、计算机网络的定义 简单定义 计算机网络是一些相互连接的、自治的计算机系统的集合。 通用定义 将处于不同位置并具有独…

ChatGPT?听说Biying把它下架了

ChatGPT被玩疯了,开始放飞自我 ChatGPT版微软必应上线不到10天…就被网友玩坏了 先说这个词,放飞自我,什么东西才会放飞自我? 人放飞自我,人?你确定是人? 所以让我们来把上面的句子改写一下。…

怎样激发读者好奇心?短视频营销之场景化

目录 激发读者好奇心?四个小技巧帮你搞定 1.省略法 2.欲言又止法: 3.问句法:就是用疑问的形式引起别人的好奇。 4.反差法 选择合适的主题。 利用场景化效果 使用滤镜。 如何提高用户的留存率。 1、设置一个有趣的话题。 2、用好道具。 3、多用竖屏。 什…

适合python游戏开发的库你知道几个?

python游戏开发的库 01 PyGame 官网: https://www.pygame.org/docs/ 概述: Pygame 是一组专为编写视频游戏而设计的 Python 模块。 它在优秀的 SDL 库之上添加了功能。这允许您使用 python 语言创建功能齐全的游戏和多媒体程序。Pygame具有高度的可…

即将报名,如何选择软考考试科目?

软考全称为计算机技术与软件专业技术资格(水平)考试 是职业资格、专业技术资格考试,也是职称考试。 计算机软件资格考试设置了27个专业资格,涵盖5个专业领域, 3个级别层次(初级、中级、高级) …

ubuntu20.04安装conda

1)conda与miniconda 任何语言的包、依赖和环境管理---Python, R, Ruby, Lua, Scala, Java, JavaScript, C/ C, FORTRAN。Conda 是一个运行在 Windows、macOS 和 Linux 上的开源包管理系统和环境管理系统。Conda 可以快速安装、运行和更新包及其依赖项。Conda 可以轻松地在本地计…

关于高并发场景和进程线程协程的一些总结

1、IO复用和线程池哪个好?应用场景? IO复用就是一个线程处理多个客户端连接。如果自己实现的话,就是要不断轮询每个客户端连接,看看有没有事件发生(数据到达),即使可以用非阻塞的read函数&…

基于java+sql+servlet的金融借贷管理系统mysql数据源

基于javasqlservlet的金融借贷管理系统 一套基于基于JavaWeb实现的金融借贷系统 或 P2P金融管理系统 或 小额贷款系统,详细介绍了金融借贷系统的实现,包括:1.项目介绍2.环境搭建3.系统功能4.技术实现5.项目运行6.功能演示以通俗易懂的方式&a…

浏览器自动化框架沦为攻击者的工具

5月27日消息,安全公司Team Cymru的研究人员表示,越来越多的威胁参与者正在使用免费的浏览器自动化框架作为其攻击活动的一部分。 研究人员表示,该框架的技术准入门槛故意保持在较低水平,以创建一个由内容开发者和贡献者组成的活跃…

算法训练营 day55 动态规划 买卖股票问题系列3

算法训练营 day55 动态规划 买卖股票问题系列3 最佳买卖股票时机含冷冻期 309. 最佳买卖股票时机含冷冻期 - 力扣(LeetCode) 给定一个整数数组prices,其中第 prices[i] 表示第 i 天的股票价格 。 设计一个算法计算出最大利润。在满足以下…

JavaScript高级 Proxy Reflect

1. Proxy 1. 监听对象的变化 有一个对象,我们希望监听这个对象中的属性被设置或获取的过程 我们可以通过 Object.defineProperty 来实现 const obj {name: "why",age: 18,height: 1.88 }// 需求: 监听对象属性的所有操作 // 监听属性的操作 // 1.针对…

MySQL中的一些非常实用的函数、语法

前言我最近几年用MYSQL数据库挺多的,发现了一些非常有用的小玩意,今天拿出来分享到大家,希望对你会有所帮助。1.group_concat在我们平常的工作中,使用group by进行分组的场景,是非常多的。比如想统计出用户表中&#x…

Qt图片定时滚动

目录参考结构PicturePlay.promain.cpppictureplay.hpictureplay.cpppictureplay.ui效果参考 Qt图片浏览器 QT制作一个图片播放器 Qt中自适应的labelpixmap充满窗口后,无法缩小只能放大 可以显示jpg、jpeg、png、bmp。可以从电脑上拖动图到窗口并显示出来或者打开文件…

LDO 芯片烫手,问题出在哪里?

设计失误的一个电路,该电路是数字电路的电源,为图方便对12V直接通过线性电源芯片降压到5V: 图1:线性电源降压12V转5V 几块电路板打样好后,测试均发现AMS1117-5.0芯片烫手,负载电流100mA多,也满…

vim命令快捷键

1.概述vim在linux系统下代码补全、编译及错误跳转等方便编程的功能丰富,被广泛使用。简单的来说, vi 是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方。 vim 则可以说是程序开发者的一项很好用的工具。vim 是一个…

从零开始的机械臂yolov5抓取gazebo仿真(环境搭建篇中)

yolov5运行环境搭建 本篇主要讲如何搭建yolov5运行环境,以及一些需要注意避坑的重要知识点。anaconda与显卡驱动先装后装是没有什么影响的,关键在于,不能将显卡驱动以及cuda装在虚拟环境中。这里介绍一下博主的电脑环境为i7九代ubuntu18.04r…

移动办公时代,数智化平台如何赋能企业管理升级?

在传统的办公模式下,企业组织办公不仅时效低,周期长、成本高,且各办公系统相互独立。随着社会经济的发展,人们的工作生活变得多样化,对于办公的需求也越来越多,存在明显弊端的传统办公模式已不能满足企业对…