このページでは、単一のマルチテナント Java プロキシを共有するために、マシン上に複数の Node.js エージェントを構成する方法について説明します。

Node.js エージェントはバージョン 21.9 以降、プロキシをサポートしなくなりました。

共有プロキシを構成

  1. Node.jsアプリケーションを停止。
  2. エージェントとエージェントログ用およびプロキシ制御ディレクトリ用にディレクトリを作成します。このディレクトリの権限は、アプリケーションユーザとアプリケーションが読み取りおよび実行可能であり、プロキシユーザが書き込み可能である必要があります。
    次に例を示します。

    mkdir /tmp/appd /tmp/appd/logs /tmp/appd/proxy_ctrl_dir
    CODE

    Node.js エージェントをアップグレードするときに、これらのディレクトリを自動的に作成するとします。 

  3. 各エージェントの自動プロキシ起動を無効にします。AppDynamics require.profile() ブロックで、proxyAutolaunchDisabled を true に設定し、proxyCtrlDir を作成済みのディレクトリに設定します。
    次に例を示します。

    ...
    proxyAutolaunchDisabled: true,
    proxyCtrlDir: '/tmp/appd/proxy_ctrl_dir',
    ...
    CODE
  4. マルチテナントプロキシに報告する各エージェントが固有のノード名で構成されていることを確認。

  5. エージェントを起動する前に、共有 Java プロキシを起動し、エージェント制御ディレクトリを proxyCommunicationDir 引数から runproxy スクリプトに渡します。AppDynamicsでは、システムの起動時にプロキシを起動する方法を構成することを推奨します。詳細については、Node.jsのプロキシを手動で起動を参照してください。
  6. Node.jsアプリケーションを再起動。数分後に、ノードがコントローラの UI フローマップに表示されます。

プロキシ共有制限

デフォルトでは、1 つのプロキシで最大 10 のエージェントを処理できます。追加する必要がある場合は、runproxy スクリプトの maxHeapSize および maxPermSize 設定を調整する必要があります。

エージェントを追加するときは、デバッグモードを使用して proxy.out ファイルをモニタします。これにより、プロキシのヒープが不足しているかどうかがわかります。このファイルは、デバッグモードで実行しているときに表示されます。