【发布时间】:2020-12-13 07:57:40
【问题描述】:
我有一个带有 NetworkTopologyStrategy 的六节点 Cassandra 集群,这是我的架构:
Rack1
Cassandra-01
Cassandra-02
Rack2
Cassandra-03
Cassandra-04
Rack3
Cassandra-05
Cassandra-06
我们使用 CL=QUORUM 和复制因子 3 进行读/写,因此从技术上讲,我们可以容忍单个 RACK 故障(从机架中丢失 2 个节点)。
例如,我向 Cassandra 集群 (CL=QUORUM,RF=3) 写入数据,而 Rack3 将离线(硬件故障),我总共有 4 个节点。理论上我应该能够向 Cassandra 写入和读取数据,因为一致性级别满足。但是当我使用 [Cassandra 计算器] 时,它会说:
您可以在丢失 1 个节点的情况下幸免于难,而不会影响应用程序。
和
您可以在丢失 1 个节点的情况下幸存下来而不会丢失数据。
但为什么只有 1 个节点?
【问题讨论】: