我用谷歌搜索并找到了两个解决方案:
CLUSTER FORGET
( http://redis.io/commands/cluster-forget )redis-trib.rb del-node
我认为CLUSTER FORGET
“是正确的做法。
但我真的很想知道关于redis-trib.rb del-node
.
有人可以解释它们之间的区别吗?
我用谷歌搜索并找到了两个解决方案:
CLUSTER FORGET
( http://redis.io/commands/cluster-forget )
redis-trib.rb del-node
我认为CLUSTER FORGET
“是正确的做法。
但我真的很想知道关于redis-trib.rb del-node
.
有人可以解释它们之间的区别吗?
redis-trib.rb
是一个 ruby 实用程序脚本,由 antirez(主要 redis 开发人员)构建,作为在基本 redis 集群命令之上构建管理工具的参考实现。
在引擎盖下 redis-trib 用于CLUSTER FORGET
实现它自己的管理 del-node 命令。https://github.com/antirez/redis/blob/unstable/src/redis-trib.rb#L1374
Redis-trib 使用起来更加友好。如果您正在这样做CLUSTER FORGET
,则需要循环并将该命令发送到系统中的每个其他节点,而 del-node 将为您自动执行该过程。
警告:redis-trib.rb 不再可用!您应该改用 redis-cli。
属于 redis-trib.rb 的所有命令和功能都已移至 redis-cli。为了使用它们,您应该使用redis-cli
带有--cluster
子命令名称、参数和选项的选项进行调用。
使用以下语法:
redis-cli --cluster SUBCOMMAND [ARGUMENTS] [OPTIONS]
例子:
redis-cli --cluster info 127.0.0.1:6382
~$ redis-cli
127.0.0.1:6379> CLUSTER HELP
127.0.0.1:6379> CLUSTER NODES
127.0.0.1:6379> CLUSTER FORGET <node-id>
src/redis-trib.rb del-node 192.168.0.211:6379 650e3746968e6b7c7e357f06adbde5b3b92fcceb
笔记:
192.168.0.211:6379
这是集群中的任何节点650e3746968e6b7c7e357f06adbde5b3b92fcceb
这是您要删除的节点的集群 ID。您可以从“cluster nodes”命令中获取此 ID 的值。