如何自动化 EC2 实例快照?

问题描述

如何每 X 次自动执行一次 EC2 实例快照? 快照是指虚拟机的所有数据、状态和配置的映像,因此我可以快速恢复它。是否有用于此目的的 AWS 服务?最好的方法是什么?

我的 EC2 实例类型是 m5.2xlarge

解决方法

您可能想要调查名为 AWS Backup 的服务。我只读过它,因为它相对较新,并且在它可用之前我已经使用 Lambda 函数实现了一个自定义解决方案,

如果我再来一次,我会用 AWS Backup

,

一些选项是;

  1. 使用AWS Back Up service

  1. 使用 AWS-CreateImageAWS-CreateSnapshot 安排 AWS Systems Manager Automation AWS EventBridgeAWS CloudWatch(选择其中之一或两者都取决于您的用例)
,

您提到了“虚拟机的所有数据、状态和配置”。这实际上由两部分组成:

  • 磁盘内容
  • Amazon EC2 虚拟机(“实例”)的配置

虚拟机配置

备份通常只包含磁盘的内容。启动替换机时指定虚拟机的配置,包括:

  • 实例类型
  • 子网和 IP 地址
  • 标签
  • IAM 角色

无法“备份”这些设置,但您可以创建一个 CloudFormation 模板来启动具有匹配设置的实例。然后,这可以成为一个可重复的自动化过程。

磁盘内容

备份磁盘内容以允许启动等效实例的最简单方法是创建亚马逊系统映像 (AMI)。 AMI 包含连接到实例的所有磁盘的副本。

然后可以从 AMI 启动一个新的 Amazon EC2 实例,它将在磁盘上包含完全相同的数据。 (AMI 由 Amazon EBS 快照以及一些有关实例配置的元数据组成。新实例可以从 AMI 启动,但不能从 EBS 快照启动。)

如果您希望自动定期创建 AMI,您可以使用 Amazon Data Lifecycle Manager

见:New – Lifecycle Management for Amazon EBS Snapshots | AWS News Blog

我还建议您通过从 AMI 启动新的 EC2 实例来测试备份

,

AWS 在 EC2 仪表板中有一项名为 Lifecycle Manager 的服务。借助它,您可以自动执行 EBS 卷的备份过程。

  • 您可以通过以下方式为 EBS 快照定义备份和保留计划 根据为卷定义的标签创建生命周期策略。

  • 有了这个功能,你不再需要依赖自定义脚本来 创建和管理您的备份。

  • 此功能现已在美国东部(弗吉尼亚北部)推出 西部(俄勒冈)和欧洲(爱尔兰)AWS 区域,无需额外支付 成本。