View a markdown version of this page

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

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

申请 Amazon EBS 卷修改

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

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

  2. 请求卷修改。

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

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

使用弹性卷修改 EBS 卷

开始之前,请先查看以下内容:

Console
修改 EBS 卷
  1. 打开位于 https://console.aws.amazon.com/ec2/ 的 Amazon EC2 控制台。

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

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

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

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

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

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

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

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

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

  7. 仅限 Windows 实例)如果您在没有 NVMe 驱动程序的实例上增加 Amazon NVMe 卷的大小,则必须重启该实例才能让 Windows 看到新的卷大小。有关安装 NVMe 驱动程序的更多信息,请参阅 Amazon N Amazon VMe 驱动程序。

Amazon CLI
修改 EBS 卷

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

aws ec2 modify-volume \ --volume-id vol-01234567890abcdef \ --volume-type io1 \ --iops 10000 \ --size 200

下面是示例输出。

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

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

PowerShell
修改 EBS 卷

使用 Edit-EC2Volume cmdlet。如果您有一个类型为 gp2 且大小为 100 GiB 的卷,以下示例会将其配置更改为类型为 io1、包含 10,000 IOPS 且大小为 200 GiB 的卷。

Edit-EC2Volume ` -VolumeId vol-01234567890abcdef ` -VolumeType io1 ` -Iops 10000 ` -Size 200

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

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

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

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

实例启动之后,可以检查文件系统大小,看实例是否识别这个更大的卷空间。在 Linux 上,请使用 df -h 命令检查文件系统大小。

[ec2-user ~]$ df -h Filesystem Size Used Avail Use% Mounted on /dev/xvda1 7.9G 943M 6.9G 12% / tmpfs 1.9G 0 1.9G 0% /dev/shm

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

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

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

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

  • 分离和附加卷

  • 停止和启动实例

Console
确定您的实例是否已准备就绪
  1. 打开位于 https://console.aws.amazon.com/ec2/ 的 Amazon EC2 控制台。

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

  3. 选择 “Show/Hide 列” 图标(齿轮)。选择启动时间属性列,然后选择确认

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

Amazon 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
PowerShell
确定实例是否已准备就绪

使用 Get-EC2Instancecmdlet 来确定是否在世界标准时间 2016 年 11 月 3 日 23:40 之前附加了卷。

(Get-EC2Instance ` -InstanceId i-1234567890abcdef0).Instances.BlockDeviceMappings | ` Format-Table @{Name="VolumeId";Expression={$_.Ebs.VolumeId}}, ` @{Name="AttachTime";Expression={$_.Ebs.AttachTime}}

下面是示例输出。

VolumeId AttachTime -------- ---------- vol-0b243c8d927752d2b 3/23/2020 12:21:14 AM vol-043eadbeb4a8387c3 9/5/2020 7:39:22 PM vol-0c3f0c4e55c082753 4/23/2019 4:07:40 PM