拍摄运行MongoDB的EC2实例的快照的最佳方法是什么?

时间:2016-01-04 07:38:54

标签: mongodb amazon-web-services amazon-ec2 aws-cli

我想自动拍摄附加到运行我们的生产MongoDB副本集的主节点的EC2实例的卷的快照。在尝试衡量谷歌的陷阱和最佳实践时,我发现在创建快照但未启用日记功能时非常可能存在数据不一致和损坏,这在我们的案例中。

所以我的问题是 - 继续执行window.open(url, "popupWin"); 来获取数据的干净备份是否安全? 此外,我计划通过每周运行一次的cron作业运行相同的命令。这是一个足够好的计划来安排备份吗?

1 个答案:

答案 0 :(得分:2)

对于EC2实例上的MongoDB,我执行以下操作:

  1. mongodump到EBS卷上的备份目录
  2. 压缩mongodump输出目录
  3. 将zip文件复制到S3存储桶(启用加密和版本控制)
  4. 启动EBS卷的快照
  5. 我编写了一个脚本来执行上述任务,并安排它通过cron每天运行。现在,您将在EC2实例,EBS快照和S3上备份数据库。您可以通过在S3存储桶上启用跨区域复制来更进一步。

    此设置提供多级备份。您现在应该能够在EC2发生故障,EBS故障,AWS可用区故障甚至完整AWS区域故障时恢复数据库。

    我建议阅读有关EC2部署的官方MongoDB文档: https://docs.mongodb.org/ecosystem/platforms/amazon-ec2/ https://docs.mongodb.org/ecosystem/tutorial/backup-and-restore-mongodb-on-amazon-ec2/