当我尝试在我的Cassandra集群中停用一个节点时,该过程开始(我看到活动流从节点流出到解除集群中的其他节点(使用vnodes)),但是稍后延迟{{ 1}}存在以下错误消息。
我可以反复运行nodetool decommission,它会开始将数据流传输到其他节点,但到目前为止总是存在以下错误。
为什么我会看到这个,有没有办法可以安全地停用此节点?
nodetool decommission
答案 0 :(得分:1)
暗示的切换管理器正在检查提示是否需要在此期间关闭这些提示 退役,以便提示不会丢失。你很可能有很多提示,或者 一堆墓碑,或表中的某些东西导致查询超时。你不是 在超时之前看到日志中的任何其他异常是吗?提高读取超时 在退出它们之前节点上的句点,或者手动删除提示CF,应该 最有可能得到你的过去。如果你删除它们,那么你需要确保你 完成所有的解除后,运行完整的群集修复,以传播数据 从你删除的任何提示。
答案 1 :(得分:0)
简短的回答是,我试图退役的节点因其持有的数据量而功能不足。在撰写本文时,处理具有任意数据量的节点所需的资源似乎是合理的最低限度,这似乎与AWS i2.2xlarge提供的邻域相似。特别是,旧的m1实例允许您在每个节点上存储比内存更多的数据,并且可用的计算资源可以支持它,从而让您遇到麻烦。