我使用的是Cassandra(3.5),它有20个节点,data center-1有10个节点,data center-2有10个节点,数据非常庞大。所有主机都属于传统主机。现在我们有了新一代的主机,比如说第二代。
我已经尝试添加新节点和退役旧节点。但这将是一个领带消耗。
Q1:如何将所有主机从传统主机迁移到第二代主机?实现这一目标的最佳方法是什么?
Q2:回滚策略是什么?
Q3:最后,一旦我迁移到第二代主机,我如何验证数据?
发布于 2020-06-04 19:19:00
如果只是用新的硬件替换节点,保持相同的节点数,那么这很简单(操作应该在每个节点上完成):
nodetool disableautocompaction的自动压缩-这有助于更快地执行步骤5rsync将数据从旧节点拷贝到新节点(这可能需要很长时间)nodetool drain并停止旧节点rsync同步自初始复制以来发生的更改(应相对较快)这是因为Cassandra节点是由存储在本地表中的UUID标识的,所以更改IP不会影响操作。
备注:将来,如果您需要替换节点(不是如上所述,而是完全死掉),请使用procedure of node replacement -在这种情况下,您不会像执行解任务然后重新添加节点时那样,两次流式传输数据。
https://stackoverflow.com/questions/62191756
复制相似问题