创建一个由 Amazon EBS 支持的 Linux AMI
要创建 Amazon EBS 支持的 Linux AMI,请通过从 Amazon EBS 支持的现有 Linux AMI 启动的实例开始进行。这可以是您从 AWS
Marketplace 获得的 AMI、您使用 AWS Server Migration Service
下述过程适用于由加密的 Amazon Elastic Block Store (Amazon EBS) 卷(包括根卷)支持的 Amazon EC2 实例,也适用于未加密卷。
用于由实例存储支持的 AMIs 的 AMI 创建过程有些不同。有关 Amazon EBS 支持的实例和实例存储支持的实例之间的差别,以及如何确定实例的根设备类型的更多信息,请参阅根设备存储。有关创建实例存储支持的 Linux AMI 的更多信息,请参阅创建由实例存储支持的 Linux AMI。
有关创建 Amazon EBS 支持的 Windows AMI 的更多信息,请参阅 Amazon EC2 用户指南(适用于 Windows 实例) 中的创建 Amazon EBS 支持的 Windows AMI。
创建 Amazon EBS 支持的 AMIs 的概述
首先,从类似于您要创建的 AMI 的 AMI 启动实例。您可以连接到您的实例并进行自定义。正确配置实例后,通过在创建 AMI 和映像之前停止实例来确保数据完整性。当您创建 Amazon EBS 支持的 AMI 时,我们会自动为您注册它。
Amazon EC2 先切断实例的电源再创建 AMI,以确保创建过程中实例上的所有内容均停止并保持一致状态。如果您确信您的实例处于适合 AMI 创建的一致状态,则可以告知 Amazon EC2 不断电和重启实例。一些文件系统 (例如 XFS) 可以冻结和解冻活动,因此能在不重启实例的情况下安全创建映像。
在 AMI 创建过程中,Amazon EC2 会创建您实例的根卷和附加到您实例的任何其他 EBS 卷的快照。在取消注册 AMI 并删除快照之前,您需要支付快照的费用。有关更多信息,请参阅注销您的 Linux AMI。如果有任何附加到实例的卷进行了加密,则新 AMI 只会在支持 Amazon EBS 加密 的实例上成功启动。有关更多信息,请参阅 Amazon EBS 加密。
根据卷的大小,可能需要几分钟才能完成 AMI 创建过程 (有时长达 24 小时)。您可能会发现先创建卷的快照,然后再创建 AMI 后会更高效。这样,创建 AMI 时就只需创建小的增量快照,且创建过程完成得更快 (快照创建的总时间保持不变)。有关更多信息,请参阅 创建 Amazon EBS 快照。
该过程完成之后,您便具有从实例的根卷创建的新 AMI 和快照。当您使用新 AMI 启动实例时,我们会使用快照为其根卷创建新 EBS 卷。
如果除了根设备卷之外,您还向实例添加了实例存储卷或 EBS 卷,则新 AMI 的块储存设备映射包含这些卷的信息,并且您从新 AMI 启动的实例的块储存设备映射自动包含这些卷的信息。新实例的块储存设备映射中指定的实例存储卷是新的,不包含用于创建 AMI 的实例的实例存储卷中的任何数据。EBS 卷上的数据会持久保留。有关更多信息,请参阅块储存设备映射。
当您从由 EBS 支持的 AMI 创建新实例时,应该先初始化其根卷及任何额外的 EBS 存储,然后再将其投入生产。有关更多信息,请参阅 初始化 Amazon EBS 卷。
从实例创建 Linux AMI
可以使用 AWS 管理控制台或命令行创建 AMI。下图总结了从正在运行的 EC2 实例创建 Amazon EBS 支持的 AMI 的过程。从现有 AMI 开始,启动一个实例,自定义该实例,从该实例创建新 AMI,并最终启动新 AMI 的实例。下图中的步骤与下面的过程中的步骤匹配。

使用命令行从实例创建 AMI
您可以使用以下任一命令。有关这些命令行界面的更多信息,请参阅 访问 Amazon EC2。
-
create-image (AWS CLI)
-
New-EC2Image (适用于 Windows PowerShell 的 AWS 工具)
从快照创建 Linux AMI
如果您有实例的根设备卷的快照,则可以使用 AWS 管理控制台或命令行从此快照创建 AMI。
使用控制台从快照创建 AMI
-
打开 Amazon EC2 控制台 https://console.aws.amazon.com/ec2/
。 -
在导航窗格中的 Elastic Block Store 下,选择 Snapshots。
-
依次选择快照、Actions 和 Create Image。
-
在 Create Image from EBS Snapshot 对话框中,填写与创建 AMI 相关的字段,然后选择 Create。如果要重新创建父实例,请选择与父实例相同的选项。
-
Architecture:对 32 位选择 i386,对 64 位选择 x86_64。
-
Root device name:输入相应的根卷名称。有关更多信息,请参阅为 Linux 实例上的设备命名。
-
Virtualization type:选择是从此 AMI 使用半虚拟化 (PV) 还是硬件虚拟机 (HVM) 虚拟化启动实例。有关更多信息,请参阅Linux AMI 虚拟化类型。
-
(仅限 PV 虚拟化类型) Kernel ID 和 RAM disk ID:从列表中选择 AKI 和 ARI。如果选择默认 AKI 或不选择 AKI,则您每次启动使用此 AMI 实例时,都必须指定 AKI。此外,如果默认 AKI 与实例不兼容,对您的实例进行的运行状况检查可能会失败。
-
(可选)Block Device Mappings:添加卷或扩展 AMI 根卷的默认大小。有关调整实例上的文件系统大小以扩展卷的更多信息,请参阅调整卷大小后扩展 Linux 文件系统。
-
使用命令行从快照创建 AMI
您可以使用以下任一命令。有关这些命令行界面的更多信息,请参阅 访问 Amazon EC2。
-
register-image (AWS CLI)
-
Register-EC2Image (适用于 Windows PowerShell 的 AWS 工具)
从您创建的 AMI 启动实例
您可以从通过实例或快照创建的 AMI 启动实例。
从 AMI 启动实例
-
打开 Amazon EC2 控制台 https://console.aws.amazon.com/ec2/
。 -
在导航窗格中,在映像下选择 AMI。
-
将筛选条件设置为我拥有的,然后选择您的 AMI。
-
依次选择操作和启动。
-
按照向导启动您的实例。有关向导中每个步骤的更多信息,请参阅使用启动实例向导启动实例。