让具有混合主要版本的节点运行数月可以吗?

Dmi*_*lov 6 cassandra upgrade

我们计划升级到 Cassandra 4(目前为 3.x)。

问题是 -> Cassandra 集群是否可以在混合模式下长时间运行(数月)。像一些数据中心 Cassandra 4.0.x 和一些 Cassandra 4.1.x 一样?如果不允许,最坏的情况会发生什么?

提前致谢。

Eri*_*rez 7

我们不建议在“混合模式”下运行集群,特别是在节点运行 Cassandra 的不同主要版本超过 1 或 2 天的情况下。

当集群处于混合模式时,您将遇到一长串操作限制。它们包括以下内容:

  • 由于主要版本之间的架构版本不兼容,因此无法执行架构更改。
  • 无法TRUNCATE表。
  • 无法执行任何需要流式传输的操作,包括修复、拓扑更改(节点添加、退役)和批量加载sstableloader

这些限制在生产环境中将非常具有挑战性,因为它们将妨碍您维持集群最佳性能的能力。例如,如果遇到硬件故障,则在所有节点均已升级之前,您将无法将节点引导回集群。

我们建议您至少升级所有 DC 中所有节点上的二进制文件。然后,您可以延迟 SSTable 升级,直到您能够安排它们。干杯!

  • @ErickRamirez 该帖子提到从 v3 升级到 v4,但询问如何运行混合 4.0 和 4.1。 (3认同)

小智 3

不,不建议在单个集群中保留混合版本数月。除其他事项外,考虑运行混合模式集群版本的一个缺点如下:

在混合版本节点之间传播架构更改可能会产生意外结果。因此,您应该采取措施防止升级过程期间架构发生更改。

有关升级步骤的完整列表,请参阅此文档。干杯!