Cassandra 集群重启后没有恢复?

Cassandra cluster is not recovering after restarting?

我重启了我的Cassandra集群,重启后显示其他节点不可用。但是当我通过访问那些服务器进行检查时,它显示 Cassandra 在那些服务器中是 运行。非常感谢您的帮助。

nodetool修复-输出

Repair session {session-id} for range (id] failed with error java.io.IOException: Cannot proceed on repair because a neighbor (/{ip}) is dead: session failed

Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address       Load       Tokens  Owns   Host ID                               Rack
UN  {ip1}  2.06 GB    256     22.6%  {token 1}  1b
DN  {ip1}   ?          256     24.5%  {token 2}  1c
DN  {ip1}   ?          256     28.9%  {token 3}  1c
DN  {ip1}    ?          256     24.0%  {token 4}  1d

需要注意的一件事是,您应该始终一次重启一个节点并等待它加入集群 (UN),然后再重启其他节点。

我假设所有节点之前都加入了集群,并且在重新启动后,它们不同步了。滚动重启所有节点(一次一个)并等待节点加入集群。

Cassandra 将通信和对等信息打印并存储在 system.peersystem.local 表中,它们可能如果在另一个节点仍处于加入状态时重新启动一个节点,则会失去同步。