Amazon EC2 で Elastic Fabric Adapter をモニタリングする - Amazon Elastic Compute Cloud

Amazon EC2 で Elastic Fabric Adapter をモニタリングする

Elastic Fabric Adapter のパフォーマンスをモニタリングするには、次の機能を使用できます。

Amazon EC2 インスタンスの EFA ドライバーメトリクス

Elastic Fabric Adapter (EFA) ドライバーは、EFA インターフェイスがアタッチされているインスタンスから複数のメトリクスを発行します。このようなメトリクスを使用して、アプリケーションパフォーマンスの問題のトラブルシューティング、ワークロードに適したクラスターサイズの選択、スケーリングアクティビティの事前計画、およびアプリケーションのベンチマークにより、メトリクスがインスタンスで利用できる EFA パフォーマンスを最大化するかどうかを判断できます。

使用可能な EFA ドライバーメトリクス

EFA ドライバーは、次のメトリクスをリアルタイムでインスタンスに発行します。これらは、インスタンスの起動または最後のドライバーのリセット以降にアタッチされた EFA デバイスによって送信、受信、またはドロップされたエラーとパケットまたはバイトの累積数を提供します。

メトリクス 説明
tx_bytes

送信されたバイト数。

単位: バイト

rx_bytes

受信バイトの数。

単位: バイト

tx_pkts

送信されたパケットの数。

単位: 個

rx_pkts

受信されたパケットの数。

単位: 個

rx_drops

受信後にドロップされたパケットの数。

単位: 個

send_bytes

送信オペレーションを使用して送信されたバイト数。

単位: バイト

recv_bytes

送信オペレーションによって受信されたバイト数。

単位: バイト

send_wrs

送信オペレーションを使用して送信されたパケットの数。

単位: 個

recv_wrs

送信オペレーションによって受信されたパケットの数。

単位: 個

rdma_write_wrs

完了した rdma 書き込みオペレーションの数。

単位: 個

rdma_read_wrs

完了した rdma 読み取りオペレーションの数。

単位: 個

rdma_write_bytes

rdma 書き込みオペレーションを使用して他のインスタンスによって書き込まれたバイト数。

単位: バイト

rdma_read_bytes

rdma 読み取りオペレーションを使用して受信したバイト数。

単位: バイト

rdma_write_wr_err

ローカルエラーまたはリモートエラーが発生した rdma 書き込みオペレーションの数。

単位: 個

rdma_read_wr_err

ローカルエラーまたはリモートエラーが発生した rdma 読み取りオペレーションの数。

単位: 個

rdma_read_resp_bytes

rdma 読み取りオペレーションに応答して送信されたバイト数。

単位: バイト

rdma_write_recv_bytes

rdma 書き込みオペレーションによって受信されたバイト数。

単位: バイト

インスタンスの EFA ドライバーメトリクスを取得する

rdma-tool コマンドラインツールを使用して、次のようにインスタンスにアタッチされたすべての EFA インターフェイスのメトリクスを取得できます。

$ rdma -p statistic show link rdmap0s31/1 tx_bytes 0 tx_pkts 0 rx_bytes 0 rx_pkts 0 rx_drops 0 send_bytes 0 send_wrs 0 recv_bytes 0 recv_wrs 0 rdma_read_wrs 0 rdma_read_bytes 0 rdma_read_wr_err 0 rdma_read_resp_bytes 0 rdma_write_wrs 0 rdma_write_bytes 0 rdma_write_wr_err 0

または、次のコマンドを使用して、インスタンスにアタッチされた各 EFA インターフェイスのメトリクスを sys ファイルから取得することもできます。

$ more /sys/class/infiniband/device_number/ports/port_number/hw_counters/* | cat

$ more /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/* | cat :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/lifespan :::::::::::::: 12 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rdma_read_bytes :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rdma_read_resp_bytes :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rdma_read_wr_err :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rdma_read_wrs :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rdma_write_bytes :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rdma_write_recv_bytes :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rdma_write_wr_err :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rdma_write_wrs :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/recv_bytes :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/recv_wrs :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rx_bytes :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rx_drops :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/rx_pkts :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/send_bytes :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/send_wrs :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/tx_bytes :::::::::::::: 0 :::::::::::::: /sys/class/infiniband/rdmap0s31/ports/1/hw_counters/tx_pkts :::::::::::::: 0

Amazon VPC フローログ

Amazon VPC フローログを作成することで、EFA との間で送受信されるトラフィックに関する情報を取得できます。フローログデータは Amazon CloudWatch Logs と Amazon S3 に発行できます。フローログを作成したら、選択した送信先でそのデータを取得して表示できます。詳細については、Amazon VPC ユーザーガイドVPC フローログを参照してください。

EFA のフローログを作成する方法は、Elastic Network Interface のフローログを作成する場合と同じです。詳細については、「Amazon VPC ユーザーガイド」の「フローログの作成」を参照してください。

フローログエントリで、EFA エントリは、srcAddress および destAddress で識別されます。次の例に示されているように、これらはいずれも MAC アドレス形式になります。

version accountId eniId srcAddress destAddress sourcePort destPort protocol packets bytes start end action log-status 2 3794735123 eni-10000001 01:23:45:67:89:ab 05:23:45:67:89:ab - - - 9 5689 1521232534 1524512343 ACCEPT OK

Amazon CloudWatch

Amazon EKS クラスターで EFA を使用している場合は、CloudWatch Container Insights を使用して EFA をモニタリングできます。詳細については、「Amazon CloudWatch ユーザーガイド」の「Amazon ECS と Kubernetes のコンテナインサイトメトリクス」を参照してください。