datastax代理无法连接错误

看到Opscenter Agents的问题。 Opscenter报告代理未连接,并且在每个节点上的agent.log中,它们都报告以下内容:

com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s) tried for query failed (tried: /127.0.0.1:9042 (com.datastax.driver.core. TransportException: [/127.0.0.1:9042] Cannot connect))

我不知道这是什么时候开始的,但是它是最近的,以前工作正常。

我们正在运行datastax-agent版本5.1.0和Cassandra版本:2.1.3。

任何提示在哪里看,将不胜感激。

编辑:我正在离开原来的答案块下面引用,但请不要试图按照它。 这里提供的解决scheme是正式的,并经过testing工

正如文件中所提到的:

注意:从OpsCenter版本5.1开始,address.yaml中的主机选项现在确定代理连接到哪个节点。 有关configuration更改和迁移path的更多信息,请参阅升级指南。

所以,只需改变你的address.yaml来反映这些改变,然后重新启动代理。 作为一个例子,在我们的例子中,我们进行了如下改变:

 stomp_interface: 10.0.10.10 local_interface: 10.0.10.20 

对此:

 stomp_interface: 10.0.10.10 hosts: ["10.0.10.20"] 

新的hosts属性是一个string数组,所以如果您需要多个接口,则可以根据需要定制它。 但是上面的标准设置应该足够了。

原来的答案在下面,请忽略它。

自升级到Opscenter 5.1.0以来,我们遇到同样的问题。 目前唯一的解决方法是更改cassandra.yaml中的rpc设置:

rpc_address:0.0.0.0

我知道这不是一个在政治上正确的方式,但它没有破坏所有的工作,而是让你的OpsCenter工作,直到更正式的方式来。

PS:我真的不明白为什么有人会低估这个问题,这是一个严重的问题,它打破了生产系统。