我在AWS上使用一个由3个节点组成的Cassandra集群遇到了问题。
其中有一个种子节点和两个数据节点。当启动它们或手动尝试启动时,这些节点会崩溃。
错误信息出现在所有三个节点上。
Cassandra的版本为2.0.9。
我尝试了以下设置:
- class_name: org.apache.cassandra.locator.SimpleSeedProvider
parameters:
- seeds: "<seed.node.public.IP>"
rpc_address: <node.public.IP>
rpc_port: 9160
listen_address: (or with the node's public IP)
storage_port: 7000
endpoint_snitch: SimpleSnitch (and RackInferringSnitch as well).
错误信息为:
ERROR [main] 2014-09-29 08:59:45,241 CassandraDaemon.java (line 513) Exception encountered during startup
java.lang.RuntimeException: Unable to gossip with any seeds
at org.apache.cassandra.gms.Gossiper.doShadowRound(Gossiper.java:1200)
at org.apache.cassandra.service.StorageService.checkForEndpointCollision (StorageService.java:446)
at org.apache.cassandra.service.StorageService.prepareToJoin(StorageService.java:657)
at org.apache.cassandra.service.StorageService.initServer(StorageService.java:611)
at org.apache.cassandra.service.StorageService.initServer(StorageService.java:504)
at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:378)
at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:496)
at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:585)
群集的安全组中开放了端口7000、7001、7199、8080、9042、9160、61620和61621。
我还阅读并尝试了以下链接中提供的解决方案:
作为服务启动Cassandra对于2.0.5不起作用,sudo cassandra -f却可以
Apache Cassandra:无法与任何种子节点交换信息