如何自动恢复 Cassandra 备份(快照)?

如何自动恢复 Cassandra 备份(快照)?

我确实有一个单节点 Cassandra EC2 实例 (apache-cassandra-3.10),我每天都会在其中拍摄快照 (备份) 并将其上传到 AWS S3。我还备份了完整的“架构”和“初始令牌”,并将其保存在 S3 上。我已成功为备份任务创建了一个 Bash shell 脚本,该脚本可在一次运行中执行上述所有操作。

但是我找不到任何自动化方法/脚本来在新实例上恢复整个备份。

答案1

您是否自己拍摄了 EBS 快照,或者其他自定义快照?如果您不拍摄 EBS 快照,为什么不呢?

EBS 快照很容易变成一个正常工作的服务器。这是对你的问题最简单、最实用的回答。缺点是,如果在拍摄快照时正在写入卷,则可能不一致。如果你可以安排它,并在快照启动时刷新/静止应用程序哪怕一秒钟,服务器就可以在拍摄快照时恢复。你必须看看如何使用 Cassandra 做到这一点。

我不会为了快照而刷新/静止服务器,但我没有运行任何关键任务。我还有应用程序级备份和 RTO/RPO,这意味着如果需要,我可以手动从快照中恢复。

或者,您可以编写脚本来构建 VPC、来自包含您的软件的自定义 AMI 的服务器以及使用 CloudFormation 从应用程序级备份安装数据,但这超出了答案的范围 - 您需要学习 CloudFormation。

相关内容