redis cluster如何添加和删除节点?

news2024/12/29 11:15:18

文章目录

  • redis cluster如何增加和删除节点?
    • 背景说明
    • 添加节点
      • 添加 master 节点
      • 添加slave节点
    • 删除节点
      • 删除 master 节点
      • 删除slave节点


redis cluster如何增加和删除节点?

背景说明

由于虚拟环境有限,目前所采用的集群方案是在 3 台机器去搭建 6 个 redis 实例的 redis cluster(每台两个)。

使用命令 redis-cli -h 10.0.0.4 -p 7001 cluster nodes 查看当前集群节点

在这里插入图片描述

添加节点

添加 master 节点

配置并启动即将添加的节点,具体操作参考简单搭建redis cluster集群。

第一步:使用命令 redis-cli --cluster add-node 10.0.0.7:7007 10.0.0.4:7001 添加节点;

前面的 ip:port 为将要添加的节点,后面的 ip:port 表示集群中的任意一个节点。

在这里插入图片描述

第二步:使用命令 redis-cli --cluster reshard 10.0.0.7:7007 分配 slots。

执行命令 redis-cli --cluster reshard 10.0.0.7:7007 时出现的询问:
How many slots do you want to move (from 1 to 16384)?:表示需要移动槽的数量。填写自己的需要即可。
What is the receiving node ID?:表示:那个 id 来接收它。即新的 7007 的 id。
Source node #1:从填写的那个节点 id 上移动散列插槽。如果需要平均节点插槽,那么每个主节点的 id 都写上或者写 all。
Do you want to proceed with the proposed reshard plan (yes/no)?:确定要移动这些槽的计划吗?输入 yes 或者 no。

[root@mq4 init.d]# redis-cli --cluster reshard 10.0.0.7:7007
>>> Performing Cluster Check (using node 10.0.0.7:7007)
M: f1f7185e3f0a1096ad16b598005875e1b2d306cc 10.0.0.7:7007
   slots: (0 slots) master
   1 additional replica(s)
S: 15df8829b8e756ce76ae1c2b3d879193a758348a 10.0.0.7:7008
   slots: (0 slots) slave
   replicates f1f7185e3f0a1096ad16b598005875e1b2d306cc
M: 58869cf6dee60706154a5a3461c4687922e6ea60 10.0.0.5:7003
   slots:[5461-10922] (5462 slots) master
   1 additional replica(s)
M: 1a7a4d4168b0e3203f6c6c1e0a35351760f1bacf 10.0.0.4:7001
   slots:[0-5460] (5461 slots) master
   1 additional replica(s)
S: 32a1ec21e51934856a97efd8ce4bfc8ff90619d2 10.0.0.4:7002
   slots: (0 slots) slave
   replicates 5f8f0c5c6b71615cc837cb1efe2997a35de45623
M: 5f8f0c5c6b71615cc837cb1efe2997a35de45623 10.0.0.6:7005
   slots:[10923-16383] (5461 slots) master
   1 additional replica(s)
S: 6959f6d61974895474c800c4c46f704ad4857264 10.0.0.5:7004
   slots: (0 slots) slave
   replicates 1a7a4d4168b0e3203f6c6c1e0a35351760f1bacf
S: 0ea5f18383cfa1fb70d4af093cd1946fc0e2aff6 10.0.0.6:7006
   slots: (0 slots) slave
   replicates 58869cf6dee60706154a5a3461c4687922e6ea60
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
How many slots do you want to move (from 1 to 16384)? 4096
What is the receiving node ID? f1f7185e3f0a1096ad16b598005875e1b2d306cc
Please enter all the source node IDs.
  Type 'all' to use all the nodes as source nodes for the hash slots.
  Type 'done' once you entered all the source nodes IDs.
Source node #1: all

Ready to move 4096 slots.
  Source nodes:
    M: 58869cf6dee60706154a5a3461c4687922e6ea60 10.0.0.5:7003
       slots:[5461-10922] (5462 slots) master
       1 additional replica(s)
    M: 1a7a4d4168b0e3203f6c6c1e0a35351760f1bacf 10.0.0.4:7001
       slots:[0-5460] (5461 slots) master
       1 additional replica(s)
    M: 5f8f0c5c6b71615cc837cb1efe2997a35de45623 10.0.0.6:7005
       slots:[10923-16383] (5461 slots) master
       1 additional replica(s)
  Destination node:
    M: f1f7185e3f0a1096ad16b598005875e1b2d306cc 10.0.0.7:7007
       slots: (0 slots) master
       1 additional replica(s)
  Resharding plan:
    Moving slot 5461 from 58869cf6dee60706154a5a3461c4687922e6ea60
    Moving slot 5462 from 58869cf6dee60706154a5a3461c4687922e6ea60
    Moving slot 5463 from 58869cf6dee60706154a5a3461c4687922e6ea60
    Moving slot 5464 from 58869cf6dee60706154a5a3461c4687922e6ea60
    Moving slot 5465 from 58869cf6dee60706154a5a3461c4687922e6ea60
    Moving slot 5466 from 58869cf6dee60706154a5a3461c4687922e6ea60
    Moving slot 5467 from 58869cf6dee60706154a5a3461c4687922e6ea60
    Moving slot 5468 from 58869cf6dee60706154a5a3461c4687922e6ea60
......
Do you want to proceed with the proposed reshard plan (yes/no)? yes
Moving slot 5461 from 10.0.0.5:7003 to 10.0.0.7:7007:
Moving slot 5462 from 10.0.0.5:7003 to 10.0.0.7:7007:
Moving slot 5463 from 10.0.0.5:7003 to 10.0.0.7:7007:
Moving slot 5464 from 10.0.0.5:7003 to 10.0.0.7:7007:
Moving slot 5465 from 10.0.0.5:7003 to 10.0.0.7:7007:
Moving slot 5466 from 10.0.0.5:7003 to 10.0.0.7:7007:
Moving slot 5467 from 10.0.0.5:7003 to 10.0.0.7:7007:
Moving slot 5468 from 10.0.0.5:7003 to 10.0.0.7:7007:
......

查看集群节点

在这里插入图片描述

添加slave节点

相比于添加 master 节点,添加 slave 节点则不需要分配 slot,只需执行命令 redis-cli --cluster add-node 10.0.0.7:7008 10.0.0.4:7001 --cluster-s lave f1f7185e3f0a1096ad16b598005875e1b2d306cc 即可。

在这里插入图片描述

删除节点

删除 master 节点

因为 master 节点是分配了 slot 的,所以删除节点之前需要把 solt 移动到其他 master 节点上去,也就行执行 reshard 操作,否则数据会丢失。

然后执行命令 redis-cli --cluster del-node ip:prot 删除节点。

删除slave节点

相比于删除 master 节点,删除 slave 节点直接删除即可。

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

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

相关文章

java项目_第166期ssm多人命题系统_java毕业设计_计算机毕业设计

java项目_第166期ssm多人命题系统_java毕业设计_计算机毕业设计 【源码请到资源专栏下载】 今天分享的项目是《ssm多人命题系统》 1、该项目分为3个角色,管理员和、用户、教师。 用户角色可以浏览前台,包含功能有: 首页、学校公告、试题信息、论坛信息 用…

Thread的基本用法

目录 1.创建线程 2.1 继承Thread类,重写run方法 2.2 实现Runnable,重写run方法 2.3 使用匿名内部类继承Thread类,重写run方法 2.4 使用匿名内部类实现Runnable接口,重写run方法 2.5 使用lambda表达式 3.Thread类的构造方法 4.Thread类的常见属性的获取方法 5.线程方法的…

游戏开发28课 cocoscreator 渲染排序说明

渲染排序说明 2D 渲染节点排序 2D 渲染节点可分为在 Canvas 下的节点和不在 Canvas 下的节点两种: 在 Canvas 下的节点可参考下文 UI 节点排序 部分的内容。 不在 Canvas 下的节点,用户可选择通过 自定义材质 来开启深度检测实现和 3D 物体的遮挡显示…

面试中经常被问到的几个回溯问题

前言:大家好,我是小威,24届毕业生,本篇文章是对最近复刷的回溯相关的算法题进行记录,方便复习使用。 如果文章有什么需要改进的地方还请大佬不吝赐教👏👏。 小威在此先感谢各位大佬啦~~&#x1…

马尔可夫预测案例分析

根据已经有数据进行预测的研究方法有很多,包括arima模型、指数平滑法、灰色预测等,本文针对马尔可夫预测进行阐述。比如研究中国移动,中国联通和中国电信三家运营商,他们的用户可以互相携号转网,已经当前3家运营商的市…

开发者友好的Linux常见命令整理

系统本身 uname -a # 查看内核/操作系统/CPU信息 cat /etc/redhat-release 查看服务器版本 cat /proc/cpuinfo # 查看CPU信息 hostname # 查看计算机名 lspci -tv # 列出所有PCI设备 lsusb -tv # 列出所有USB设备 lsmod # 列出加载的内核模块 env # 查看环境变量 查看…

领域驱动设计-领域建模

领域建模 领域建模是针对问题空间的战术求解的过程:观察真实世界的业务需求,对业务知识进行提炼和转换,排除技术因素对建模产生的影响,一切围绕着业务需求而来。同时满足未来的需求变更与产品维护 快速建模法:名次动…

通信原理技术复习重点知识

1.感知控制层通信的目的和特点: 目的:将各种传感设备(数据采集设备以及相关的控制设备)所感知的信息在较短的通信距离内传送到信息汇聚系统,并由该系统传送到网络传输层 特点:传输距离近,传输方…

使用 SAP WebIDE 将 SAP UI5 应用部署到 ABAP 系统时遇到的关于传输请求的错误

有朋友遇到一个在 webide 里部署 SAP UI5 应用到 ABAP Repository 里时出错的问题: 错误消息: Failed to get transports for the selected package. Request POST /webidedispatcher/destinations/LND500/sap/bc/adt/cts/transportchecks failed: Forbi…

【数学】仿射变换(续1)

在 这篇文章 中我介绍了椭圆中的圆幂定理。其中,椭圆中的“相交弦定理”为 PA⋅PBPC⋅PDrAB2rCD2\frac{PA\cdot PB}{PC \cdot PD}\frac{r_{AB}^2}{r_{CD}^2}PC⋅PDPA⋅PB​rCD2​rAB2​​ 本来以为它是从来见不到的东西 然而 请看此题: 以下给出两种常…

传奇登录器打不开的四种原因

最近很多传奇玩家或者GM都遇到了传奇登陆器打不开,没反应,提示无法访问指定设备等问题,导致很多游戏没有办法玩,让玩家心情沮丧,作为GM,那么就更伤心了,很多玩家进不来游戏,开服数千…

Vue3框架中路由的使用和局部刷新的功能(第十一课)

使用vue-router的步骤:p第一步:创建路由需要映射的组件(打算显示的页面);p第二步:通过createRouter创建路由对象,并且传入routes和history模式;配置路由映射: 组件和路径映射关系的routes数组&a…

linux杀毒软件clamav安装

clamav 简介 ClamAV is an open source (GPLv2) anti-virus toolkit, designed especially for e-mail scanning on mail gateways. It provides a number of utilities including a flexible and scalable multi-threaded daemon, a command line scanner and advanced tool …

Git的基本使用

Git 1.Git基础知识 1.1Git简介 更新的历史保存在Gitee中不会丢失的。 1.简介:Git是一个分布式版本管理系统,是为了更好地管理Linux内核开发而创立的。 Git可以在任何时间点,把文档的状态作为更新记录保存起来。因此可以把编辑过的文档复…

AI强势入场,成就史上最快足球

众所周知,卡塔尔是全球最富裕的国度之一,是世界第一大液化天然气生成和出口国。丰富的石油资源,几乎让每一名原住民从出生之日起就实现财务自由,人均GDP高达6万多美元,钞能力毋庸置疑。 2022年世界杯正是在这片富饶的土…

图论 - 拓扑排序

有向图的拓扑序列 给定一个 nnn 个点 mmm 条边的有向图,点的编号是 111 到 nnn,图中可能存在重边和自环。 请输出任意一个该有向图的拓扑序列,如果拓扑序列不存在,则输出 −1。 若一个由图中所有点构成的序列 AAA 满足&#xf…

调试-一些奇怪的现象-以及const的作用

今天给大家看一些奇怪的例子&#xff0c;我们用调试来看看这到底是什么情况&#xff0c;本次选取环境为vs2019 话不多说&#xff0c;我们直接来看例子 #include <stdio.h>int main() {int i 0;int arr[10] { 0 };for (i 0; i < 12; i){arr[i] 0;printf("he…

压缩包加密、解密

压缩包文件大家都经常使用&#xff0c;经常用来压缩文件之后再转发给别人&#xff0c;网上下载的软件&#xff0c;有时候也是压缩包形式下载下来&#xff0c;解压之后才是软件。相信大家一定也遇到过加密的压缩包文件。今天和大家分享如何加密压缩包&#xff0c;以及如何解密压…

114.(leaflet篇)leaflet空间判断-点与圆的空间关系

听老人家说:多看美女会长寿 地图之家总目录(订阅之前建议先查看该博客) 文章末尾处提供保证可运行完整代码包,运行如有问题,可“私信”博主。 效果如下所示: 下面献上完整代码,代码重要位置会做相应解释 <!DOCTYPE html> <html>

【SpringBoot】对于yaml的详细学习和三种属性赋值的实战详解

一.yaml详细讲解 1.1 什么是yaml&#xff1f; YAML是一种数据序列化语言&#xff0c;通常用于编写配置文件。业界对YAML有不同的看法。有些人会说YAML代表另一种标记语言。其他人认为“YAML不是标记语言”&#xff08;“YAML并非标记语言”&#xff09;。“YAML”只是这句话的…