当前位置: 首页 > news >正文

Redis集群Cluster搭建

Redis集群Cluster搭建

  • 集群框架
  • 1、下载redis
  • 2.创建Cluster文件
  • 3.修改redis配置文件
  • 4.启动redis
  • 5.链接各个redis
  • 6.分配槽位
  • 7.添加从机节点(备份Redis)
  • 8.以集群方式登录
  • 9.使用开源Redis可视化客户端链接

集群框架

三个集群节点,每个节点有个副本节点备份数据

在这里插入图片描述

1、下载redis

yum -y install redis

2.创建Cluster文件

cd root
mkdir cluster
cd cluster
//创建6个文件夹
mkdir node{1,2,3,4,5,6}

3.修改redis配置文件

Master1

1.bind 192.168.1.5 //主机地址
2.protected-mode no //非守护模式
3.port 6379 //运行端口
4.daemonize yes //后台运行
5.cluster-enabled yes (文件68%的位置) //开启集群
6.cluster-config-file nodes-6379.conf  //集群配置文件
7. cluster-node-timeout 15000 //集群超时时间

Master2

1.bind 192.168.1.5 //主机地址
2.protected-mode no //非守护模式
3.port 6380 //运行端口
4.daemonize yes //后台运行
5.cluster-enabled yes (文件68%的位置) //开启集群
6.cluster-config-file nodes-6380.conf  //集群配置文件
7. cluster-node-timeout 15000 //集群超时时间

Master3

1.bind 192.168.1.5 //主机地址
2.protected-mode no //非守护模式
3.port 6381 //运行端口
4.daemonize yes //后台运行
5.cluster-enabled yes (文件68%的位置) //开启集群
6.cluster-config-file nodes-6381.conf  //集群配置文件
7. cluster-node-timeout 15000 //集群超时时间

Slave1

1.bind 192.168.1.5 //主机地址
2.protected-mode no //非守护模式
3.port 6382 //运行端口
4.daemonize yes //后台运行
5.cluster-enabled yes (文件68%的位置) //开启集群
6.cluster-config-file nodes-6382.conf  //集群配置文件
7. cluster-node-timeout 15000 //集群超时时间

Slave2

1.bind 192.168.1.5 //主机地址
2.protected-mode no //非守护模式
3.port 6383 //运行端口
4.daemonize yes //后台运行
5.cluster-enabled yes (文件68%的位置) //开启集群
6.cluster-config-file nodes-6383.conf  //集群配置文件
7. cluster-node-timeout 15000 //集群超时时间

Slave3

1.bind 192.168.1.5 //主机地址
2.protected-mode no //非守护模式
3.port 6384 //运行端口
4.daemonize yes //后台运行
5.cluster-enabled yes (文件68%的位置) //开启集群
6.cluster-config-file nodes-6384.conf  //集群配置文件
7. cluster-node-timeout 15000 //集群超时时间

4.启动redis

redis-server /root/cluster/node1/redis.conf
redis-server /root/cluster/node2/redis.conf
redis-server /root/cluster/node3/redis.conf
redis-server /root/cluster/node4/redis.conf
redis-server /root/cluster/node5/redis.conf
redis-server /root/cluster/node6/redis.conf

在这里插入图片描述

5.链接各个redis

在这里插入图片描述

//打开Master1的Cli
redis-cli -h 192.168.1.5 -p 6379 (一台master执行就行)//建立集群链接,和大家打招呼
CLUSTER MEET 192.168.1.5 6380
CLUSTER MEET 192.168.1.5 6381
CLUSTER MEET 192.168.1.5 6382
CLUSTER MEET 192.168.1.5 6383
CLUSTER MEET 192.168.1.5 6384

在这里插入图片描述

//验证集群链接状态
redis-cli -h 192.168.1.5 -p 6379 cluster nodes

在这里插入图片描述

//查看集群信息,这里会显示fail,因为集群还没有分配槽位,所以失败
redis-cli -h 192.168.1.5 -p 6379 cluster info

6.分配槽位

如果遇到【Error】如下
“slot *** is busy”
集群存在脏数据需要再三台Master执行以下三个命令
redis-cli -h 192.168.1.5 -p 6379
flushall
cluster reset

//分配给三台Master槽位
redis-cli -h 192.168.1.5 -p 6379 cluster addslots {0..5461}
redis-cli -h 192.168.1.5 -p 6380 cluster addslots {5462..10922}
redis-cli -h 192.168.1.5 -p 6381 cluster addslots {10923..16383}

redis-cli -h 192.168.1.5 -p 6379 cluster nodes 验证成功信息如下

在这里插入图片描述

7.添加从机节点(备份Redis)

//查看各个节点信息 ,6379-6381Master,6382-6384从机
redis-cli -h 192.168.1.5 -p 6379 cluster nodes

在这里插入图片描述

//设置Master1节点的从机replicate1
redis-cli -h 192.168.1.5 -p 6382(slave1端口)  cluster replicate da174c5c6f56db1665b95a76b510780c26ccd13f(Master1节点ID)//设置Master2节点的从机replicate2
redis-cli -h 192.168.1.5 -p 6383  cluster replicate 4e241c079da23ed3eaae7df2599cf7679765230c//设置Master2节点的从机replicate2
redis-cli -h 192.168.1.5 -p 6384  cluster replicate a4136a827a810e4ceae6113d81c873c11445d5b5

设置后查看节点信息,成功画面如下

在这里插入图片描述

8.以集群方式登录

//只能查看单台机器的数据
redis-cli -h 192.168.1.5 -p 6379//查看整个集群的数据
redis-cli -h 192.168.1.5 -p 6379 -c

设置第一个数据
在这里插入图片描述
当我们再次设置时,集群会根据CRC计算改数据存放到那个槽位,

在这里插入图片描述

在集群链接模式下,能访问到所有节点所有槽位的数据
在这里插入图片描述

9.使用开源Redis可视化客户端链接

在这里插入图片描述
在这里插入图片描述

相关文章:

Redis集群Cluster搭建

Redis集群Cluster搭建 集群框架1、下载redis2.创建Cluster文件3.修改redis配置文件4.启动redis5.链接各个redis6.分配槽位7.添加从机节点(备份Redis)8.以集群方式登录9.使用开源Redis可视化客户端链接 集群框架 三个集群节点,每个节点有个副本…...

swing组件应用

1. 组件概述 (1) 说明 组件组成Java 的图形界面的各个元素,按照不同的功能,可分为 顶层容器、中间容器、基本组件。顶层容器为java.awt.Window的子类,有JFrame、JDialog等。中间容器和基础组件都为javax.swing.JCompo…...

Spring学习记录----十五、面向切面编程AOP+十六、Spring对事务的支持

十五、面向切面编程AOP IoC使软件组件松耦合。AOP让你能够捕捉系统中经常使用的功能,把它转化成组件。 AOP(Aspect Oriented Programming):面向切面编程,面向方面编程。(AOP是一种编程技术) …...

Color Correction (颜色校正)

介绍 在Unity中,Color Correction (颜色校正) 是一种用于调整场景或游戏画面颜色的技术。其中,Curves(曲线)和Saturation(饱和度)是常用的Color Correction工具。通过Curves,可以对RGB通道进行…...

Unity-缓存池

一、.基础缓存池实现 继承的Singleton脚本为 public class Singleton<T> where T : new() {private static T _instance;public static T GetIstance(){if (_instance null)_instance new T();return _instance;} } 1.PoolManager using System.Collections; using S…...

ubuntu samba 配置常见问题

samba配置&#xff1a; sudo vi /etc/samba/smb.conf [xxx 共享文件名] comment share folder browseable yes writable yes guest ok yes path /workdir/code/favarite create mask 0777 directory mask 0777 sudo /etc/init.d/smbd restart 重启smb服务 以上操作…...

vue3.3-TinyMCE:TinyMCE富文本编辑器基础使用

一、TinyMCE官网 GitHub - tinymce/tinymce TinyMCE中文文档中文手册 二、官网介绍 TinyMCE是一款易用、且功能强大的所见即所得的富文本编辑器。同类程序有&#xff1a;UEditor、Kindeditor、Simditor、CKEditor、wangEditor、Suneditor、froala等等。 TinyMCE的优势&…...

基于以太坊+IPFS的去中心化数据交易方法及平台

自己的论文&#xff0c;哎费事 目录 基于以太坊IPFS的去中心化数据交易方法及平台 基于以太坊IPFS的去中心化数据交易方法及平台 摘要&#xff1a; 数据交易过程中存在数据权属不明和数据安全问题。本文开发了一种基于以太坊IPFS的去中心化数据交易方法及平台。方法包括&am…...

NestJS 的 拦截器 学习

拦截器会用到RxJs&#xff0c;所以在学习拦截器之前可以先了解一下它。 拦截器是使用Injectable()装饰器装饰的类并且实现了接口NestInterceptor。 拦截器受到 AOP(面向切面编程)技术的启发&#xff0c;具有如下的功能&#xff1a; 在方法执行之前/之后绑定额外的逻辑转换函…...

Spring AOP 中的代理对象是怎么创建出来的?

文章目录 1. AOP 用法2. 原理分析2.1 doCreateBean2.2 postProcessAfterInitialization2.3 getAdvicesAndAdvisorsForBean2.3.1 findCandidateAdvisors2.3.2 findAdvisorsThatCanApply2.3.3 extendAdvisors 2.4 createProxy 今天和小伙伴们聊一聊 Spring AOP 中的代理对象是怎么…...

解决@Scope(“prototype“)不生效的问题

目录 Scope(“prototype“)不生效Scope(“prototype“)正确用法——解决Bean多例问题 1.问题&#xff0c;Spring管理的某个Bean需要使用多例2.问题升级3. Spring给出的解决问题的办法&#xff08;解决Bean链中某个Bean需要多例的问题&#xff09; Scope(“prototype“)不生效 …...

Mybatis 知识点

Mybatis 知识点 1.1 Mybatis 简介 1.1.1 什么是 Mybatis Mybatis 是一款优秀的持久层框架支持定制化 SQL、存储过程及高级映射Mybatis 几乎避免了所有的 JDBC 代码和手动设置参数以及获取结果集MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO…...

PHP中关于is,between,in等运算符的用法是什么?

我们学习了解了这么多关于PHP的知识&#xff0c;不知道你们对PHP中关于is&#xff0c;between&#xff0c;in等运算符的用法是什么&#xff1f;是否已经完全掌握了呢&#xff0c;如果没有&#xff0c;那就跟随本篇文章一起继续学习吧 相关推荐&#xff1a;关于PHP中的增删改如…...

2023-07-29:华清远见嵌入式2017年线下班:文件IO笔记

这里写目录标题 华清远见嵌入式2017年线下班&#xff1a;文件IO笔记文件权限文件IO文件创建和打开操作文件关闭操作出错处理创建设备文件 || create || 老师自己忘了文件读操作练习&#xff1a;计算文件的大小&#xff1f;文件写操作练习&#xff1a;打开file1和file2&#xff…...

2023年第四届“华数杯”数学建模思路 - 复盘:光照强度计算的优化模型

文章目录 0 赛题思路1 问题要求2 假设约定3 符号约定4 建立模型5 模型求解6 实现代码 0 赛题思路 &#xff08;赛题出来以后第一时间在CSDN分享&#xff09; https://blog.csdn.net/dc_sinor?typeblog 1 问题要求 现在已知一个教室长为15米&#xff0c;宽为12米&#xff0…...

Typescript第七章 处理错误(返回null,抛出异常,返回异常,Option类型)

第七章 处理错误 Typescript竭尽所能&#xff0c;把运行时异常转移到编译时。Typescript是功能丰富的系统&#xff0c;加上强大的静态和符号分析能力&#xff0c;包揽了大量辛苦的工作。 但是有些问题是无法避免的&#xff0c;比如网络和文件系统异常&#xff0c;解析用户输入…...

Qt库xcb问题

首先在~/.bashrc中加入 export QT_DEBUG_PLUGINS1然后看具体的报错 查看某个库链接的库&#xff1a; ldd libqxcb.so然后找到真正缺少的库&#xff0c;再在路径下搜索&#xff0c;然后建立软链接。 https://blog.csdn.net/LOVEmy134611/article/details/107212845 https://…...

C++ | 哈希表的实现与unordered_set/unordered_map的封装

目录 前言 一、哈希 1、哈希的概念 2、哈希函数 &#xff08;1&#xff09;直接定址法 &#xff08;2&#xff09;除留余数法 &#xff08;3&#xff09;平方取中法&#xff08;了解&#xff09; &#xff08;4&#xff09;随机数法&#xff08;了解&#xff09; 3、哈…...

【漏洞挖掘】Xray+rad自动化批量漏洞挖掘

文章目录 前言一、挖掘方法二、使用步骤工具安装使用方法开始挖掘 总结 前言 自动化漏洞挖掘是指利用计算机程序和工具来扫描、分析和检测应用程序、网络和系统中的安全漏洞的过程。这种方法可以帮助安全专家和研究人员更高效地发现和修复潜在的安全威胁&#xff0c;从而提高整…...

Swagger UI教程 API 文档和Node的使用

在团队开发中&#xff0c;一个好的 API 文档可以减少很多交流成本&#xff0c;也可以使一个新人快速上手业务。 前言 swagger ui是一个API在线文档生成和测试的利器&#xff0c;目前发现最好用的。为什么好用&#xff1f;Demo 传送门 支持API自动生成同步的在线文档 这些文档可…...

2026权威评测:TOP5毕业论文AIGC降重方案对比与首选建议

全景速览&#xff1a;2026盲审季TOP5降重工具核心对比表 排名工具名称降重与去痕效能核心适用场景致命短板 / 核心优势1Scholingo靠岸妙写★★★★★国内本科/硕博盲审、核心期刊投稿优势&#xff1a;DOM级自定义大纲独家AIGC物理去痕2Paperpal★★★★☆SCI/海外顶刊纯英润色…...

[STM32问题解决(2)]编译错误:Error: L6218E的深度解析与实战排查指南

1. 认识Error: L6218E编译错误 当你正在Keil MDK环境下开发STM32项目时&#xff0c;突然弹出一个红色错误提示&#xff1a;"Error: L6218E: Undefined symbol xxx (referred from xxx.o)"&#xff0c;这可能是每个STM32开发者都会遇到的经典问题。我第一次遇到这个错…...

管道应力理论(应用)

本文仅对管道应力涉及的理论知识&#xff08;偏向于应用&#xff09;进行简单介绍。管道应力&#xff1a;对管道应力校核是为了防止管壁内应力过大对管道造成破坏&#xff0c;不同的荷载引起不同类型的应力&#xff0c;在实际工程应用中&#xff0c;一般分为三种&#xff1a;一…...

Phi-4-mini-reasoning效果展示:含单位换算、科学计数法的复合型数学题求解

Phi-4-mini-reasoning效果展示&#xff1a;含单位换算、科学计数法的复合型数学题求解 1. 模型能力概览 Phi-4-mini-reasoning是一款专注于推理任务的文本生成模型&#xff0c;特别擅长处理需要多步逻辑推导的问题。与通用聊天模型不同&#xff0c;它更专注于"问题输入→…...

突破试用限制:开源脚本实现IDM无限使用的完整解决方案

突破试用限制&#xff1a;开源脚本实现IDM无限使用的完整解决方案 【免费下载链接】IDM-Activation-Script IDM Activation & Trail Reset Script 项目地址: https://gitcode.com/gh_mirrors/id/IDM-Activation-Script 一、问题引入&#xff1a;IDM用户的痛点与解决…...

FDTD_进阶指南:2D/3D材料建模与材料库深度解析

1. FDTD仿真中的材料建模基础 第一次接触FDTD仿真时&#xff0c;我被材料建模这个环节卡住了整整一周。当时想模拟一个简单的硅基光子晶体&#xff0c;结果连介电常数设置都搞不明白。后来才发现&#xff0c;材料建模是FDTD仿真的基石&#xff0c;就像盖房子要先打好地基一样。…...

实战演练:基于Copaw下载的博客代码,在快马平台上快速构建并部署可访问的全栈应用

今天想和大家分享一个实战经验&#xff1a;如何基于Copaw下载的代码&#xff0c;在InsCode(快马)平台上快速构建并部署一个全栈博客应用。整个过程非常流畅&#xff0c;特别适合想快速验证想法的开发者。 项目背景与需求分析 最近在Copaw上找到一个博客系统的代码骨架&#x…...

微信聊天记录年度报告怎么生成?实测这款工具,一键导出HTML还能做可视化分析

从数据到故事&#xff1a;用专业工具打造你的微信聊天年度可视化报告 微信聊天记录早已不只是简单的文字交流&#xff0c;它们承载着人际关系的发展脉络、重要时刻的见证以及日常生活的点滴。将这些碎片化的对话转化为结构化的年度报告&#xff0c;不仅能帮助我们回顾过去一年…...

CF1249D2 Too Many Segments (hard version)

给你 条线段&#xff0c;每条线有起始点 和终止点 &#xff0c;线段会覆盖一个直线上的 到 的所有点&#xff0c;问你取消多少条线段后可以使每一个点都不被大于 的数量的线段覆盖。 ## 前置知识 考虑对于第 个点&#xff0c;之前的所有点都满足了要求&#xff0c;如果 …...

从ET1100迁移到AX58100:我的EtherCAT从站代码需要重写多少?

从ET1100迁移到AX58100&#xff1a;EtherCAT从站代码重构实战指南 当你的产品线需要从百兆升级到千兆EtherCAT网络&#xff0c;或者要支持时间敏感网络(TSN)功能时&#xff0c;从经典的ET1100切换到AX58100几乎是必然选择。但作为经历过完整迁移周期的开发者&#xff0c;我必须…...