RedisManager使用手册(七) -- 集群伸缩

本章介绍RedisManager集群伸功能。通常伴随着业务量增长或者是业务拆分的场景,如何合理的使用redis资源也会成为运维过程中一个不可避免的环节,RedisManager提供的集群扩容缩容功能就变得格外有意义。

操作前必读

这是一个风险较高的的运维操作,不当的操作可能会导致数据丢失甚至严重的会导致整个redis集群挂掉,所以请操作前务必以下须知:

  • 该操作只RedisManager目前支持cluster模式
  • 集群伸缩操作最好是平台创建的redis集群,接下的集群伸缩演示都是基于平台平台创建的redis集群
  • 非平台创建redis集群的也可以扩容(无法缩容),通过手动Import Node,Meeting操作实现。这里务必要保证Import Node所在机器的权限,以及redis的版本
  • 集群伸缩操作过程最好不要有redis流量
  • 操作过程中有些操作可能会耗费一定的时间,请务必在当前操作完成以后再进行下一步操作
  • 缩容时,尽量避开redismanager 监控模块使用的redis节点
  • 为以防万一,请提前做好数据备份

扩容操作

1 点击manage按钮进入NodeManager页面,再点击Add node按钮进入以下页面

addnode

2 在保证所有信息同创建集群时相同以后,填入需要新增节点的ip和port,check通过以后点击CreateCluster按钮,等待页面提示"success install"以后,切到Cluster manager Tab页,此时你已经可以看你新增的redis节点了(只是还没有分配slot)

nodelist

3 开始slot分配操作,键入你想要迁移的slot数目以后点击submit按钮,待到弹出"succes"提示信息以后,刷新页面所有操作完成。网络延迟和迁移slot的数目都可能导致该步骤用时过长,请耐心等待。

slot

4 扩容完以后的节点信息列表如下

nodelist2

缩容操作

缩容操作必须是使用RedisManager平台创建的集群才可以。所谓缩容,我们目的是想要减少Master节点以缩小redis集群的规模。


1 为保证数据的完整,首先需要迁移走对应Master节点上的slot(如图2的状态一致)


2 将所有需要缩容的节点一次从集群中forget掉。如下图(master节点会在其所有slave节点forget完成以后出现forget按钮)

forget

3 forget操作完成以后我们在Cluster manager Tab页已经找不到被forget的节点了,此时再切换回Node manager Tab页面,如下图:

delete

4 如上图所示,此时需要缩容的节点其InCluster的状态都会变成 No了,在逐个节点进行Stop和Opreate下的Delete操作。Delete操作必须要在stop操作完成以后Status状态为fail以后才可已经进行。至此我们就完成了redis集群的缩容和节点物理删除的操作了。


5 更多节点操作的功能见下图

  • Stop:停掉当前节点
  • Start:启动当前节点
  • Delete:删掉当前节点(物理删除)
  • ReStart:重启当前结点

nodeopt

至此,RedisManager集群伸功能介绍完毕啦

在Linux下使用`redis-cli`搭建Redis集群通常不是直接操作的,因为`redis-cli`主要是用于交互式地测试和管理单个Redis实例。实际上,Redis集群的部署应该通过Redis服务器自身的`redis.conf`文件以及一些高级特性,例如`redis-cluster`模块,来进行配置和管理。 以下是基本步骤: 1. **安装Redis**:确保在所有节点上安装了Redis,并选择包含`redis-cluster`模块的版本。 2. **编辑配置文件**:在每台服务器的`redis.conf`文件中,启用`cluster-enabled`和`cluster-config-file`配置,设置`cluster-config-file`指向一个共享文件,用于记录节点信息。 ```bash cluster-enabled yes cluster-config-file nodes.conf ``` 3. **启动Redis服务器**:添加`--cluster`标志启动服务器,此时Redis会自动进入集群模式。 ``` redis-server --cluster --cluster-config-file nodes.conf ``` 4. **配置`nodes.conf`**:手动编写或由`redis-cli`生成`nodes.conf`,列出集群的节点信息,包括节点IP地址、端口、槽位分配等。 5. **初始化集群**:在所有节点上分别运行`redis-cli`的`CLUSTER ADDSLOTS`命令,按照配置的槽位分配给各个节点。 6. **验证集群**:使用`redis-cli`的`CLUSTER SLOTS`命令确认槽位已被正确分配。 请注意,这只是一个简化的指南,实际部署时可能涉及更多细节,比如网络连接的稳定性、故障转移机制、负载均衡等。对于复杂场景,推荐使用专门的运维工具,如Redis的官方集群监控工具`redis-cli monitor`,或者第三方可视化管理工具如Redis Commander。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值