我有一种情况,我们需要将数据从一个 Riak 集群迁移到另一个集群,然后删除旧集群。戒指尺寸相同,甚至区域相同。我们需要这样做以将实例升级到 AL2。在 Prod 上是否有一种干净的方法可以做到这一点,而不会丢失实时数据?
问问题
54 次
1 回答
0
这个问题的答案可能与您的 Riak KV 版本有关。如果您拥有 Riak KV 2.2.3 或更早版本的开源版本,则需要在继续之前就地升级到 Riak KV 2.2.6。请参阅https://www.tiot.jp/riak-docs/riak/kv/2.2.6/setup/upgrading/version/以及 https://files.tiot.jp/riak/kv/2.2/2.2上的软件包。 6/
对于 Riak KV 2.2.3 及更早版本的企业版或 Riak KV 2.2.6 或更高版本的开源版本,您可以使用多数据中心复制 (MDC)。
同时使用这两种方法进行正确复制并防止数据丢失:
- fullsync 复制将在第一次运行时复制所有存储的数据,然后在后续运行中复制任何丢失的数据。
- 实时复制将几乎实时地复制所有事务。
如果您随后将其设置为双向复制(让每个集群复制到另一个集群以实现全同步和实时),那么您将能够无缝地将生产环境从一个集群切换到另一个集群,而不会出现任何问题。一旦您对一切都按预期工作感到满意,您就可以杀死旧集群。
请参阅https://www.tiot.jp/riak-docs/riak/kv/2.2.6/using/cluster-operations/v3-multi-datacenter/上的复制文档
于 2021-09-03T08:48:46.090 回答