将实例存储卷添加到您的 EC2 实例 - Amazon Elastic Compute Cloud
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

将实例存储卷添加到您的 EC2 实例

对于具有 NVMe 实例存储卷的实例类型,所有支持的实例存储卷都会在启动时自动连接到实例。将在实例启动时自动枚举 NVMe 实例存储卷,并为其分配设备名称。

对于具有非 NVMe 实例存储卷的实例类型(例如,C1、C3、M1、M2、M3、R3、D2、H1、I2、G2、X1 和 X1e),您必须在启动时为要连接的实例存储卷手动指定块设备映射。可以在实例启动请求中指定块设备映射,也可以在用于启动实例的 AMI 中指定。块设备映射包括设备名称和映射到其上的卷。有关更多信息,请参阅 块设备映射

重要

只能在启动实例时附加实例的实例存储卷。无法在启动实例后将实例存储卷附加到该实例。

在启动实例后,您必须先确保已格式化和挂载实例的实例存储卷,然后才能使用这些存储卷。将自动挂载实例存储支持的实例的根卷。

根卷注意事项

块储存设备映射始终指定实例的根卷。根卷是一个 Amazon EBS 卷或实例存储卷。将自动挂载根卷。对于根卷的具有实例存储卷的实例,该卷的大小因 AMI 而异,但最大大小为 10 GB。有关更多信息,请参阅根设备存储

将实例存储卷添加到 AMI

您可创建带包括实例存储卷的块储存设备映射的 AMI。

如果使用指定实例存储卷块设备映射的 AMI 启动支持非 NVMe 实例存储卷的实例,该实例将包括实例存储卷。如果 AMI 中实例存储卷块设备映射的数量超过实例可用的实例存储卷的数量,则会忽略其他实例存储卷块设备映像。

如果使用指定实例存储卷块设备映射的 AMI 启动支持 NVMe 实例存储卷的实例,则会忽略实例存储卷块设备映射。无论在实例启动请求和 AMI 中指定的块设备映射如何,支持 NVMe 实例存储卷的实例都会获得其支持的所有实例存储卷。

注意事项
  • 对于 M3 实例,请在实例的块储存设备映射中指定实例存储卷,而非 AMI。Amazon EC2 可能会忽略 AMI 中的实例存储卷块设备映射。

  • 启动实例时,可忽略 AMI 块储存设备映射中指定的非 NVMe 实例存储卷,或添加实例存储卷。

New console
使用控制台向 Amazon EBS-backed AMI 添加实例存储卷
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择 Instances,然后选择实例。

  3. 依次选择操作映像和模板创建映像

  4. 创建映像页面上,为您的映像添加一个有意义的名称和描述。

  5. 对于要添加的每个实例存储卷,选择添加新卷,从卷类型中选择实例存储卷,并从设备中选择设备名称。(有关更多信息,请参阅 Linux 实例上的设备名称。) 可用的实例存储卷数量取决于实例类型。对于具有 NVMe 实例存储卷的实例,这些卷的设备映射取决于操作系统枚举这些卷的顺序。

  6. 选择创建映像

Amazon CLI
使用命令行向 AMI 添加实例存储卷

您可以使用以下任一命令。有关这些命令行界面的更多信息,请参阅 访问 Amazon EC2

将非 NVME 实例存储卷添加到实例

当启动支持非 NVMe 实例存储卷的实例时,必须为要附加的实例存储卷指定块设备映射。必须在实例启动请求中指定块设备映射,或者在用于启动实例的 AMI 中指定。

如果 AMI 包含实例存储卷的块设备映射,则无需在实例启动请求中指定块设备映射,除非您需要的实例存储卷超过 AMI 中包含的容量。

如果 AMI 不包含实例存储卷的块设备映射,则必须在实例启动请求中指定块设备映射。

注意事项
  • 对于 M3 实例,即使您未在实例的块储存设备映射中指定实例存储卷,您也可能收到这些卷。

要在实例启动请求中指定块设备映射,请使用以下方法之一。

Amazon EC2 console
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在控制面板中,选择启动实例

  3. Application and OS Images(应用程序和操作系统映像)部分中,请选择要使用的 AMI。

  4. 配置存储部分中,实例存储卷部分列出了可附加到实例的实例存储卷。可用的实例存储卷数量取决于实例类型。

  5. 对于要附加的每个实例存储卷,对于设备名称,选择要使用的设备名称。

  6. 根据需要配置剩余的实例设置,然后选择启动实例

Command line

您可以将下列选项之一与对应的选项结合使用。

  • --block-device-mappingsrun-instances(Amazon CLI)

  • New-EC2Instance-BlockDeviceMapping(Amazon Tools for Windows PowerShell)

使实例存储卷在您的实例上可用

启动带有附加实例存储卷的实例后,必须先挂载这些卷,然后才能访问它们。

对于 Linux 实例,很多实例存储卷都预先经过 ext3 文件系统的格式化处理。支持 TRIM 指令的基于 SSD 的实例存储卷不会预先经过任何文件系统的格式化处理。然而,您可以在启动实例后,使用您选择的文件系统将卷格式化。有关更多信息,请参阅实例存储卷 TRIM 支持。对于 Windows 实例,我们利用 NTFS 文件系统重新格式化实例存储卷。

您可以确认,可以从使用自身元数据的实例内使用实例存储设备。有关更多信息,请参阅查看实例存储卷的实例块储存设备映射

对于 Linux 实例,您可按照以下过程所述操作来查看和挂载实例存储卷。

使实例存储卷在 Linux 上可用
  1. 使用 SSH 客户端连接到实例。有关更多信息,请参阅连接到您的 Linux 实例

  2. 使用 df -h 命令查看已格式化并挂载的卷。

    $ df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 3.8G 72K 3.8G 1% /dev tmpfs 3.8G 0 3.8G 0% /dev/shm /dev/nvme0n1p1 7.9G 1.2G 6.6G 15% /
  3. 使用 lsblk 查看在启动时已映射但未格式化和装载的所有卷。

    $ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT nvme0n1 259:1 0 8G 0 disk ├─nvme0n1p1 259:2 0 8G 0 part / └─nvme0n1p128 259:3 0 1M 0 part nvme1n1 259:0 0 69.9G 0 disk
  4. 要格式化并挂载仅映射的实例存储卷,请执行以下操作:

    1. 使用 mkfs 命令在设备上创建文件系统。

      $ sudo mkfs -t xfs /dev/nvme1n1
    2. 使用 mkdir 命令创建要将设备挂载到的目录。

      $ sudo mkdir /data
    3. 使用 mount 命令在新建目录上挂载设备。

      $ sudo mount /dev/nvme1n1 /data

有关如何在重新启动后自动装载已连接的卷的说明,请参阅重启后自动挂载附加的卷