IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> redis集群的水平扩张与缩减 -> 正文阅读

[大数据]redis集群的水平扩张与缩减


前言:本文是承接了笔者之前写的redis集群搭建模式的基础上进行的拓展,如果是零基础的同学,请从前文开始看起~

一、redis集群的水平扩张

水平扩张就是给原本的redis集群添加新的主从节点,让更多的redis节点来分担任务,下面是具体的操作步骤:

1、启动新增的节点

新增节点的启动和前文的启动方式别无二致,使用如下指令
/usr/local/opt/redis/bin/redis-server /usr/local/etc/cluster/redis-8007.conf

启动成功后如下图:8007、8008都是新启动的两个节点,且未加入集群中
在这里插入图片描述

2、将游离节点加入集群

redis中提供了一个特殊的指令来添加新的节点:
/usr/local/opt/redis/bin/redis-cli -a 123456 --cluster add-node 127.0.0.1:8007 127.0.0.1:8001

  • -a:当前节点所配置的密码
  • --cluster add-node:添加节点所用到的特殊指令
  • 第一个IP:这个IP是需要加入的节点IP和端口
  • 第二个IP:这个IP可以是集群中任意存活节点的IP加端口

启动成功后如下图:
在这里插入图片描述

此时加入的节点默认是主节点,并且没有任何槽位,也就是说无法缓存数据,如下图:
在这里插入图片描述

3、给新加入的节点分配槽位

给新节点分配槽位,其实就是从原有的主节点中分出一部分槽位给新加入的节点,总的槽位数量仍旧不变—16384。指令如下:
/usr/local/opt/redis/bin/redis-cli -a 123456 --cluster reshard 127.0.0.1:8007

指令启动后,会有几个询问环节:

1、询问需要转移多少个槽位(600)
在这里插入图片描述
2、询问接收槽位的节点ID(就是新增的节点ID)
在这里插入图片描述
3、询问分配节点的方式(all)
在这里插入图片描述
这里需要注意一下,有两种分配方式:

  • all:表示从现有主节点中随机抽取指定数目的槽位,比如600个槽位,可能8001主节点取100,8002主节点取200,8003主节点取300,这个数量是不确定的;
  • done:这种模式的输入方式有所不同,需要先输入节点ID,然后再输入done这个关键字。它表示从该节点中取出指定数目的槽位转移给2步骤设置的接收节点。一般都是删除节点的时候用到该种模式;

4、询问是否接受执行计划(yes)
在这里插入图片描述

完成上述几个步骤后节点就迁移完成了,如下图:
在这里插入图片描述
进行到此处其实就已经完成了集群的水平扩容,不过光秃秃的一个主节点还是有点突兀,所以后面又给加上了从节点

4、给新增的主节点添加从节点

1、将游离的节点加入集群,这个同步骤2;
在这里插入图片描述
2、进入当前节点,将改节点挂入主节点下方,输入如下指令:
cluster replicate 节点ID
在这里插入图片描述

加入成功后如下图
在这里插入图片描述

二、redis集群的缩减

缩减与扩张是完全相反的一个动作,可以看作是扩张的逆向操作,具体的步骤如下:

1、从节点的删除

由于从节点并没有槽位信息的配置,所以可以用指令直接删除
/usr/local/opt/redis/bin/redis-cli -a 123456 --cluster del-node 127.0.0.1:8008 节点ID

  • -a:当前节点所设置的访问密码
  • --cluster del-node:删除节点所用的特殊指令
  • ip:需要删除的节点IP加端口地址
  • 节点ID:需要删除的节点ID

删除成功后如下图
在这里插入图片描述

2、主节点的删除

主节点的删除需要区分两个步骤:

1、转移要删主节点的全部槽位数据信息(如果未转移会提示无法删除),指令如下:
/usr/local/opt/redis/bin/redis-cli -a 123456 --cluster reshard 127.0.0.1:8007
该指令的步骤同 一.3,只有部分环节不同

  • 询问转移数量的环节:600(删除节点所持有的槽位数量)
  • 询问接收槽位的环节:选择除删除主节点外的任意主节点ID
  • 询问转移方式的环节:选择done(从所删除节点转移所有槽位)
    在这里插入图片描述

迁移完成后的结果如下:
在这里插入图片描述

2、完成第一步后,使用删除指令从集群中移除主节点即可,指令同从节点的删除指令:
/usr/local/opt/redis/bin/redis-cli -a 123456 --cluster del-node 127.0.0.1:8007 节点ID

删除后的结果图如下:
在这里插入图片描述

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-03-30 18:32:03  更:2022-03-30 18:33:47 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 5:35:25-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码