cassandra节点不启动

问题描述:

我有4节点cassandra集群。其中2个已经上涨但2个下跌。 当我开始他们时,他们立即下来。 当我检查使用service cassandra status 我越来越could not access pidfile for cassandra 和SYSTEM.LOG文件中,错误的是:cassandra节点不启动

ERROR [main] 2017-09-15 15:44:46,277 CassandraDaemon.java:752 - Exception encountered during startup 
java.lang.NullPointerException: null 
     at org.apache.cassandra.gms.Gossiper.isSafeForStartup(Gossiper.java:756) ~[apache-cassandra-3.10.jar:3.10] 
     at org.apache.cassandra.service.StorageService.checkForEndpointCollision(StorageService.java:553) ~[apache-cassandra-3.10.jar:3.10] 
     at org.apache.cassandra.service.StorageService.prepareToJoin(StorageService.java:800) ~[apache-cassandra-3.10.jar:3.10] 
     at org.apache.cassandra.service.StorageService.initServer(StorageService.java:666) ~[apache-cassandra-3.10.jar:3.10] 
     at org.apache.cassandra.service.StorageService.initServer(StorageService.java:612) ~[apache-cassandra-3.10.jar:3.10] 
     at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:394) [apache-cassandra-3.10.jar:3.10] 
     at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:601) [apache-cassandra-3.10.jar:3.10] 
     at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:735) [apache-cassandra-3.10.jar:3.10] 
INFO [StorageServiceShutdownHook] 2017-09-15 15:44:46,281 HintsService.java:221 - Paused hints dispatch 
INFO [StorageServiceShutdownHook] 2017-09-15 15:44:46,282 Gossiper.java:1506 - Announcing shutdown 
+1

您使用的是哪个版本? – Mandraenke

+1

版本是3.10 – Vish

+0

您可以在任何正在运行的节点上执行'bin/nodetool status'命令并粘贴结果吗?还要突出显示抛出上面的NullPointerException的节点。 – Oresztesz

Gossiperlink)的源代码,我怀疑你的节点都停留在boostrapping相。其他节点将它们视为已引导,但未能完成加入群集。

通过在任何其他能够启动的实例中使用nodetool removenode,可以帮助强制从集群中删除卡住的节点。 之后,您应清除data目录(位于data/system folder,如果您从OS软件包安装),并逐个启动实例,以清除卡住实例上的数据。

如果你把你的集群的gossipinfo状态,它可能会帮助找出真正的问题是什么。

如需进一步参考see official guide

+0

谢谢Oresztesz。我做了同样的事情,但没有使用removenode选项。相反,我从cassandra.yaml文件中删除了种子,然后重新启动cassandra以检查它是否正确运行在群集之外。它运行良好。然后我将种子添加回cassandra.yaml文件。并重新启动cassandra,然后它也可以在群集中运行。我在system.log中看到的一件事是,有一个“更新该节点的拓扑信息”的日志。我仍然不清楚问题是什么,但现在对我来说很有用。 – Vish