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

Redis-Cluster集群操作--添加节点、删除节点

一、环境部署

部署好Redis-Cluster集群,参考上个本人的博客:Redis-Cluster集群的部署(详细步骤)_是胡也是福的博客-CSDN博客

新准备一台机器,修改主机名,关闭防火墙和selinux,参考:非关系型数据库Redis的安装_是胡也是福的博客-CSDN博客

加入解析/etc/hosts

192.168.85.132  redis-cluster4  7006 7007

二、添加节点

1、创建集群节点
[root@redis-cluster4 redis]# mkdir data  #创建数据目录
[root@redis-cluster4 redis]# mkdir cluster
[root@redis-cluster4 redis]# mkdir cluster/{7006,7007}  #创建集群节点
[root@redis-cluster4 redis]# cp redis.conf cluster/7006/
[root@redis-cluster4 redis]# cp redis.conf cluster/7007/
2、从redis-cluster1 scp配置文件并修改

修改内容在上个集群部署的博客中

Redis-Cluster集群的部署(详细步骤)_是胡也是福的博客-CSDN博客

3、启动
[root@redis-cluster4 src]# nohup ./redis-server ../cluster/7006/redis.conf  &
[root@redis-cluster4 src]# nohup ./redis-server ../cluster/7007/redis.conf  &
4、开始添加节点:将cluster4添加到集群中
[root@redis-cluster4 src]# ./redis-cli --cluster add-node 192.168.85.132:7006 192.168.85.138:7004
5、查看集群节点信息(随便登陆一个客户端即可)

6、给新节点进行hash槽分配,这样该主节才可以存储数据,(如果有数据记得提前先将数据同步然后在从其他节点迁移槽到新节点。)
[root@redis-cluster1 src]# ./redis-cli --cluster reshard 192.168.85.132:7006

三、删除节点

1、注意

       如果要下线节点6,节点7,请务必先下线从节点,并且节点6的slot的迁移到其他节点了,如果先线下节点6的话 会发产生故障切换,节点7成主节点了。  
       在移除某个redis节点之前,首先不能在登入该节点当中,否则不能正常移除该节点。

2、操作
1)、先删除从节点
#注意:这个地方需要提一下的就是
如果要下线节点6,节点7,请务必先下线从节点,并且节点6的slot的迁移到其他节点了,如果先线下节点6的话 会发产生故障切换,节点7成主节点了
在移除某个redis节点之前,首先不能在登入该节点当中,否则不能正常移除该节点.1.退出所有链接的客户端,然后在任意一台机器执行
[root@redis-cluster1 src]# ./redis-cli --cluster del-node 192.168.85.132:7007 87c7e3cdf2c3d9608277d5c059b684757076a72e #该节点的id
>>> Removing node 87c7e3cdf2c3d9608277d5c059b684757076a72e from cluster 192.168.85.132:7007
>>> Sending CLUSTER FORGET messages to the cluster...
>>> Sending CLUSTER RESET SOFT to the deleted node.[root@redis-cluster1 src]# ./redis-cli -h 192.168.85.135 -c -p 7000
192.168.85.135:7000> CLUSTER NODES

2)、后删除主节点

查看每个槽的数量

[root@redis-cluster1 src]# ./redis-cli --cluster info 192.168.85.135:7000

将6节点上面的槽迁移到其他节点

ip+port:要移除的节点
cluster-from:移除节点的id
cluster-to:接受槽主节点的id,需要将4096平均移动到不同的主节点,需要写不同接受槽的主节点id
cluster-slots:移除槽的数量(把7006的槽均给其他三个主节点7002、7003、7004)##给7002
[root@redis-cluster1 src]# ./redis-cli --cluster reshard 192.168.85.132:7006 --cluster-from 0c06d79a8643225a5c91e3d88c498f2b4f78f33e --cluster-to e2da0df101cc18fc25576ab652a4b37ebab4bf5b --cluster-slots 666 --cluster-yes##给7003
[root@redis-cluster1 src]# ./redis-cli --cluster reshard 192.168.85.132:7006 --cluster-from 0c06d79a8643225a5c91e3d88c498f2b4f78f33e --cluster-to 04932bc2c2e2697677d5e8f4827736958e3ffffe --cluster-slots 666 --cluster-yes##给7004
[root@redis-cluster1 src]# ./redis-cli --cluster reshard 192.168.85.132:7006 --cluster-from 0c06d79a8643225a5c91e3d88c498f2b4f78f33e --cluster-to 683e223b87ac930dfa59e5eed7172fc95b84c43e --cluster-slots 667 --cluster-yes查看节点信息
192.168.85.135:7000> CLUSTER nodes

迁移完成删除该节点即可

[root@redis-cluster1 src]# ./redis-cli --cluster del-node 192.168.85.132:7006 0c06d79a8643225a5c91e3d88c498f2b4f78f33e
http://www.lryc.cn/news/155482.html

相关文章:

  • ModaHub魔搭社区:星环科技向量数据库Hippo社区版来啦
  • gitHub添加ssh
  • sql:SQL优化知识点记录(十)
  • STM32 RTC实验
  • C#设计打开文件
  • mysql指令行登录如何添加mysql.sock的配置?(亲测)
  • Git 设置和清除用户名和邮箱
  • 【系统设计系列】 回顾可扩展性
  • 科兴未来 |轨道交通专业赛 第十二届中国创新创业大赛
  • leetcode 42. 接雨水
  • 【Lychee图床】本地电脑搭建私人图床,公网远程访问
  • 【MySQL系列】-ORDER BY……HAVING详解及limit
  • 浅析Keil MDK下串行Flash的下载算法设计
  • springboot自动装配原理,手写一个starter。
  • 革命性的电子元件:RAD继电器 | 百能云芯
  • 文献阅读:Deep Learning Enabled Semantic Communication Systems
  • 巨人互动|游戏出海游戏出海效果怎样?
  • 二、GoLang输出HelloWorld、变量定义、数据类型的转换
  • Mars3d图层树//图层管理加载时设置默认折叠的状态
  • 区块链技术|DApp与传统应用程序的关键区别
  • Python 加密解密技巧大揭秘:让你的数据安全无忧
  • C#判断字符是否为utf16编码
  • centos7上hive3.1.3安装及配置
  • Redis面试题(笔记)
  • iPhone 15 Pro展示设计:7项全新变化呈现
  • 【六袆 - Windows】PL/SQL instantclient安装包下载;PL/SQL双击登录配置
  • Springboot+mybatis-plus+dynamic-datasource 切换数据源失败问题总结
  • QuantLib学习笔记——InterestRate的应用
  • 记录--解决前端内存泄漏:问题概览与实用解决方案
  • IP初学习