收集网络性能指标 - Amazon CloudWatch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

收集网络性能指标

在 Linux 上运行的 EC2 实例使用 Elastic Network Adapter (ENA) 发布网络性能指标。版本 1.246396.0 和更高版本的 CloudWatch 代理使您能够将这些网络性能指标导入到 CloudWatch 中。当您将这些网络性能指标导入到 CloudWatch 时,它们将作为 CloudWatch 自定义指标收费。

有关 ENA 驱动程序的更多信息,请参阅在 Linux 实例上启用 Elastic Network Adapter (ENA) 增强联网在 Windows 实例上启用 Elastic Network Adapter (ENA) 增强联网

在 Linux 服务器和 Windows 服务器上,设置网络性能指标集合的方式不同。

下表列出了 ENA 适配器启用的这些网络性能指标。当 CloudWatch 代理从 Linux 实例将这些指标导入 CloudWatch 时,它会在每个指标名称的开头前置 ethtool_

指标 说明

Linux 服务器上的名称:bw_in_allowance_exceeded

Windows 服务器上的名称:Aggregate inbound BW allowance exceeded

因入站聚合带宽超过实例的最大值而排队和/或丢弃的数据包的数量。

仅当您将此指标列在 CloudWatch 代理配置文件 metrics_collected 部分的 ethtool 子部分时,才会收集该指标。有关更多信息,请参阅 收集网络性能指标

单位:无

Linux 服务器上的名称:bw_out_allowance_exceeded

Windows 服务器上的名称:Aggregate outbound BW allowance exceeded

因出站聚合带宽超过实例的最大值而排队和/或丢弃的数据包的数量。

仅当您将此指标列在 CloudWatch 代理配置文件 metrics_collected 部分的 ethtool 子部分时,才会收集该指标。有关更多信息,请参阅 收集网络性能指标

单位:无

Linux 服务器上的名称:conntrack_allowance_exceeded

Windows 服务器上的名称:Connection tracking allowance exceeded

由于连接跟踪超过实例的最大值且无法建立新连接而丢弃的数据包的数量。这可能会导致进出实例的流量丢失数据包。

仅当您将此指标列在 CloudWatch 代理配置文件 metrics_collected 部分的 ethtool 子部分时,才会收集该指标。有关更多信息,请参阅 收集网络性能指标

单位:无

Linux 服务器上的名称:linklocal_allowance_exceeded

Windows 服务器上的名称:Link local packet rate allowance exceeded

由于到本地代理服务的流量的 PPS 超出网络接口的最大值而丢弃的数据包数量。这会影响流向 DNS 服务、实例元数据服务和 Amazon Time Sync Service 的流量。

仅当您将此指标列在 CloudWatch 代理配置文件 metrics_collected 部分的 ethtool 子部分时,才会收集该指标。有关更多信息,请参阅 收集网络性能指标

单位:无

Linux 服务器上的名称:pps_allowance_exceeded

Windows 服务器上的名称:PPS allowance exceeded

因双向 PPS 超过实例的最大值而排队和/或丢弃的数据包的数量。

仅当您将此指标列在 CloudWatch 代理配置文件 metrics_collected 部分的 ethtool 子部分时,才会收集该指标。有关更多信息,请参阅 收集网络性能指标

单位:无

Linux 设置

在 Linux 服务器上,ethtool 插件使您能够将网络性能指标导入到 CloudWatch 中。

ethtool 是一个标准的 Linux 实用工具,可以收集有关 Linux 服务器上以太网设备的统计数据。它收集的统计数据取决于网络设备和驱动程序。这些统计数据的示例包括 tx_packetsrx_bytestx_errorsalign_errors。当您将 ethtool 插件与 CloudWatch 代理一起使用时,您还可以将这些统计数据以及本部分前面列出的 EC2 网络性能指标导入到 CloudWatch 中。

当 CloudWatch 代理将指标导入 CloudWatch 时,它会为所有导入指标的名称添加一个 ethtool_ 前缀。所以标准的 ethtool 统计数据 rx_bytes 在 CloudWatch 中被称为 ethtool_rx_bytes,EC2 网络性能指标 bw_in_allowance_exceeded 在 CloudWatch 中被称为 ethtool_bw_in_allowance_exceeded

在 Linux 服务器上,如需导入 ethtool 指标,请为 CloudWatch 代理配置文件 metrics_collected 部分添加 ethtool 部分。ethtool 部分包含以下子部分:

  • interface_include – 包括此部分会导致代理仅从本节中列出名称的接口收集指标。如果省略此部分,则会从 interface_exclude 中未列出的所有以太网接口收集指标。

    默认以太网接口为 eth0

  • interface_exclude – 如果包含此部分,请列出您不希望从中收集指标的以太网接口。

    ethtool 插件始终忽略环回接口。

  • metrics_include – 此部分列出了要导入到 CloudWatch 中的指标。它可以包括 ethtool 收集的标准统计数据和 Amazon EC2 高精度网络指标。

以下示例显示 CloudWatch 代理配置文件的一部分。此配置收集标准的 ethtool 指标 rx_packetstx_packets,以及仅来自 eth1 接口的 Amazon EC2 网络性能指标。

有关 CloudWatch 代理配置文件的更多信息,请参阅 手动创建或编辑 CloudWatch 代理配置文件

"metrics": { "append_dimensions": { "InstanceId": "${aws:InstanceId}" }, "metrics_collected": { "ethtool": { "interface_include": [ "eth1" ], "metrics_include": [ "rx_packets", "tx_packets", "bw_in_allowance_exceeded", "bw_out_allowance_exceeded", "conntrack_allowance_exceeded", "linklocal_allowance_exceeded", "pps_allowance_exceeded" ] } } }

查看网络性能指标

将网络性能指标导入到 CloudWatch 后,您可以以时间序列图形的形式查看这些指标,并创建可监视这些指标的告警,并在它们超出指定的阈值时通知您。以下程序介绍了如何以时间序列图形的方式查看 ethtool 指标。有关设置告警的更多信息,请参阅 使用 Amazon CloudWatch 告警

由于所有这些指标都是聚合计数器,因此您可以使用 CloudWatch 指标数学函数(如 RATE(METRICS()))在图形中计算这些指标的比率,或使用它们设置告警。有关指标数学函数的更多信息,请参阅 使用指标数学

在 CloudWatch 控制台中查看网络性能指标

  1. 访问 https://console.aws.amazon.com/cloudwatch/ 打开 CloudWatch 控制台。

  2. 在导航窗格中,请选择指标

  3. 为该代理收集的指标选择命名空间。默认情况下,该命名空间为 CWAgent,但您可能已经在 CloudWatch 代理配置文件中指定了不同的命名空间。

  4. 选择指标维度(例如 Per-Instance Metrics(每个实例的指标))。

  5. All metrics 选项卡显示命名空间中该维度的所有指标。您可执行以下操作:

    1. 要为指标绘制图表,请选中该指标旁的复选框。要选择所有指标,请选中表的标题行中的复选框。

    2. 要对表进行排序,请使用列标题。

    3. 要按资源进行筛选,请选择资源 ID,然后选择添加到搜索

    4. 要按指标进行筛选,请选择指标名称,然后选择添加到搜索

  6. (可选)要将此图表添加到 CloudWatch 控制面板,请选择 Actions(操作),然后选择 Add to dashboard(添加到控制面板)