我们是否只能为AZ复制的Cassandra集群

时间:2017-01-23 22:40:17

标签: cassandra nodetool

由于我的Cassandra集群在三个可用区域中复制,因此我只想备份一个可用区域以降低备份成本。我还尝试在单个可用区域中恢复节点,并在测试环境中恢复了大部分数据。在生产中部署此解决方案之前,我想知道此方法是否存在任何缺陷。是否有人在您的生产集群中使用此方法?

注意:由于我定期备份,我知道在快照时我可能会发生其他两个AZ节点仲裁的更新,但这不是问题。

1 个答案:

答案 0 :(得分:0)

您只能备份特定的DC甚至节点。 AFAIK,唯一的缺点是您的数据是否一致/最新,并且由于您可以承受丢失一些数据,因此它应该不是问题。如果您(例如执行具有ALL一致性级别的写入),则数据应该在所有节点上都是最新的。

但是,您必须确保您的数据确实在多个a-z之间复制,方法是使用机架/直流属性或使用支持多个a-z的ec2开关。

编辑:

  

全局快照

     

运行nodetool快照一次只能在一个节点上运行。   这只会创建整个数据的部分备份。你会想要的   在群集中的所有节点上运行nodetool快照。但   最好在同一时间运行它们,这样你就没有了   从时间角度看零碎的数据。你可以这样做几个   不同的方法。第一个是使用并行ssh程序来   同时执行nodetool snapshot命令。第二,   是在每个节点上创建一个cron作业同时运行。   第二个假设您的节点具有同步的时钟,其中   卡桑德拉也依赖。

链接到该页面: http://datascale.io/backing-up-cassandra-data/