Amazon EBS 的详细绩效统计数据 - Amazon EBS

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

Amazon EBS 的详细绩效统计数据

亚马逊EBSNVMe区块设备提供与基于 Nitro 的 Amazon 实例关联的亚马逊EBS卷的实时、高分辨率 I/O 性能统计数据。EC2这些统计数据以聚合计数器的形式显示,这些计数器将在卷连接到实例的期间内保留。这些统计数据提供有关累积操作数、发送和接收的字节数以及读取和写入 I/O 操作所花费时间的详细信息。此外,统计数据还包括读取和写入 I/O 操作的直方图,以及您的应用程序超过EBS卷或附加实例的预配置IOPS或吞吐量限制的总时间。

您可以以最多 1 秒的间隔收集这些统计数据。

注意事项
  • 所有 Amazon EBS 卷类型都支持统计数据。

  • 只有连接到 AWS Nitro System 上构建的实例的卷才支持统计数据。

  • 这些统计数据适用于启用了多重连接的卷。在查看启用了多重连接的卷的统计数据时,统计数据特定于该实例的附件,并且仅反映该实例的使用情况。

  • 统计数据无需额外费用即可获得。

  • EBSG6、G6e、Gr6、P4、P5 和 P5e 实例不支持详细的性能统计信息。

统计数据

Amazon EBS NVMe 区块设备提供以下统计数据:

统计名称 全名 类型 描述
total_read_ops 读取操作总数 计数器 已完成的读取操作总数。
total_write_ops 写入操作总数 计数器 已完成的写入操作总数。
total_read_bytes 读取的总字节数 计数器 传输的读取字节总数。
total_write_bytes 写入总字节数 计数器 传输的写入字节总数。
total_read_time 总读取时间 计数器 所有已完成的读取操作所花费的总时间,以微秒为单位。
total_write_time 总写入时间 计数器 所有已完成的写入操作所花费的总时间,以微秒为单位。
ebs_volume_performance_exceeded_iops 总需求超过容量配置时间 IOPS 计数器 该IOPS需求超过卷预配置性能的总时间(以微秒为单位)。IOPS
ebs_volume_performance_exceeded_tp 总时间需求超过了容量预置吞吐量 计数器 吞吐量需求超过卷预配置吞吐量性能的总时间(以微秒为单位)。
ec2_instance_ebs_performance_exceeded_iops 总时间需求超过了EC2实例的IOPS性能 计数器 EBS卷超过所连接的 Amazon EC2 实例的最大IOPS性能的总时间(以微秒为单位)。
ec2_instance_ebs_performance_exceeded_tp 总时间需求超过了EC2实例的吞吐量性能 计数器 EBS卷超过所连接的 Amazon EC2 实例的最大吞吐量性能的总时间(以微秒为单位)。
volume_queue_length 卷队列长度 时间点 等待完成的读取和写入操作的数量。
read_io_latency_histogram 读取 I/O 直方图 直方图 * 在每个延迟 bin 内完成的读取操作数,以微秒为单位。
write_io_latency_histogram 写入 I/O 直方图 直方图 * 在每个延迟 bin 内完成的写入操作数,以微秒为单位。
注意

* 直方图统计数据仅表示成功完成的 I/O 操作。停滞或受损的 I/O 操作不包括在内,但会在统计数据中显而易见,volume_queue_length统计数据以 point-in-time统计数据形式呈现。

访问统计数据

必须直接从 Amazon EBS 卷所连接的实例访问统计数据。您可以使用以下方法之一访问统计信息。

ebsnvme script

ebsnvme脚本可以在 ama zon-ec2- utils Github 存储库中找到。

访问统计数据
  1. Connect 连接到该卷所连接的实例。

  2. amazon-ec2-utils Github 存储库下载ebsnvme脚本。

    wget https://raw.githubusercontent.com/amazonlinux/amazon-ec2-utils/refs/heads/main/ebsnvme
  3. 修改脚本的权限以使其可执行。

    sudo chmod +x ./ebsnvme
  4. 运行ebsnvme脚本并指定该卷的设备名称。

    sudo ./ebsnvme stats /dev/nvme0n1
nvme-cli tool (Amazon Linux only)
访问统计数据
  1. Connect 连接到该卷所连接的实例。

  2. 2024 年 11 月 12 日之后AMIs发布的亚马逊 Linux 包含该nvme-cli工具的最新版本。如果您使用的是较旧的亚马逊 LinuxAMI,请更新该nvme-cli工具。

    sudo yum install nvme-cli
  3. 运行以下命令并为该卷指定设备名称。

    nvme amzn stats /dev/nvme0n1
Prometheus

您还可以使用开源监控应用程序 Prometheus 和适用于 Prometheus 的亚马逊托管服务来监控统计数据。这使得跨容器和 Kubernetes 环境大规模监控 Amazon EBS 卷变得更加容易。在 Amazon EBS CSI 驱动程序版本 1.37.0 及更高版本中,详细的性能统计数据将作为与 Prometheus 兼容的终端节点公开,用于导出到 Prometheus。/metrics

有关更多信息,请参阅《适用于 Promethe us 的亚马逊托管服务用户指南》中的 “向适用于 Prometheus 的亚马逊托管服务工作区提取指标”。