我有一个几乎是空的小集群。通常,nodetool removenode
的完成时间约为10秒。但是,我目前正在执行一个节点删除过程,该过程耗时10分钟,并且似乎没有任何进展。删除该节点的附加请求被拒绝,因为已经在进行删除。我该如何解决?供引用,这是nodetool status
的输出:
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns Host ID Rack
DL 192.168.12.207 152.14 KB 256 32.2% 683d8351-c625-4d7f-99cc-61f6b73b0c56 rack1
UN 192.168.12.205 215.21 KB 256 37.2% b66d5fff-ef1d-4fbf-a49a-43709df99a0c rack1
UN 192.168.12.208 148.09 KB 256 30.6% 39b54771-59b8-49f7-8db8-9cf4523d6c8d rack1
此外,cassandra不在主机207(离开主机)上运行,但在其他两个主机上运行。
编辑:似乎至少有一个 token 被卡在等待复制:
$ nodetool removenode status
RemovalStatus: Removing token (-9037887679483580088). Waiting for replication confirmation from [/192.168.12.205].
最佳答案
不知道哪个版本的Cassandra是有问题的那个。但是,如果根据Apache Cassandra Wiki的说明, nodetool removenode 不起作用,则应尝试以下操作:
希望能帮助到你 。