如何在进程崩溃后重新启动种子节点?

时间:2015-05-18 11:16:59

标签: cassandra

更换死节点和重启死节点之间是否存在任何差异,特别是对于种子节点?实际上,我对如何重新启动死种子节点感到有些困惑。

当种子节点的进程崩溃时,我是否应该重新启动它而不对cassandra.yaml进行任何更改?或者,像替换种子节点一样,我应该从每个节点上的种子列表(cassandra.yml)中删除其IP地址吗?

documentation尚不清楚。它只涉及如何用另一台机器替换死节点。

谢谢你

1 个答案:

答案 0 :(得分:2)

如果您只是重新启动死亡的种子节点,那么在重新启动之前您不需要更改cassandra.yaml文件。只要您解决了导致节点死亡的任何问题,并且您的节点的停机时间不超过gc_grace_seconds(请参阅下面的注释),那么重新启动不应成为问题。

您链接的文档中提到的问题围绕替换死种子节点。替换种子节点的问题是,如果将新节点配置为种子,则新节点将不会引导到群集中。在这种情况下,群集中的不同节点应该被提升为种子节点。

注意:文档的About Deletes部分会警告将节点恢复到很长一段时间。具体来说,长于为gc_grace_seconds设置的值(或者设置的最短值,如果您在任何单个表上更改了它)。

  

...如果某个节点已关闭   如果长于宽限期,节点可能会错过删除,因为   墓碑在gc_grace_seconds后消失。卡桑德拉总是尝试   在节点重新启动时重播错过的更新。之后   失败,运行节点修复进行修复是最佳做法   将节点恢复时,所有副本中的不一致   进入集群。如果节点没有回来   gc_grace,_seconds,删除节点,擦除它,再次引导它。