Amazon Elastic Compute Cloud
用户指南(适用于 Linux 实例)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

监控卷修改的进度

当您修改 EBS 卷时,它将经历一系列状态。卷将依次进入 modifying 状态、optimizing 状态和 completed 状态。此时,卷已准备好做进一步的修改。

注意

在极少数情况下,暂时的 AWS 故障可能会导致 failed 状态。这并不指示卷的运行状况;它仅指示卷修改失败。如果发生这种情况,请重试卷修改。

当卷处于 optimizing 状态时,卷性能介于源配置规范和目标配置规范之间。过渡卷的性能将不会低于源卷的性能。如果您降级 IOPS,则过渡卷的性能不会低于目标卷的性能。

卷修改更改将生效,如下所示:

  • 大小更改通常需要几秒钟才能完成,并在卷处于 Optimizing 状态后生效。

  • 性能 (IOPS) 更改可能需要几分钟到几小时才能完成,具体视所做的配置更改而定。

  • 新配置生效最长需要 24 个小时,在某些情况下可能会更长,例如在未完全初始化卷的情况下。通常,完全使用的 1 TiB 卷需要约 6 个小时才能迁移到新的性能配置。

使用以下方法之一监控卷修改的进度。

监控卷修改的进度(控制台)

使用以下过程查看一个或多个卷修改的进度。

使用控制台监控修改的进度

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

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

  3. 选择该卷。卷状态显示在详细信息窗格的 State (状态) 列和 State (状态) 字段。在此示例中,修改状态为 completed (已完成)

  4. 打开 State (状态) 字段旁边的信息图标可显示有关最近一次修改操作完成前后的信息,如本示例所示。

监控卷修改的进度 (AWS CLI)

使用 describe-volumes-modifications 命令查看一个或多个卷修改的进度。以下示例描述了两个卷的卷修改。

aws ec2 describe-volumes-modifications --volume-id vol-11111111111111111 vol-22222222222222222

在以下示例输出中,卷修改仍处于 modifying 状态。

{ "VolumesModifications": [ { "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 }, { "TargetSize": 2000, "TargetVolumeType": "sc1", "ModificationState": "modifying", "VolumeId": "vol-22222222222222222", "StartTime": "2017-01-19T22:23:22.158Z", "Progress": 0, "OriginalVolumeType": "gp2", "OriginalIops": 300, "OriginalSize": 1000 } ] }

下一个示例描述了修改状态为 optimizingcompleted 的所有卷,然后筛选和格式化结果以只显示于 2017 年 2 月 1 日及之后做出的修改:

aws ec2 describe-volumes-modifications --filters Name=modification-state,Values="optimizing","completed" --query "VolumesModifications[?StartTime>='2017-02-01'].{ID:VolumeId,STATE:ModificationState}"

以下是包含有关两个卷的信息的示例输出:

[ { "STATE": "optimizing", "ID": "vol-06397e7a0eEXAMPLE" }, { "STATE": "completed", "ID": "vol-ba74e18c2aEXAMPLE" } ]

监控卷修改的进度 (CloudWatch Events)

利用 CloudWatch Events,您可以为卷修改事件创建通知规则。您可以使用规则生成使用 Amazon SNS 的通知消息,或调用 Lambda 函数来响应匹配事件。

使用 CloudWatch Events 监控修改进度

  1. 通过以下网址打开 CloudWatch 控制台:https://console.amazonaws.cn/cloudwatch/

  2. 依次选择 EventsCreate rule

  3. 对于 Build event pattern to match events by service,选择 Custom event pattern

  4. 对于 Build custom event pattern (构建自定义事件模式),将内容替换为以下内容并选择 Save (保存)

    { "source": [ "aws.ec2" ], "detail-type": [ "EBS Volume Notification" ], "detail": { "event": [ "modifyVolume" ] } }

    下面是示例事件数据:

    { "version": "0", "id": "01234567-0123-0123-0123-012345678901", "detail-type": "EBS Volume Notification", "source": "aws.ec2", "account": "012345678901", "time": "2017-01-12T21:09:07Z", "region": "us-east-1", "resources": [ "arn:aws-cn:ec2:us-east-1:012345678901:volume/vol-03a55cf56513fa1b6" ], "detail": { "result": "optimizing", "cause": "", "event": "modifyVolume", "request-id": "01234567-0123-0123-0123-0123456789ab" } }