我有一个带两个数据中心的cassandra集群。 在数据中心2中,我有一个具有复制因子3的键空间。 我想修复数据中心2中的所有键空间。 我尝试运行:
nodetool repair --in-local-dc --full -j 4
但是此命令不能修复所有键空间。有人知道这是否是故意的行为吗? Cassandra日志不表示任何问题
答案 0 :(得分:0)
因此,在指定源DC时,我还遇到了多DC维修问题。我不知道这些特定于DC的修复标志是否有错误,但是我发现,要确保仅特定节点参与修复,最好的方法就是指定每个修复节点。
nodetool repair keyspace_name -hosts 10.6.8.2 -hosts 10.6.8.3 -hosts 10.6.8.1
-hosts 10.6.8.5 -hosts 10.6.8.4 -hosts 10.1.3.1 -full
请注意,我的目标是在SSH进入10.1.3.1时运行此修复。还必须用-hosts
标志指定要在必须上运行修复的节点。另外,请确保列出了源DC中的每个节点,否则您将收到有关缺少源令牌范围的错误。
尝试一下,看看是否有帮助。