更换死节点和重启死节点之间是否存在任何差异,特别是对于种子节点?实际上,我对如何重新启动死种子节点感到有些困惑。
当种子节点的进程崩溃时,我是否应该重新启动它而不对cassandra.yaml进行任何更改?或者,像替换种子节点一样,我应该从每个节点上的种子列表(cassandra.yml)中删除其IP地址吗?
documentation尚不清楚。它只涉及如何用另一台机器替换死节点。
谢谢你
答案 0 :(得分:2)
如果您只是重新启动死亡的种子节点,那么在重新启动之前您不需要更改cassandra.yaml
文件。只要您解决了导致节点死亡的任何问题,并且您的节点的停机时间不超过gc_grace_seconds
(请参阅下面的注释),那么重新启动不应成为问题。
您链接的文档中提到的问题围绕替换死种子节点。替换种子节点的问题是,如果将新节点配置为种子,则新节点将不会引导到群集中。在这种情况下,群集中的不同节点应该被提升为种子节点。
注意:文档的About Deletes部分会警告将节点恢复到很长一段时间。具体来说,长于为gc_grace_seconds
设置的值(或者设置的最短值,如果您在任何单个表上更改了它)。
...如果某个节点已关闭 如果长于宽限期,节点可能会错过删除,因为 墓碑在gc_grace_seconds后消失。卡桑德拉总是尝试 在节点重新启动时重播错过的更新。之后 失败,运行节点修复进行修复是最佳做法 将节点恢复时,所有副本中的不一致 进入集群。如果节点没有回来 gc_grace,_seconds,删除节点,擦除它,再次引导它。