请求对您的 EBS 卷进行修改 - Amazon Elastic Compute Cloud
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

请求对您的 EBS 卷进行修改

对于弹性卷,您可以在不分离 Amazon EBS 卷的情况下动态增加卷的大小或降低其性能,以及修改卷类型。

修改卷时使用以下过程:

  1. (可选)在修改包含有用数据的卷之前,最佳实践是创建卷的快照(如果您需要回滚您的更改)。有关更多信息,请参阅创建 Amazon EBS 快照

  2. 请求卷修改。

  3. 监控卷修改进度。有关更多信息,请参阅监控卷修改的进度

  4. 如果修改了卷的大小,请扩展卷的文件系统以利用增加的存储容量。有关更多信息,请参阅调整卷大小后扩展 Windows 文件系统

使用弹性卷修改 EBS 卷

注意事项

修改 卷时请牢记以下事项:

  • 修改卷后,必须等待至少六个小时并确保卷处于 in-useavailable 状态,然后再对同一个卷进行其他修改。

  • 修改 EBS 卷可能需要几分钟到几小时才能完成,具体视应用的配置更改而定。大小为 1TiB 的 EBS 卷通常最多可能需要六个小时即可得到修改。但是,在其他情况下,相同的卷可能需要 24 小时或更长时间。修改卷所需的时间并不总是线性扩展。因此,较大的卷可能需要较短时间,而较小的卷却可能需要较长时间。

  • 提交卷修改请求后,您将无法取消该请求。

  • 您只能增加卷的大小。您无法减小卷的大小。

  • 您可以提高或降低卷的性能。

  • 如果您没有修改卷类型,则卷的大小和性能修改必须在当前卷类型的限制范围内。如果您更改卷类型,则卷的大小和性能修改必须在目标卷类型的限制范围内

  • 如果您将卷类型从 gp2 更改为 gp3,并且您未指定 IOPS 或吞吐量性能,则 Amazon EBS 将自动预调配与源 gp2 卷的性能或基准 gp3 性能相当的性能(以二者中较高者为准)。

    例如,如果您将具有 250 MiB/s 吞吐量和 1500 IOPS 的 500 GiB gp2 卷修改为 gp3,但未指定 IOPS 或吞吐量性能,Amazon EBS 会自动预调配具有 3000 IOPS(基准gp3 IOPS)和 250 MiB/s(用于匹配源 gp2 卷吞吐量)的 gp3 卷。

要修改 EBS 卷,请使用以下方法之一。

Console
使用控制台修改 EBS 卷
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择 Volumes

  3. 选择要修改的卷,然后选择 Actions(操作)、Modify Volume(修改卷)。

  4. Modify Volume(修改卷)窗口显示卷 ID 和卷的当前配置,包括类型、大小、IOPS 和吞吐量。设置新的配置值,如下所述:

    • 要修改类型,请为 Volume type(卷类型)选择一个值。

    • 要修改大小,请为大小输入新值。

    • (仅限于 gp3io1io2)要修改 IOPS,为 IOPS 输入新值。

    • (仅限于 gp3)要修改吞吐量,为 Throughput(吞吐量)输入新值。

  5. 完成更改卷设置后,请选择修改。当系统提示您确认时,选择 Modify(修改)。

  6. 重要

    如果您增加了卷的大小,则还必须扩展卷的分区来使用额外的存储容量。有关更多信息,请参阅调整卷大小后扩展 Windows 文件系统

  7. 如果您在没有 Amazon NVMe 驱动程序的实例上增加了 NVMe 卷的大小,则必须重启实例才能使 Windows 发现新的卷大小。有关安装 Amazon NVMe 驱动程序的更多信息,请参阅 适用于 Windows 实例的 Amazon NVMe 驱动程序

Amazon CLI
使用 Amazon CLI 修改 EBS 卷

使用 modify-volume 命令修改卷的一个或多个配置设置。如果您有一个类型为 gp2 且大小为 100 GiB 的卷,以下命令会将其配置更改为类型为 io1、包含 10000 IOPS 且大小为 200 GiB 的卷。

aws ec2 modify-volume --volume-type io1 --iops 10000 --size 200 --volume-id vol-11111111111111111

下面是示例输出:

{ "VolumeModification": { "TargetSize": 200, "TargetVolumeType": "io1", "ModificationState": "modifying", "VolumeId": "vol-11111111111111111", "TargetIops": 10000, "StartTime": "2017-01-19T22:21:02.959Z", "Progress": 0, "OriginalVolumeType": "gp2", "OriginalIops": 300, "OriginalSize": 100 } }
重要

如果您增加了卷的大小,则还必须扩展卷的分区来使用额外的存储容量。有关更多信息,请参阅调整卷大小后扩展 Windows 文件系统

初始化弹性卷支持(如果需要)

您必须先使用以下操作之一初始化卷修改支持,然后才能修改在 UTC 时间 2016 年 11 月 3 日 23:40 前附加到实例的卷:

  • 分离和附加卷

  • 停止和启动实例

使用以下过程之一来确定您的实例是否已准备好进行卷修改。

Console
使用控制台确定您的实例是否已准备就绪
  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 在导航窗格中,选择实例

  3. 选择显示/隐藏列图标(齿轮)。选择启动时间属性列,然后选择确认

  4. Launch Time 列对实例列表进行排序。对于在截止日期之前启动的每个实例,选择存储选项卡,并检查连接时间列以查看其卷附加的时间。

Amazon CLI
使用 CLI 确定您的实例是否已准备就绪

使用以下 describe-instances 命令确定卷是否是在 UTC 时间 2016 年 11 月 3 日 23:40 之前附加的。

aws ec2 describe-instances --query "Reservations[*].Instances[*].[InstanceId,LaunchTime<='2016-11-01',BlockDeviceMappings[*][Ebs.AttachTime<='2016-11-01']]" --output text

每个实例的输出的第一行都将显示其 ID,无论实例是否在截止日期前启动(True 或 False)。第一行后跟一行或多行,以显示是否在截止日期前已附加每个 EBS 卷(True 或 False)。在以下示例输出中,您必须为第一个实例初始化卷修改,因为该实例是在截止日期前启动的,并且其根卷是在截止日期前附加的。其他实例已准备就绪,因为它们是在截止日期后启动的。

i-e905622e True True i-719f99a8 False True i-006b02c1b78381e57 False False False i-e3d172ed False True

在不支持弹性卷的情况下修改 EBS 卷

如果您使用的是支持的实例类型,则可以使用弹性卷来在不分离 Amazon EBS 卷的情况下动态修改卷的大小、性能和卷类型。

如果您无法使用弹性卷但需要修改根(启动)卷,则必须停止实例,修改卷,然后重新启动实例。

实例启动之后,可以检查文件系统大小,看实例是否识别这个更大的卷空间。。

如果大小没有反映新扩展的卷,则必须扩展设备的文件系统,以便实例可以使用新的空间。有关更多信息,请参阅调整卷大小后扩展 Windows 文件系统

您可能需要将卷联机才能使用它。有关更多信息,请参阅使 Amazon EBS 卷可在 Windows 上使用。您无需重新格式化卷。