将cassandra从1.1.2迁移到1.2.6

将cassandra从1.1.2迁移到1.2.6,cassandra,Cassandra,我目前的cassandra版本是1.1.2,它是用单节点集群实现的,我想用环中的多个节点升级它1.2.6。将其直接迁移到1.2.6是一种正确的方法,还是我应该按照版本进行迁移 我从这个链接找到了升级步骤 这两个版本之间还有9个其他版本 我将两个集群节点从1.1.6迁移到1.2.6,没有任何问题,也没有逐个版本进行迁移。无论如何,您应该仔细研究一下: 因为1.2版有很多新功能,比如partioners,所以您可能需要更改集群的一些配置。您可以直接跳到C1.2.6 最近,我们将4节点集群从C1.

我目前的cassandra版本是1.1.2,它是用单节点集群实现的,我想用环中的多个节点升级它1.2.6。将其直接迁移到1.2.6是一种正确的方法,还是我应该按照版本进行迁移

我从这个链接找到了升级步骤


这两个版本之间还有9个其他版本

我将两个集群节点从1.1.6迁移到1.2.6,没有任何问题,也没有逐个版本进行迁移。无论如何,您应该仔细研究一下:


因为1.2版有很多新功能,比如partioners,所以您可能需要更改集群的一些配置。

您可以直接跳到C1.2.6

最近,我们将4节点集群从C1.0.9迁移到C1.2.8,没有出现任何问题。这是一次滚动升级,即一次升级一个节点,每次升级一个节点后,允许群集稳定(取决于升级期间的流量)

以下是我们遵循的步骤:

在每个节点上执行以下操作

  • 运行Disablegossip和disablethrift,使此节点被其他节点视为关闭
  • 冲洗/排空memtables,运行压缩以合并SSTables
  • 拍摄快照并启用增量备份
  • 这将阻止所有其他节点/客户端写入此节点,并且由于memtables被刷新到磁盘,启动时间很快,因为它不需要遍历提交日志
  • 停止Cassandra(尽管此节点已关闭,但集群可用于写/读,因此零停机时间)
  • 使用sstableupgrade将sstables升级为新的存储格式
  • 在新位置安装/卸载Cassandra 1.2.8
  • 将升级的SST表移动到适当的位置
  • 通过手动差异将以前版本和当前版本中的Cassandra.yaml合并(需要详细说明差异)
  • 开始卡桑德拉
  • 观察启动消息,以确保节点顺利启动,并以混合的1.0.x/1.2.x显示在环中