单群集2节点数据中心,用于复制测试关闭1个节点,然后在尝试在其他节点中运行select查询时出错。
而且,一致性级别为1,复制因子为2。
cassandra@cqlsh>从test\u telecom.network4g中选择*;servererror:com.google.common.util.concurrent.uncheckedexecutionexception:com.google.common.util.concurrent.uncheckedexecutionexception:java.lang.runtimeexception:org.apache.cassandra.exceptions.readtimeoutexception:操作超时-仅收到1个响应。
cassandra@cqlsh>从test\u telecom.network4g中选择*;servererror:com.google.common.util.concurrent.uncheckedexecutionexception:com.google.common.util.concurrent.uncheckedexecutionexception:java.lang.runtimeexception:org.apache.cassandra.exceptions.unavailableexception:无法实现一致性级别仲裁
2条答案
按热度按时间yvgpqqbh1#
你怎么看你的cl=1?在第二个查询中,您的查询似乎正在请求cl=quorum。那样的话,你就失败了。2节点群集的仲裁为2。你只有一个节点。在运行查询之前,请在cqlsh中键入以下内容:
一致性本地\u one<…再次运行查询…>
应该有用。如果在关闭节点后甚至无法登录到cql,则您使用的身份验证信息仅存在于不可用的节点上(如果dse将system\u auth和dse\u security更改为rf>1,请运行修复,然后重试)。
-吉姆
busg9geu2#
它可能与前面的问题有关-如果您有身份验证,并且使用用户身份验证
cassandra
,这需要QUORUM
用于身份验证。用户需要定期重新认证。