ネットワークパフォーマンスメトリクスの収集 - Amazon CloudWatch

ネットワークパフォーマンスメトリクスの収集

Elastic Network Adapter (ENA) を使用する Linux で実行されている EC2 インスタンスは、ネットワークパフォーマンスメトリクスを発行します。バージョン 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 エージェント設定ファイルの ethtool セクションの metrics_collected サブセクションにリストされている場合にのみ収集されます。詳細については、ネットワークパフォーマンスメトリクスの収集 を参照してください。

単位: なし

Linux サーバー上の名前: bw_out_allowance_exceeded

Windows サーバー上の名前: Aggregate outbound BW allowance exceeded

アウトバウンド集計の帯域幅がインスタンスの最大値を超えたために、キューおよび (または) ドロップされたパケットの数。

このメトリクスは、CloudWatch エージェント設定ファイルの ethtool セクションの metrics_collected サブセクションにリストされている場合にのみ収集されます。詳細については、ネットワークパフォーマンスメトリクスの収集 を参照してください。

単位: なし

Linux サーバー上の名前: conntrack_allowance_available

Windows サーバー上の名前: Available connection tracking allowance

そのインスタンスタイプの Connections Tracked 許容量に達する前にインスタンスが確立できる接続トラッキング数をレポートします。このメトリクスは、バージョン 2.8.1 以降の Elastic Network Adapter (ENA) 用の Linux ドライバーを使用する Nitro ベースの EC2 インスタンス、およびバージョン 2.6.0 以降の Elastic Network Adapter (ENA) 用の Windows ドライバーを使用するコンピュータでのみ使用できます。

このメトリクスは、CloudWatch エージェント設定ファイルの ethtool セクションの metrics_collected サブセクションにリストされている場合にのみ収集されます。詳細については、ネットワークパフォーマンスメトリクスの収集 を参照してください。

単位: なし

Linux サーバー上の名前: ena_srd_mode

Windows サーバー上の名前: ena srd mode

ENA Express のどの機能が有効になっているかを説明します。ENA Express の詳細については、「Linux インスタンスで ENA Express を使用してネットワークパフォーマンスを向上させる」を参照してください。値は次のとおりです。

  • 0 = ENA Express がオフ、UDP がオフ

  • 1 = ENA Express がオン、UDP がオフ

  • 2 = ENA Express がオフ、UDP がオン

    注記

    これは、ENA Express が最初に有効になっており、UDP がそれを使用するように設定されている場合にのみ発生します。UDP トラフィックの以前の値は保持されます。

  • 3 = ENA Express がオン、UDP がオン

Linux サーバー上の名前: ena_srd_eligible_tx_pkts

Windows サーバー上の名前: ena srd eligible tx pkts

一定期間内に送信された AWS Scalable Reliable Datagram (SRD) の資格要件を満たすネットワークパケットの数。次のようになります。

  • 送信側と受信側の両方のインスタンスタイプがサポートされています。

  • 送信側と受信側の両方のインスタンスに ENA Express が設定されている必要があります。

  • 送信側と受信側のインスタンスは同じサブネットに存在する必要があります。

  • インスタンス間のネットワークパスには、ミドルウェアボックスを含めないようにしてください。ENA Express は現在、ミドルウェアボックスをサポートしていません。

Linux サーバー上の名前: ena_srd_tx_pkts

Windows サーバー上の名前: ena srd tx pkts

一定期間内に送信した SRD パケット数。

Linux サーバー上の名前: ena_srd_rx_pkts

Windows サーバー上の名前: ena srd rx pkts

一定期間内に受信した SRD パケット数。

Linux サーバー上の名前: ena_srd_resource_utilization

Windows サーバー上の名前: ena srd resource utilization

インスタンスが消費した同時 SRD 接続の最大許容メモリ使用量の割合。

Linux サーバー上の名前: linklocal_allowance_exceeded

Windows サーバー上の名前: Link local packet rate allowance exceeded

ローカルプロキシサービスへのトラフィックの PPS がネットワークインターフェイスの最大値を超えたためにドロップされたパケットの数。これは、DNS サービス、インスタンスメタデータサービス、および Amazon Time Sync Service へのトラフィックに影響します。

このメトリクスは、CloudWatch エージェント設定ファイルの ethtool セクションの metrics_collected サブセクションにリストされている場合にのみ収集されます。詳細については、ネットワークパフォーマンスメトリクスの収集 を参照してください。

単位: なし

Linux サーバー上の名前: linklocal_allowance_exceeded

Windows サーバー上の名前: Link local packet rate allowance exceeded

ローカルプロキシサービスへのトラフィックの PPS がネットワークインターフェイスの最大値を超えたためにドロップされたパケットの数。これは、DNS サービス、インスタンスメタデータサービス、および Amazon Time Sync Service へのトラフィックに影響します。

このメトリクスは、CloudWatch エージェント設定ファイルの ethtool セクションの metrics_collected サブセクションにリストされている場合にのみ収集されます。詳細については、ネットワークパフォーマンスメトリクスの収集 を参照してください。

単位: なし

Linux サーバー上の名前: pps_allowance_exceeded

Windows サーバー上の名前: PPS allowance exceeded

双方向 PPS がインスタンスの最大値を超えたために、キューおよび (または) ドロップされたパケットの数。

このメトリクスは、CloudWatch エージェント設定ファイルの ethtool セクションの metrics_collected サブセクションにリストされている場合にのみ収集されます。詳細については、ネットワークパフォーマンスメトリクスの収集 を参照してください。

単位: なし

Linux の設定

Linux サーバーでは、ethtool プラグインを使用すると、ネットワークパフォーマンスメトリクスを CloudWatch にインポートできます。

ethtool は、Linux サーバー上のイーサネットデバイスに関する統計を収集できる標準の Linux ユーティリティです。収集される統計情報は、ネットワークデバイスとドライバーによって異なります。これらの統計情報の例には、tx_cntrx_bytestx_errorsalign_errors などがあります。CloudWatch エージェントで ethtool プラグインを使用する場合、このセクションで前述した EC2 ネットワークパフォーマンスメトリクスとともに、これらの統計を CloudWatch にインポートすることもできます。

ヒント

オペレーティングシステムとネットワークデバイスで利用可能な統計を確認するには、ethtool –S コマンドを使用します。

CloudWatch エージェントがメトリクスを CloudWatch にインポートすると、インポートされたすべてのメトリクスの名前に ethtool_ プレフィックスが追加されます。したがって、標準の ethtool 統計 rx_bytes は CloudWatch で ethtool_rx_bytes として呼び出され、EC2 ネットワークパフォーマンスメトリクス bw_in_allowance_exceeded は CloudWatch で ethtool_bw_in_allowance_exceeded として呼び出されます。

Linux サーバーで ethtool メトリクスをインポートするには、CloudWatch エージェント設定ファイルの ethtool セクションに metrics_collected セクションを追加します。ethtool セクションでは、次のサブセクションを含めることができます。

  • interface_include – このセクションを含めると、エージェントは、このセクションにリストされている名前を持つインターフェイスからのみメトリクスを収集します。このセクションを省略すると、interface_exclude にリストされていないすべてのイーサネットインターフェイスからメトリクスが収集されます。

    デフォルトのイーサネットインターフェイスは eth0 です。

  • interface_exclude – このセクションを含める場合は、メトリクスを収集しないイーサネットインターフェイスをリストします。

    ethtool プラグインは、常にループバックインターフェイスを無視します。

  • metrics_include – このセクションには、CloudWatch にインポートするメトリクスがリストされます。ethtool によって収集された標準統計情報と、Amazon EC2 高解像度ネットワークメトリクスの両方を含めることができます。

以下の例では、CloudWatch エージェント設定ファイルの一部が表示されています。この設定では、インターフェイスから標準の ethtool メトリクス rx_packets および tx_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" ] } } }

Windows セットアップ

Windows サーバーでは、ネットワークパフォーマンスメトリクスは、CloudWatch エージェントが既にメトリクスを収集している Windows パフォーマンスカウンターから入手できます。そのため、Windows サーバーからこれらのメトリックを収集するのにプラグインは必要ありません。

次は、Windows からネットワークパフォーマンスメトリクスを収集するためのサンプル設定ファイルです。CloudWatch エージェント設定ファイルの編集の詳細については、「 CloudWatch エージェント設定ファイルを手動で作成または編集する」を参照してください。

{ "metrics": { "append_dimensions": { "InstanceId": "${aws:InstanceId}" }, "metrics_collected": { "ENA Packets Shaping": { "measurement": [ "Aggregate inbound BW allowance exceeded", "Aggregate outbound BW allowance exceeded", "Connection tracking allowance exceeded", "Link local packet rate allowance exceeded", "PPS allowance exceeded" ], "metrics_collection_interval": 60, "resources": [ "*" ] } } } }

ネットワークパフォーマンスメトリクスの表示

ネットワークパフォーマンスメトリクスを CloudWatch にインポートした後、これらのメトリクスを時系列グラフとして表示し、これらのメトリクスをモニターリングし、指定したしきい値に違反した場合に通知できるアラームを作成できます。以下の手順では、ethtool メトリクスを時系列グラフとして表示する方法を示します。アラームの設定の詳細については、「 Amazon CloudWatch でのアラームの使用」を参照してください。

これらのメトリクスはすべて集計カウンターであるため、RATE(METRICS()) などの CloudWatch メトリクス数学関数を使用して、これらのメトリクスのレートをグラフで計算したり、アラームを設定したりできます。メトリクス数学関数の詳細については、「Metric Math を使用する」を参照してください。

ネットワークパフォーマンスメトリクスを CloudWatch コンソールに表示するには
  1. CloudWatch コンソール (https://console.aws.amazon.com/cloudwatch/) を開きます。

  2. ナビゲーションペインで [Metrics (メトリクス)] を選択します。

  3. エージェントによって収集されたメトリクスの名前空間を選択します。デフォルトでは、これは CWAgent ですが、CloudWatch エージェント設定ファイルで別の名前空間を指定している場合があります。

  4. メトリクスのディメンション (例: インスタンス別メトリクス) を選択します。

  5. [All metrics] タブには、名前空間内のそのディメンションのメトリクスがすべて表示されます。以下の操作を行うことができます。

    1. メトリクスをグラフ表示するには、メトリクスの横にあるチェックボックスを選択します。すべてのメトリクスを選択するには、テーブルの見出し行にあるチェックボックスを選択します。

    2. テーブルを並べ替えるには、列見出しを使用します。

    3. リソースでフィルタするには、リソース ID を選択し、[Add to search] (検索に追加) を選択します。

    4. メトリクスでフィルターするには、メトリクス名を選択し、[Add to search] (検索に追加) を選択します。

  6. (オプション) このグラフを CloudWatch ダッシュボードに追加するには、[Actions] (アクション)、[Add to dashboard] (ダッシュボードに追加) の順に選択します。