如何每天备份我的ec2实例?

时间:2012-07-04 05:41:15

标签: amazon-s3 amazon-ec2 amazon-web-services amazon-ebs

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

这是备份EC2实例的正确方法吗?有人可以帮我指出恢复我的EC2实例的正确方法吗?

1 个答案:

答案 0 :(得分:45)

希望您的实例是EBS backed

如果是这样,您可以通过拍摄EBS快照来备份您的实例。这可以通过aws.amazon.com(手动),使用AWS Command Line Tools(可以在cron或Windows Task Scheduler中自动调度)或通过AWS API完成。

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

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

Automating Amazon EBS snapshots anyone have a good script or solution for this on linux

如果您安装了单独的存储设备,例如对于你的数据库,一定要备份它!

<强>更新

手动创建快照

要从实例创建AMI图像,并像其他人一样(在具有更多资源的实例中或平衡负载等):