gpt4 book ai didi

Cassandra 节点需要数小时才能加入

转载 作者:行者123 更新时间:2023-12-04 02:05:32 25 4
gpt4 key购买 nike

我的 2 号集群进入了某种不一致的状态。在一个节点(称为节点 A)上,nodetool 状态正确显示 2 个节点。在另一个节点(称为 B)上时,它只显示一个节点,即它自己。经过几次尝试,我无法解决这个问题。所以我停用了节点 B。但是节点 A 上的节点工具状态仍然显示节点 B 处于 UN 状态。我不得不在节点 A 上重新启动 cassandra,以便它忘记节点 B。

但这又导致了另一个问题。我正在创建新节点(称为 C)以加入节点 A 的集群。但是该节点需要几个小时。已经六个小时了,不知道最后能不能加入成功。

查看节点 C 的调试日志表明节点 B(已退役的节点)造成了问题。 C节点的日志不断显示:

DEBUG [GossipTasks:1] 2017-04-29 12:38:40,004 Gossiper.java:337 - Convicting /10.120.8.53 with status removed - alive false

节点 A 上的 Nodetool 状态显示节点 C 正按预期加入状态。

Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns Host ID Rack
UJ 10.120.8.113 1006.97 MiB 256 ? f357d8d0-2379-43d8-8ae5-62224191fb6c rack1
UN 10.120.8.23 5.29 GiB 256 ? 596260a0-785a-435c-a3f3-632f56c5c882 rack1

几个小时后,节点 C 的负载逐渐增加。

我检查了 system.peers 是否包含节点 B。但是该表包含零行。

我正在使用 cassandra 3.7。

出了什么问题。我该怎么做才能避免在节点 A 上丢失数据并仍然扩展集群?

最佳答案

在节点 C 上运行 nodetool netstats 并查看是否有进展。还要查看 nodetool compactionstats,查看待处理的压缩量,并查看它是否随时间下降。

如果引导失败,尝试重启节点。

作为替代方案,您可以删除节点 C 并再次添加它,并将 auto_bootstrap 设置设置为 false。节点启动后,运行 nodetool rebuild,并在此过程后运行 nodetool repair - 应该是常规 Bootstrap 的更快替代方案。

关于Cassandra 节点需要数小时才能加入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43696127/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com