Cassandra datastax 给出错误“所有主机尝试查询失败”
Posted
技术标签:
【中文标题】Cassandra datastax 给出错误“所有主机尝试查询失败”【英文标题】:Cassandra datastax gives error "All host(s) tried for query failed" 【发布时间】:2021-09-11 17:37:22 【问题描述】:今天我在使用 datastax 连接到 cassandra 时遇到了一个问题。我得到了错误 “所有尝试查询的主机都失败了”。最终我发现这是由于 SSL 终止导致连接没有发生。
问题:
-
我从 Tableplus 等本地客户端连接到 cassandra。我已将 SSL 设为“已禁用”,但我仍然能够连接。为什么我在使用 datastax 驱动程序时无法以相同的方式连接。
我的 Nodetool 状态如下所示
Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns (effective) Host ID Rack
UN 172.17.0.3 70.68 KiB 256 100.0% cf65f26b-db8e-490b-bd38-ec8d74112b67 rack1
#
#
【问题讨论】:
您能否编辑您的问题以共享 cassandra 的 nodetool 状态?我正在通过同样的问题。我想我可以帮助你。您是否尝试做一个复制数据库? 你使用的是 Cassandra 的哪个版本? 你能显示所有的堆栈跟踪吗? 【参考方案1】:感谢@Luciana 两位的参与。但这里最终对我有用。最初我没有空的clusterBuilder.withSSL();
。但后来
之前
Cluster.Builder clusterBuilder = Cluster.builder();
if (sslEnabled)
clusterBuilder.withSSL(getSslOptions());
之后
Cluster.Builder clusterBuilder = Cluster.builder();
clusterBuilder.withSSL();
if (sslEnabled)
clusterBuilder.withSSL(getSslOptions());
我通过 Datastax 文档找到了 https://docs.datastax.com/en/developer/java-driver/3.0/manual/ssl/
希望这会有所帮助。我并不声称这可以解决所有类似的错误,但这可能是可以解决此连接问题的原因之一。
【讨论】:
以上是关于Cassandra datastax 给出错误“所有主机尝试查询失败”的主要内容,如果未能解决你的问题,请参考以下文章
将单个令牌节点添加到现有的 datastax cassandra 集群和数据传输不起作用
NoSuchMethodException 使用 datastax cassandra 映射器
使用 datastax 进行错误的 SOlr 索引。从 1 个节点扩展到 2 个 cassandra 节点和 1 个搜索节点
cassandra datastax 编写生成的代码时出现意外错误:java.lang.NullPointerException