Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon ec2 如何使用sstableloader填充Cassandra集群?_Amazon Ec2_Cassandra - Fatal编程技术网

Amazon ec2 如何使用sstableloader填充Cassandra集群?

Amazon ec2 如何使用sstableloader填充Cassandra集群?,amazon-ec2,cassandra,Amazon Ec2,Cassandra,我已经使用Whirr在EC2上建立了一个3节点的Cassandra集群。我还有一个第四个EC2实例,我正在使用它来编写以下sstables 编写sstables后,我将尝试加载Cassandra群集,但我不断得到: Starting client (and waiting 30 seconds for gossip) ... java.lang.IllegalStateException: Cannot load any sstable, no live member found in the

我已经使用Whirr在EC2上建立了一个3节点的Cassandra集群。我还有一个第四个EC2实例,我正在使用它来编写以下sstables

编写sstables后,我将尝试加载Cassandra群集,但我不断得到:

Starting client (and waiting 30 seconds for gossip) ...
java.lang.IllegalStateException: Cannot load any sstable, no live member found in the cluster
我已将sstableloader cassandra.yaml中的种子配置为集群中的一个节点,并打开了集群中种子节点与sstableloader实例之间的端口。我能够从sstableloader实例使用cassandra cli访问种子节点,因此我认为这些配置都是正确的


我还缺什么吗?sstableloader是否必须在其中一个群集节点上运行才能正常工作?

节点之间打开了哪些端口?端口7000(默认情况下)是gossip特别需要的。

7000和9160(TCP),这是两个实例上yaml中指定的存储端口和rpc端口。我的最佳选择是它没有使用您认为是的conf文件。您是否在某个时候从软件包中安装了cassandra,现在通过下载运行?sstableloader脚本在查找本地目录之前,将先查找/etc/cassandra和/usr/share/cassandra等位置。您可以通过将“CASSANDRA_HOME”设置为包含要使用的conf/dir的目录来覆盖此行为。它肯定使用了正确的配置文件。接下来,通过设置环回地址,我能够将sstableloader连接到在同一个框上运行的第二个cassandra实例。我可以查看cassandra实例的日志,并查看BrancherLoader连接并开始加载。但仍无法连接到远程群集。