我目前正计划升级到2.0.7 cassandra版本。我的基本版本是2.0.3。到目前为止我还没有进行过升级,因此我希望能够完全确定正在做什么。有人可以解释除此之前需要做些什么。
最让我印象深刻的问题
答案 0 :(得分:1)
我是否必须将数据从2.0.3复制到2.0.7? 2.即使是滚动升级,我认为以下步骤也适用(除了从一个版本移动到另一个版本)。我的假设是对的?
如果您只是升级二进制文件,则可以保留所有数据并自动使用它。
我将在正在运行的应用程序上执行此操作。我计划在执行此操作时运行应用程序,因为我在本地仲裁中有足够的副本来满足读取和写入。这个想法有什么缺点吗?我喜欢cassandra这种操作,但想知道有任何潜在的问题吗?
正常的读写操作很好。在临时运行混合版本群集时,最好避免执行涉及流(修复)或拓扑更改(引导或退役节点)的任何操作。他们可能会工作,但他们没有得到官方支持,你更有可能遇到问题。
在执行此操作时,我将在运行的计算机中使用现有的2.0.3。如果2.0.7中有问题,我会再次启动2.0.3版本吗?只是想知道群集中的其他节点是否存在任何数据冲突?或者有快照来恢复数据是最好的选择吗?
您想拥有要从中恢复的快照。较新版本的Cassandra可能会使用旧版本无法读取的新SSTable或commitlog格式。