创建 Amazon EBS-backed AMI
可以从 Amazon EC2 实例或从 Amazon EC2 实例的根设备快照创建自己的 Amazon EBS-backed AMI。
要从实例创建 Amazon EBS-backed AMI,请先使用现有的 Amazon EBS-backed AMI 启动一个实例。此 AMI 可以是从 Amazon Web Services Marketplace 获得的 AMI,可以是使用 VM Import/Export 创建的 AMI,也可以是能够访问的任何其他 AMI。自定义满足特定要求的实例后,创建新的 AMI 并加以注册。然后,即可使用新的 AMI 启动具有自定义项的新实例。
下述过程适用于由加密的 Amazon Elastic Block Store (Amazon EBS) 卷(包括根卷)支持的 Amazon EC2 实例,也适用于未加密卷。
用于由实例存储支持的 AMIs 的 AMI 创建过程有些不同。有关更多信息,请参阅 创建实例存储支持的 AMI。
关于从实例创建 AMI 的概述
以下图表概述了从运行中的 EC2 实例创建 Amazon EBS-backed AMI 的流程:从现有 AMI 开始,启动实例,自定义该实例,从该实例创建新 AMI,并最终启动新 AMI 的实例。图中的数字与以下描述中的数字匹配。
- 1 – AMI #1:从现有的 AMI 开始
-
查找类似于您要创建的 AMI 的现有 AMI。这可以是您从 Amazon Web Services Marketplace 获得的 AMI、您使用 VM Import/Export 创建的 AMI 或您可以访问的任何其他 AMI。您将根据自己的需求自定义此 AMI。
在图中,EBS 根卷快照 #1 表示 AMI 为 Amazon EBS-backed AMI,并且有关根卷的信息存储在此快照中。
- 2 – 从现有 AMI 启动实例
-
配置 AMI 的方法是从您希望作为新 AMI 基础的 AMI 启动实例,然后自定义该实例(在图中以 3 表示)。然后,您将创建一个包含自定义项的新 AMI(在图中以 4 表示)。
- 3 – EC2 实例 #1:自定义实例
-
连接到您的实例并根据您的需求对其进行自定义。您的新 AMI 将包含这些自定义项。
您可以对您的实例执行以下任何操作,以便自定义该实例:
-
安装软件和应用程序
-
复制数据
-
通过删除临时文件和对您的硬盘进行碎片整理来缩短启动时间
-
附加其他 EBS 卷
-
- 4 – 创建映像
-
当您从实例中创建 AMI 时,Amazon EC2 先切断实例的电源再创建 AMI,以确保创建过程中实例上的所有内容均停止并保持一致状态。如果您确信您的实例处于适合 AMI 创建的一致状态,则可以告知 Amazon EC2 不断电和重启实例。一些文件系统 (例如 XFS) 可以冻结和解冻活动,因此能在不重启实例的情况下安全创建映像。
在 AMI 创建过程中,Amazon EC2 会创建您实例的根卷和附加到您实例的任何其他 EBS 卷的快照。在注销 AMI 并删除快照之前,您需要支付快照的费用。如果有任何附加到实例的卷进行了加密,则新 AMI 只会在支持 Amazon EBS 加密的实例上成功启动。
根据卷的大小,可能需要几分钟才能完成 AMI 创建过程 (有时长达 24 小时)。您可能会发现先创建卷的快照,然后再创建 AMI 后会更高效。这样,创建 AMI 时就只需创建小的增量快照,且创建过程完成得更快 (快照创建的总时间保持不变)。
- 5 – AMI #2:新 AMI
-
该过程完成之后,您便具有从实例的根卷创建的新 AMI 和快照(快照 #2)。如果除了根设备卷之外,您还向实例添加了实例存储卷或 EBS 卷,则新 AMI 的块储存设备映射包含这些卷的信息。
Amazon EC2 自动为您注册 AMI。
- 6 – 从新 AMI 启动实例
-
您可以使用新 AMI 启动实例。
- 7 – EC2 实例 #2:新实例
-
当您使用新 AMI 启动实例时,Amazon EC2 会使用快照为实例的根卷创建新 EBS 卷。如果您在自定义实例时添加了实例存储卷或 EBS 卷,则新 AMI 的块储存设备映射包含这些卷的信息,并且您从新 AMI 启动的实例的块储存设备映射自动包含这些卷的信息。新实例的块储存设备映射中指定的实例存储卷是新的,不包含用于创建 AMI 的实例的实例存储卷中的任何数据。EBS 卷上的数据会持久保留。有关更多信息,请参阅Amazon EC2 实例上卷的块设备映射。
当您从由 EBS 支持的 AMI 创建新实例时,应该先初始化其根卷及任何额外的 EBS 存储,然后再将其投入生产。有关更多信息,请参阅《Amazon EBS 用户指南》中的初始化 Amazon EBS 卷。
从实例创建 AMI
如果您有现有实例,则可以通过该实例创建 AMI。
从快照创建 AMI
如果您有实例根设备卷的快照,则可以通过此快照创建 AMI。
注意
在大多数情况下,适用于 Windows、RedHat、SUSE 和 SQL Server 的 AMI 需要在 AMI 上提供正确的许可信息。有关更多信息,请参阅 了解 AMI 账单信息。从快照创建 AMI 时,RegisterImage
操作会从快照的元数据获取正确的账单信息,但这需要存在相应的元数据。要验证是否应用了正确的账单信息,请检查新 AMI 上的平台详细信息字段。如果该字段为空或不匹配预期的操作系统代码(例如 Windows、RedHat、SUSE 或 SQL),则 AMI 创建失败,您应丢弃 AMI 并按照从实例创建 AMI中的说明进行操作。