我在3.0.14上有4个节点,我不得不将其中2个升级到3.11.2并退出其他2.首先我逐个退出2个节点。之后我在其他2个节点上停止了cassandra 3.0.14并交替安装了3.11.2版本。但是,在两个节点的系统日志中,我看到以下内容:
INFO [GossipStage:1] 2018-03-12 16:28:50,621 Gossiper.java:1193 - 群集中至少有一个3.0节点 - 将存储和 宣布兼容的架构版本
我不明白为什么它说我的群集中只有2个节点现在运行3.11.2时仍有一个3.0节点。
我还在两个节点上使用以下命令来检查版本
nodetool version
返回的命令" ReleaseVersion:3.11.2"在这两种情况下。
PS:我已经添加cassandra-3.0作为此问题的标签,因为我无法找到cassandra-3.1。
答案 0 :(得分:3)
它只是一条信息消息,并不代表任何错误。所有Cassandra节点都保存彼此的信息,例如令牌范围,IP,版本等。由于您同时停止了两个Cassandra节点,这意味着他们都认为另一个节点仍在Cassandra 3.0上,直到他们不知道为止。
所以会发生的情况是,当您使用3.11启动节点时,它将首先更新有关自身的信息。它会注意到它本身已更新到3.11,但群集中还有其他3.0节点。现在它将把这些信息发送给所有其他节点,通知它们自己已经更新到3.11。