次の方法で共有


Azure Monitor エージェントのパフォーマンス ベンチマーク

ゲートウェイ イベント転送のシナリオでは、Azure Monitor エージェントは何千もの 1 秒あたりのイベント数 (EPS) を処理できます。 正確なスループット率は、各イベントのサイズ、特定のデータ型、物理ハードウェア リソースのようなさまざまな要因によって異なります。

この記事では、ゲートウェイ フォワーダー シナリオで 10,000 (10K) 件の Syslog イベントのエージェント スループットをテストするために使用されている Microsoft の内部ベンチマークについて説明します。 ベンチマークの結果により、環境内で必要なリソースのサイズを設定するためのガイドが提供されます。

Note

この記事の結果は、ゲートウェイ転送のシナリオでの Azure Monitor エージェントでのパフォーマンスに関連する情報にすぎません。 この記事の結果と情報は、Microsoft 側のサービス契約を構成するものではありません。

フォワーダーとしてのエージェントのベスト プラクティス

  • Linux Azure Monitor エージェントでは、10,000 EPS をターゲットにする必要があります。 20,000 EPS の警告が発生する可能性がありますが、これはデータが失われることを意味するものではありません。 Azure Monitor エージェントでは、無損失接続は保証されません。 EPS が 10,000 を超えると損失が発生する可能性が高くなります。
  • 他のワークロードからの潜在的な干渉を排除するために、フォワーダーは専用システム上にある必要があります。
  • オーバーロードによるデータ損失を防ぐために、フォワーダー システムの CPU、メモリ、ディスクの使用率を監視する必要があります。
  • ロード バランサーと冗長フォワーダー システムを使って、信頼性とスケーラビリティを高める必要があります。 フォワーダーに関するその他の考慮事項については、Log Analytics ゲートウェイのドキュメントを参照してください。

エージェントのパフォーマンス

反復可能で正確かつ統計的に有意な結果を得られるように、ベンチマークは制御された環境で実行されます。 エージェントによって消費されるリソースは、1 秒あたり 10,000 件のシミュレートされた Syslog イベントの負荷の下で測定されます。 シミュレートされた負荷は、テスト対象のエージェントがオンになっているのと同じ物理ハードウェアで実行されます。 テスト試行は 7 日間実行されます。 試用ごとに、パフォーマンス メトリックが 1 秒ごとにサンプリングされ、CPU、メモリ、ネットワークの最大使用量と平均使用量が収集されます。 このアプローチにより、環境に必要なリソースの見積もりに役立つ適切な情報が提供されます。

Note

パフォーマンス テストの結果では、Log Analytics ワークスペース (またはその他のテレメトリ シンク) によって取り込まれたエンドツーエンドのスループットは測定されません。 エンド ツー エンドの変動性は、ネットワークとバックエンド パイプラインのパフォーマンスが原因で発生する可能性があります。

ベンチマークは、Azure Monitor Agent Linux バージョン 1.25.2 とイベント キャッシュ用の 10 GB のディスク領域を使用して、Azure 仮想マシン Standard_F8s_v2 システム上で実行されます。

  • vCPU: Hyper-Threading を備えた 8 個 (800% CPU が可能)
  • メモリ: 16 GiB
  • 一時ストレージ: 64 GiB
  • 最大ディスク IOPS: 6,400
  • ネットワーク: 4 つの物理 NIC すべてで最大 12,500 Mbps

結果

パフォーマンス メトリック 平均値 (最大値) 中央値
CPU % 51 (262)
メモリ RSS MB 276 (1,017)
ネットワーク KBps 338 (18,033)

よく寄せられる質問

一般的な質問の回答を参照します。

エージェントごとにどれくらいのデータが送信されますか?

エージェントごとに送信されるデータ量は、次のものによって異なります。

  • 有効にしているソリューション
  • 収集されているログとパフォーマンス カウンターの数
  • ログ内のデータ量

詳細については、「Log Analytics ワークスペースでの使用量を分析する」を参照してください。

WireData エージェントを実行できるコンピューターの場合、どれくらいのデータが送信されているかを確認するには次のクエリを使用します。

WireData
| where ProcessName == "C:\\Program Files\\Microsoft Monitoring Agent\\Agent\\MonitoringHost.exe"
| where Direction == "Outbound"
| summarize sum(TotalBytes) by Computer 

Microsoft Monitoring Agent は、データを Azure Monitor に送信するときに、どれくらいのネットワーク帯域幅を使用しますか?

帯域幅は、送信されるデータ量に関する機能です。 データは、ネットワーク経由で送信されるときに圧縮されます。