亚马逊是否支持可以为每个单个AMI/EBS配置的任何类型的自动计划快照?
我的目标是定期将每个AMI备份本身而不依赖外部脚本,并且类似。
您可以使用AWS命令行工具来自动化EBS快照。只需在EBS卷上以所需的间隔安排CRON作业或类似于运行ec2-create-snapshot
命令。
,如果您不想安装命令行工具,也可以通过HTTP拨打API来做同样的事情。
有关创建EBS快照的更多信息,请参见链接。
http://docs.amazonwebservices.com/awsec2/latest/userguide/ebs-creating-snapshot.html
使用此python代码
from boto.ec2.connection import EC2Connection
from datetime import datetime
import sys
if __name__ == '__main__':
conn = EC2Connection('aws_access_key_id', 'aws_secret_access_key')
volumes_id={'vol-2354534'}
description = 'Created by crontab at ' + datetime.today().isoformat(' ')
for vol_id in volumes_id :
snapshot = conn.create_snapshot( vol_id ,description)
我创建了一个小的perl程序,https://github.com/sciclon/ebs_snapshots
某些功能: *程序以守护程序模式或脚本模式(crontab)
运行您只能选择本地附件或遥控器
您可以定义日志文件
您可以为每个卷数量的快照
定义您可以为每个卷定义它们之间的频率
频率和数量在达到极限的删除最古老的快照时,频率和数量将像"圆形旋转"一样工作。
您可以在一个步骤中重新调整数量,我的意思是,如果您有6个快照,并且在3中修改了数量,则该过程将自动重新调整它。
您可以定义"处方"执行,您可以在执行快照之前添加代码执行,例如,您想尝试使用卷或停止某些服务,或者可能检查实例加载。。父进程将等待退出代码" 0"表示成功,您可以根据退出代码定义是否继续。
您可以在拍摄快照后定义" Postscript"执行以执行任何脚本(例如,一封电子邮件告诉您)
您可以添加"受保护的快照"来跳过您定义的快照,我的意思是它们将仅在"只读"中,并且永远不会被删除。
您可以在守护程序模式下运行时重新配置脚本"飞行",脚本接受信号和IPC。
它具有"本地调查",以避免多次请求API。您可以在配置文件中添加或修改任何配置,而无需杀死该过程。
AWS管理控制台没有内置自动化来创建维护的EBS快照。您可以尝试使用脚本,第三方云管理控制台,具有EBS快照的基本自动化,或用于EC2 Instnaces的专用快照和基于快照的备份管理解决方案&EBS量,可在AWS市场或其他地方使用。
aws现在提出数据生命周期管理(请参阅文档),这可能会对您有所帮助。AWS将其定义为的一种方式,"安排并管理EBS快照的创建和删除"
您可以从EC2控制台访问它,并搜索" LifeCycle Manager"。然后,您被指导开始