datastax cluster尝试连接死节点

时间:2015-09-04 11:28:54

标签: cassandra datastax

当我启动集群时,我可以在日志中看到它总是尝试连接到我甚至找不到的死节点。 奇怪的是当我运行 nodetool ring nodetool status 时,我再也找不到这个死的主机了。这意味着我无法通过执行 nodetool removenode 来删除它。 我猜其他人已将此节点添加到群集中,但我不知道它是如何删除的。 我该如何解决? 非常感谢!

1 个答案:

答案 0 :(得分:1)

nodetool removenode过去已被证明存在问题,有几种方法可以解决这个问题。

你在哪个版本?如果您运行的是新版本2.2,则可以使用nodetool assassinate

$ nodetool -u cassandra -pw cassandra assassinate 10.0.0.100

基本上,由于CASSANDRA-7935,它已经被提升为版本2.2的nodetool命令了。如果您运行的是2.2之前的版本,则可以通过JMX Term工具(as documented here)强制删除节点:

$>open localhost:7199
#Connection to localhost:7199 is opened
$>bean org.apache.cassandra.net:type=Gossiper
#bean is set to org.apache.cassandra.net:type=Gossiper
$>run unsafeAssassinateEndpoint 10.0.0.100
#calling operation unsafeAssassinateEndpoint of mbean org.apache.cassandra.net:type=Gossiper
#operation returns:
null
$>quit
#bye