无法使用RedHat Linux上的Java驱动程序连接到本地Cassandra单节点集群

时间:2016-08-05 23:21:31

标签: java cassandra datastax-java-driver

我正在尝试将我的应用程序部署到服务器(RedHat Linux 6.5)。作为一个节点集群和Java应用程序的Cassandra应该在同一台服务器上。我有问题连接java客户端与cassandra,因为它总是触发异常NoHostAvailable:

  

16:03:55,274 | -INFO in   ch.qos.logback.classic.joran.JoranConfigurator@25a65b77 - 注册   当前配置为安全回退点SLF4J:实际绑定是   类型为[ch.qos.logback.classic.util.ContextSelectorStaticBinder]   测试运行:1,失败:0,错误:1,跳过:0,已过去时间:13.512   秒<<<失败! - 在   org.au.morph.bigdata.offline.cassandra.SimpleConnectorTest   testConnection(org.au.morph.bigdata.offline.cassandra.SimpleConnectorTest)   经过的时间:13.511秒<<<错误!   com.datastax.driver.core.exceptions.NoHostAvailableException:全部   尝试查询失败的主机(尝试:/127.0.0.1:9042   (com.datastax.driver.core.exceptions.ReadTimeoutException:Cassandra   在一致性ONE的读取查询期间超时(1个响应是   需要但只有0副本响应)))           在com.datastax.driver.core.ControlConnection.reconnectInternal(ControlConnection.java:231)           在com.datastax.driver.core.ControlConnection.connect(ControlConnection.java:77)           在com.datastax.driver.core.Cluster $ Manager.init(Cluster.java:1414)           在com.datastax.driver.core.Cluster.getMetadata(Cluster.java:393)           at org.au.morph.bigdata.offline.cassandra.SimpleClientImpl.connect(SimpleClientImpl.java:65)           在org.au.morph.bigdata.offline.cassandra.SimpleClientImpl。(SimpleClientImpl.java:25)           在org.au.morph.bigdata.offline.cassandra.SimpleConnectorTest.testConnection(SimpleConnectorTest.java:22)

     

结果:

     

错误测试:SimpleConnectorTest.testConnection:22»   NoHostAvailable所有主持人都试过......

如果我在本地Ubuntu机器上运行它,这可以正常工作。我还尝试将本地应用程序与Amazon EC2实例上的远程Cassandra DB或本地Cassandra实例连接,一切正常。但是,RedHat服务器上具有相同cassandra yaml设置的相同应用程序将无法以本地模式连接。我可以使用cqlsh连接,然后我在9042上telnet,所以我认为没有阻塞端口的东西。

我尝试使用不同版本的Cassandra(Apache Cassandra 3.3和3.7以及DataStax Distribution 3.7)。由于我的RedHat实例无法访问yum存储库,因此我使用的是二进制tarball分发。

我的cassandra.yaml设置如下,但我也尝试了这些设置的不同替代方案,没有任何帮助:

listen_address: 127.0.0.1  
start_native_transport: true
native_transport_port: 9042 
start_rpc: true 
rpc_address: localhost
rpc_port: 9160

我希望有人可以告诉我如何调查这个问题。

0 个答案:

没有答案