今年由于新冠疫情的影响,可能很多同学都被公司要求压缩服务器成本。这两天,公司领导把小眼睛瞟到笔者开发环境里那个可怜的redis集群上。好吧,那么我们就来操作一下缩减redis集群。
查看cluster nodes
使用redis-cli --cluster check命令来查看节点信息。
$ redis-cli --cluster check 192.168.1.195:6379 -a xxxxxxx
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
192.168.1.195:6379 (414f2b74...) -> 37651 keys | 3277 slots | 0 slaves.
192.168.1.195:6679 (e7a768fa...) -> 37614 keys | 3277 slots | 0 slaves.
192.168.1.195:6479 (1edda72f...) -> 37486 keys | 3277 slots | 0 slaves.
192.168.1.195:6579 (24671149...) -> 37639 keys | 3276 slots | 0 slaves.
192.168.1.195:6779 (f9b6419c...) -> 37489 keys | 3277 slots | 0 slaves.
[OK] 187879 keys in 5 masters.
11.47 keys per slot on average.
>>> Performing Cluster Check (using node 192.168.1.195:6379)
M: 414f2b745d2614a7a2bb592ca4d54febf550d3a9 192.168.1.195:6379
slots:[0-3276] (3277 slots) master
M: e7a768faf1d1b6139f4a6192285329a5888b8381 192.168.1.195:6679
slots:[9830-13106] (3277 slots) master
M: 1edda72f1e5771a433a2c450cb9f5f555149fc63 192.168.1.195:6479
slots:[3277-6553] (3277 slots) master
M: 2467114902a123079ca83e48642edbd7df0281ff 192.168.1.195:6579
slots:[6554-9829] (3276 slots) master
M: f9b6419cf22315108872b81f7d3e76df8b0036e8 192.168.1.195:6779
slots:[13107-16383] (3277 slots) master
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
命令参数说明
| 参数 | 说明 |
| --cluster | 集群操作命令 |
| check | 检查集群信息子命令 |
| 192.168.1.195:6379 | ip地址和端口,有多个节点的话只需提供其中一个节点就行。 |
| -a xxxxx | 密码 |
可以看到目前有5个master节点,没有slave节点,所有的slot都已经覆盖。
开始reshard,把端口号为6679和6779两个节点的slot平均地迁移到其他3个节点上。
使用reshard命令的交互模式,我们先从6679移动2184个slot到6579上。以下是交互过程:
问:你要迁移多少个slot,回答2184。
问:接收这些slot的节点id,复制6579那个节点的id。
问:迁出slot的节点,可以提供多个,最后一个填“done"。复制6679的节点id,回车,然后在source node #2那里填done。
之

本文详述了在新冠疫情导致成本压缩背景下,如何操作Redis集群进行节点缩减。首先通过`redis-cli --cluster check`命令检查节点状态,然后使用`redis-cli --cluster reshard`交互式迁移slot,逐步将slot从不再需要的节点迁移至其他节点,确保集群负载均衡。在完成迁移后,关闭多余节点,并使用`cluster forget`命令从集群中移除已关闭节点的信息,确保集群正常运行。在整个过程中,需要注意节点间的slot分配和集群一致性。

675

被折叠的 条评论
为什么被折叠?



