当集群中的3个节点中有1个节点关闭时,Cassandra读取故障[关闭]

mbyulnm0  于 12个月前  发布在  Cassandra
关注(0)|答案(1)|浏览(225)

**已关闭。**此问题为not about programming or software development。目前不接受回答。

此问题似乎与a specific programming problem, a software algorithm, or software tools primarily used by programmers无关。如果您认为此问题与another Stack Exchange site的主题相关,可以发表评论,说明在何处可以回答此问题。
18天前关门了。
Improve this question
我们有一个复制因子为3的3节点群集。在写入期间,数据将插入到具有一致性级别(CL)仲裁的表中。node 1--11.21.1.26 node 2--11.21.1.27 node 3--11.21.1.28
在上面的配置中,我理解所有节点都有所有数据。
在其中一个维护窗口期间,节点2关闭。

$nodetool status
Datacenter: DC1
=======================**
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address    Load       Tokens  Owns  Host ID    RACK
DN  11.21.1.27  13.43 GiB  256     ?     aaaa      rack1
UN  11.21.1.26  13.85 GiB  256     ?     bbbb      rack1
UN  11.21.1.28  13.65 GiB  256     ?     cccc      rack1

个字符
有谁能解释一下为什么只有node 2(11.21.1.27)关闭了,而其他两个节点都在运行,node 3(11.21.1.28)的查询却失败了?
我希望查询可以从node 3和node 1工作,因为node 1和node 3已经启动。

42fyovps

42fyovps1#

所以我读到:
我们有一个复制因子为3的3节点群集。
但错误消息的这一部分与该语句冲突:

Cannot achieve consistency level QUORUM"
    info={\''required_replicas\': 1, \'alive_replicas\': 0,

字符串
如果RF真的是3,那么QUORUM的required_replicas应该是2,而不是1。
QUORUM的计算公式是(RF / 2)+ 1。我猜复制因子在keyspace上是1。
RF的配额==1:(1 / 2)== 0; 0 + 1 == 1
当RF为1时,数据行没有任何额外的副本。因此,当一个节点处于down状态时,大约有1/3的数据无法查询。
我会仔细检查键空间定义,因为它似乎没有被设置为RF为3。

相关问题