51

我在AWS中有一个基于社区 AMI 的 Linux EC2实例。现在我想每天备份我的实例,并将该图像上传到S3

这是备份我的 EC2 实例的正确方法吗?谁能帮我指出备份我的 EC2 实例的正确方法?

4

1 回答 1

46

希望您的实例是EBS 支持的。

如果是这样,您可以通过拍摄 EBS 快照来备份您的实例。这可以通过 aws.amazon.com(手动)、使用 AWS 命令​​行工具(可以根据需要在 cron 或 Windows 任务计划程序中自动和计划)或通过 AWS API 来完成。

您希望确保在快照过程中不会对数据库备份文件的状态进行任何更改。当我对在 Ubuntu 上运行的 MySQL 使用这种策略时,我使用了一个脚本来确保一致的快照。该脚本使用 XFS 文件系统的功能在快照期间冻结文件系统。在那个部署中,快照只用了 2-3 秒,并且是在非常非高峰时间执行的。任何网站访问者都会遇到 2-3 秒的延迟。对于 Windows,如果无法为快照重新启动设备(您在晚上没有维护窗口),我会创建一个单独的 EBS 设备(例如用于快照的“S:\”设备),使用 SQL Server 备份工具在该其他设备上创建一个 .bak 文件,然后创建该单独 EBS 设备的 EBS 快照。

有关编写备份脚本的详细信息,请参阅此相关问题:

自动化 Amazon EBS 快照 任何人在 linux 上都有一个好的脚本或解决方案

如果您为数据库安装了单独的存储,请确保您也备份了它!

更新

要手动创建快照,

从实例创建 AMI 映像并启动其他类似的实例(在具有更多资源或平衡负载等的实例中):

于 2012-07-04T05:46:40.293 回答