本文へスキップ

エージェントの通信設定

Network & security

WhaTapは、エージェントにサーバー通信でTCP接続してからモニタリングデータを送信します。

WhaTapエージェントのネットワーク

エージェントは、1つのTCP セッションを介してデータ送信とサーバーの制御要求を処理します。 NodeエージェントはUDPを使用しません。 NodeエージェントからWhaTap収集サーバーの通信ではファイアウォールを開きます。

収集サーバーのアドレスとポート

WhaTapサーバーは、データリージョンサーバーとフロントサーバー、ユーレカなどに区分します。データリージョンにはProxy、Yard、Gateway、Keeperなどがあります。エージェントは、Proxyサーバーと通信します。

NodeエージェントにWhaTapサーバのproxyサーバのアドレスを設定します。(exwhatap.server.host=10.0.3.1/10.0.3.2)サーバアドレスを設定する場合は、proxyサーバの数を入力します。WhaTapサーバは、インストール方法によって、proxyサーバを1つまたは複数使用できます。

WhaTap Proxyサーバは6600番ポートでリスニング(Listening)します。エージェントで何も設定しない場合、エージェントは6600番ポートへの接続を試みます。

whatap.conf
whatap.server.port=6600
ノート

2つのProxyサーバーが異なるポートを使用することはできません。複数のProxyサーバーを使用している場合は、(Listening) ポートが同じである必要があります。

通信接続およびセキュリティ

WhaTapは、パブリックネットワークからモニタリングデータを収集することを前提に設計されています。その結果、すべてのモニタリングデータは暗号化され、サーバーに送信されます。大量のデータを暗号化して送信すると、オーバーヘッドを引き起こす可能性があります。WhaTapはデータを自動的に暗号化します。エージェントとサーバー間の通信プロセスは次のとおりです。

  1. プロジェクト作成メニューからアクセスキーを作成してから、コピーしてください。

  2. アクセスキーにはパスワードが含まれます。外部に知られないように注意してください。

  3. Node.jsアプリケーションサーバーを再起動します。

  4. WhaTapエージェントは、サーバーへのTCP セッションを確立します。

  5. アクセスキーに含まれる通信用秘密キーを使用してデータを暗号化し、新しいセッション用のセキュリティキーを要求します。

  6. サーバーは、エージェントによって要求されたセッション用のセキュリティキーを新しく生成して、エージェントに送信します。

  7. セッション用のセキュリティキーには、2つの暗号化キーを含まれています。ASCアルゴリズム用の暗号キーと単純なパスワードの暗号化キーです。

  8. その後、エージェントはテキストや制御などの機密データにASC暗号化キーを使用します。数値データなどの比較的安全なデータは、単純な暗号化によってデータをサーバーに送信します。

エージェント通信バッファー

エージェントは、サーバー間のTCP接続が遅延すると、エージェントが障害を起こす可能性があります。そのため、収集された性能データをネットワークに直接送信することはありません。

エージェントは、内部に2つの通信バッファーと通信します。

net_send_queue1_size=512
net_send_queue2_size=1024

Queue1には、ほとんどの性能データのうち、定期的に送信する性能データをバッファリングします。Queue2は、トランザクショントレース(ProfilePack)とアクティブスタック(ActiveStackPack)のみを個別に処理します。

エージェントは、キューを基準にサーバーと通信します。サーバーがダウンするとエージェントがメモリを消費します。それ以上の問題は発生しません。

エージェント再接続

エージェントがサーバーとの接続が切断された場合、5~10秒ごとに 3回の再接続を試みます。その後の再接続は行われません。

ネットワーク設定オプション

エージェントがアプリケーションサーバーから収集したデータをサーバーに転送するためのネットワーク設定方法を案内します。主な設定オプションとしては、収集サーバーのホスト、ポート、タイムアウト値、ネットワーク転送サイズ、データ転送キューサイズなどがあり、エージェントの効率的なデータ管理と安定したサーバー通信を保証するために重要です。

  • whatap_server_host ip_address

    既定値127.0.0.1,127.0.1

    エージェントが収集したデータを送信するサーバーを設定します。収集サーバーの二重化により2つ以上のIPアドレスを持つ場合は、コンマ(,)を区切り文字として使用します。設定するIPアドレスには収集サーバーであるproxyサーバーがリスニング(Listening)状態でサービスする必要があります。

  • whatap_server_port tcp_port

    既定値6600

    収集サーバーのポートを設定します。ポートは1つだけ設定できるので、whatap_server_hostオプションに設定した収集サーバーは同一のポートを使用する必要があります。

  • tcp_so_timeout MiliSecond

    既定値60000

    収集サーバーと通信するTCPセッションのSocket Timeout値を設定します。

  • tcp_connection_timeout MiliSecond

    既定値5000

    収集サーバーと通信するTCPセッションのConnection Timeout値を設定します。

  • net_send_max_bytes Byte

    既定値5242880

    エージェントがデータを収集して、ネットワークに一度に送信できる最大byteサイズです。

  • net_send_queue1_size Int

    既定値 512

    トレース情報以外のデータ転送に使用するQueueのサイズを設定します。

  • net_send_queue2_size Int

    既定値 1024

    トレース情報の送信に使用するQueueのサイズを設定します。