天天看点

Lambda,AWS和Python的自动化管理操作 - 自动创建快照,删除快照

这一节看看如何通过boto3来管理EC2的快照。在实际生产环境中,豆子使用的是AWS提供的解决方案 EBS Snapshot Scheduler, 直接导入Cloudformation的stack,会自动配置Lambda函数和DynamoDB数据库,然后我们可以通过标签来进行设置。从学习的角度,我们直接来弄一个超简易的版本。我们可以直接写两个Lambda函数,一个进行创建,一个进行删除。

首先,设置一个tag标签

Lambda,AWS和Python的自动化管理操作 - 自动创建快照,删除快照

接下来创建Lambda函数

Lambda,AWS和Python的自动化管理操作 - 自动创建快照,删除快照

IAM Role的配置如下

具体函数如下所示:

然后在Cloudwatch里面设置一个计划任务,定期执行这个函数

Lambda,AWS和Python的自动化管理操作 - 自动创建快照,删除快照

这个是绑定了Role和触发器的示意图

Lambda,AWS和Python的自动化管理操作 - 自动创建快照,删除快照

执行之后,可以查看快照

Lambda,AWS和Python的自动化管理操作 - 自动创建快照,删除快照

在Cloudwatch里面查看print的输出日志,可以看见成功执行了

Lambda,AWS和Python的自动化管理操作 - 自动创建快照,删除快照

同样的方式,我们可以创建一个Lambda函数来删除快照

Lambda,AWS和Python的自动化管理操作 - 自动创建快照,删除快照

具体的函数如下:

同样可以创建计划任务执行函数

Lambda,AWS和Python的自动化管理操作 - 自动创建快照,删除快照

执行之后CloudWatch里面的print日志

Lambda,AWS和Python的自动化管理操作 - 自动创建快照,删除快照