Download PDF
Download page Linux 上でネットワークエージェントとアプリケーション エージェントを設定する.
Linux 上でネットワークエージェントとアプリケーション エージェントを設定する
ネットワークエージェント 4.5.7 および Java エージェント 4.5.11 では、同じマシン上で複数のノードを実行するときに、マルチテナントセットアップでネットワークエージェントを個別に設定する必要がなくなります。Java エージェント 4.5.10 以前でネットワークエージェント 4.5.7 を使用する場合は、マルチテナントセットアップでネットワークエージェントを設定する必要があります。「ネットワークエージェントと Java エージェントのインストール手順」を参照してください。
Network Agent and Java Agent Installation Instructions
次を使用している場合 | 次に |
|---|---|
| ネットワークエージェント 4.5.7 以降、Java エージェント 4.5.11 以降 | ネットワークエージェントをインストールします。 |
| ネットワークエージェント 4.5.7 以降、Java エージェント 4.5.10 以前 | ネットワークエージェントをマルチテナントセットアップまたはシングル テナント セットアップにインストールします。 マルチテナントセットアップ中に |
| ネットワークエージェント 4.5.6 以前 | ネットワークエージェントをマルチテナントセットアップまたはシングル テナント セットアップにインストールします。 マルチテナントセットアップ中に |
| Java アプリケーション エージェント 4.4 以前 | Java エージェントを更新します。 |
ネットワークエージェントのインストール
Java エージェント 4.5.13 以降を使用している場合は、手動でソケット収集を有効にする必要はありません。自動的に有効になります。手順 1 をスキップして、手順 2 に進むことができます。
アプリケーション エージェントでソケット収集を有効にする
- 次の例に示すように、Java アプリケーション エージェント開始コマンドを設定して、次のタスクを実行します。
- ネットワークエージェントの
を有効にして、ネットワークメトリックをアプリケーションフローにマップします。appdynamics.socket.collection.bci.enable
次に例を示します。java -javaagent:<>app_server_agent_home/javaagent.jar\-Dappdynamics.socket.collection.bci.enable=true
- ネットワークエージェントの
次の例では、モニタ対象アプリケーションのフレームワークによって、エージェント開始コマンドの編集方法がどのように異なるかを示しています。「Javaフレームワークによるエージェントのインストール」および関連するフレームワークのドキュメントを参照してください。
フレームワーク 例(アプリケーション エージェント ZIP) IBM WebSphere および InfoSphere WebSphere/InfoSphere UI で、モニタ対象サーバの Java 仮想マシンのプロパティページに移動します。次に、
javaagentとappdynamics.socket.collection.bci.enable=trueを汎用 JVM 引数として追加します。例:javaagent:/usr/appd/agents/apm/javaagent.jar -Dappdynamics.socket.collection.bci.enable=true
Apache Tomcat ファイル
CATALINA_BASE/bin/setenv.sh(Tomcat 6 以降)で、完全なコマンドを Catalina 環境変数として追加します。例:export CATALINA_OPTS="$CATALINA_OPTS -javaagent:/usr/appd/agents/apm/javaagent.jar -Dappdynamics.socket.collection.bci.enable=true"
Glassfish 完全なコマンドを GlassFish ドメインの
-javaagentJVM オプションとして追加します。asadmin ツールを使用してエージェントを追加できます。例:export LD_PRELOAD=/usr/appd/agents/netviz/lib/appd-netlib.so
glassfish4\bin\asadmin create-jvm-options "-
javaagent\:/usr/appd/agents/apm/javaagent.jar:-Dappdynamics.socket.collection.bci.enable=true"
JBoss スタンドアロン standalone.shファイルに完全なコマンドを追加します。例:export JAVA_OPTS="$JAVA_OPTS -javaagent:/usr/appd/agents/apm/javaagent.jar -Dappdynamics.socket.collection.bci.enable=true"Jetty Jetty ベースディレクトリの
start.iniコンフィギュレーション ファイルに完全なコマンドを追加します。次に例を示します。--exec -javaagent:/usr/appd/agents/apm/javaagent.jar -Dappdynamics.socket.collection.bci.enable=true
- アプリケーション エージェントが正しく稼働していることを検証するには、次のコマンドを入力します。
strings /proc/<app_pid>/environ
アプリケーション エージェントで Docker ホストゲートウェイ IP を指定します。
これらの手順は、アプリケーション エージェントが Docker ホストネットワーク外の Docker コンテナで実行されている場合にのみ必要です。
- 次のファイルを開きます。
<app-agent-install-dir>/<version-number>/external-services/netviz/netviz-service.properties
(このファイルにアクセスするためにexternal-services/netviz.zipの解凍が必要になる場合があります) netviz.agent.host.addressの場合、Docker ホスト ネットワーク インターフェイスのゲートウェイ IP を指定します。
この IP を判別するには、Docker ホストで次のコマンドを入力します。docker inspect <app_container_name> | grep Gateway- アプリケーション エージェントを再起動します。
- Docker ホストネットワークが接続されているかどうかを確認するには、コンテナ内から次のコマンドを入力します。
curl -k -v <host-network-IP>:3892応答を受信した場合は、404 Not Foundであっても、ネットワークが接続されます。
アプリケーションの再起動(IBM JVM のみ)
モニタリング対象のアプリケーションが IBM JVM で実行されている場合は、ネットワークエージェントが永続的な接続を検出してモニターするために、アプリケーションを再起動する必要があります。
マルチテナントのセットアップ(エージェントホスト上の複数のアプリケーション)
ネットワークエージェントが同じホスト上の複数のアプリケーションノードをモニタするようにするには、アプリケーション エージェントごとに次の手順を実行します。
ネットワークエージェント 4.5.6 以前を使用している場合は、ステップ 1 で説明されているように netlib パラメータを手動で有効にします。
ネットワークエージェントでの Netlib の有効化
- 次のファイルをテキストエディタで開きます。
<network_agent_home>/conf/agent_config.lua enable_netlibパラメータを編集します。npm_config = {log_destination = "file",log_file = "agent.log",debug_log_file = "agent-debug.log",disable_filter = 1,mode = "Advanced",enable_netlib = 1,lua_scripts_path = ROOT_DIR .. "/scripts/netagent/lua/",}
アプリケーション エージェントのインストールまたは更新(必要に応じて)
ネットワークエージェントには、Java アプリケーション サーバ エージェント 4.4 以降が必要です。以前のバージョンを実行している各アプリケーション エージェントを更新します。次を参照してください。Install the Java Agent
アプリケーション エージェントでの NetViz 外部サービスフォルダの抽出
- 次のフォルダに移動します。
<app-agent-install-dir>/<version-number>/external-services - まだ抽出されていない場合は、ZIP の内容が次のフォルダの下に配置されるように
netviz.zipアーカイブを抽出します。<app-agent-install-dir>/<version-number>/external-services
NetLib をプリロードしてアプリケーション エージェントでソケット収集を有効にする
- 次の例に示すように、Java アプリケーション エージェント開始コマンドを設定して、2 つの追加タスクを実行する必要があります。
- ネットワークエージェントが(ホスト全体ではなく)個々のノードのネットワークメトリックを収集できるように、
appd-netlibライブラリをプリロードします。
- ネットワークエージェントが(ホスト全体ではなく)個々のノードのネットワークメトリックを収集できるように、
- ネットワークエージェントの
を有効にして、ネットワークメトリックをアプリケーションフローにマップします。appdynamics.socket.collection.bci.enable
例:LD_PRELOAD=//lib/appd-netlib.so<network-agent-home>\java -javaagent:<>app_server_agent_home/javaagent.jar\-Dappdynamics.socket.collection.bci.enable=true
- ネットワークエージェントの
次の例では、モニタ対象アプリケーションのフレームワークによって、エージェント開始コマンドの編集方法がどのように異なるかを示しています。「Javaフレームワークによるエージェントのインストール」および関連するフレームワークのドキュメントを参照してください。
| フレームワーク | 例(アプリケーション エージェント ZIP) |
|---|---|
| IBM WebSphere および InfoSphere | WebSphere/InfoSphere UI で、モニタ対象サーバの Java 仮想マシンのプロパティページに移動します。次に、 javaagent:/usr/appd/agents/apm/javaagent.jar -Dappdynamics.socket.collection.bci.enable=true JVM 環境変数として
システム環境変数として
|
| Apache Tomcat | ファイル
|
| Glassfish | 完全なコマンドを GlassFish ドメインの
|
| JBoss スタンドアロン |
|
| Jetty |
組み込み Jetty を使用したサービスの場合:
|
アプリケーション エージェントが正しく稼働していることを検証するには、次のコマンドを入力します。strings /proc/<app_pid>/environ
アプリケーション エージェントで Docker ホストゲートウェイ IP を指定します。
これらの手順は、アプリケーション エージェントが Docker ホストネットワーク外の Docker コンテナで実行されている場合にのみ必要です。
- 次のファイルを開きます。
<app-agent-install-dir>/<version-number>/external-services/netviz/netviz-service.properties
(このファイルにアクセスするためにexternal-services/netviz.zipの解凍が必要になる場合があります。) netviz.agent.host.addressの場合、Docker ホスト ネットワーク インターフェイスのゲートウェイ IP を指定します。
この IP を判別するには、Docker ホストで次のコマンドを実行します。docker inspect <app_container_name> | grep Gateway- アプリケーション エージェントを再起動します。
- Docker ホストネットワークが接続されているかどうかを確認するには、コンテナ内から次のコマンドを実行します。
curl -k -v <host-network-IP>:3892応答を受信した場合は、404 Not Foundであっても、ネットワークが接続されます。
アプリケーションの再起動(IBM JVM のみ)
モニタリング対象のアプリケーションが IBM JVM で実行されている場合は、ネットワークエージェントが永続的な接続を検出してモニターするために、アプリケーションを再起動する必要があります。
シングル テナント セットアップ(エージェントホスト上の 1 つのアプリケーションのみ)
ネットワークエージェントで同じホスト上の 1 つのアプリケーションノードのみをモニタするようにするには、次の手順を実行します。
アプリケーション エージェントのインストールまたは更新(必要に応じて)
ネットワークの可視性を実現するには、Java アプリケーション エージェント 4.4 以降がネットワークエージェントと同じホストにインストールされている必要があります。詳細については、Install the Java Agentを参照してください。
アプリケーション エージェントでの NetViz 外部サービスフォルダの抽出
- 次のフォルダに移動します。
<app-agent-install-dir>/<version-number>/external-services - まだ抽出されていない場合は、ZIP の内容が次のフォルダの下に配置されるように
netviz.zipアーカイブを抽出します。<app-agent-install-dir>/<version-number>/external-services
ソケット インストゥルメンテーションの有効化
これは、エージェントがネットワークメトリックをアプリケーションフローにマップするために必要です。
- コントローラで歯車アイコン(
)をクリックし、[AppDynamics Agents] > [App Server Agents] を選択します。 - テーブルでエージェントを選択し、[Configure] をクリックします。[App Server Agent Configuration] ページが表示されます。
- ツリービュー(左)でアプリケーション、ティア、ノードを選択します。
- [Use Custom Configuration] を選択して、[+ Create Agent Property] をクリックします。
- [Edit Agent Property] ダイアログで、次のように指定します。
- Name = socket-enabled
- Type = Boolean
- Value = true

アプリケーション エージェントで Docker ホストゲートウェイ IP を指定します。
これらの手順は、アプリケーション エージェントが Docker ホストネットワーク外の Docker コンテナで実行されている場合にのみ必要です。
- 次のファイルを開きます。
<app-agent-install-dir>/<version-number>/external-services/netviz/netviz-service.properties
(このファイルにアクセスするためにexternal-services/netviz.zipの解凍が必要になる場合があります。) netviz.agent.host.addressの場合、Docker ホスト ネットワーク インターフェイスのゲートウェイ IP を指定します。
この IP を判別するには、Docker ホストで次のコマンドを実行します。docker inspect <app_container_name> | grep Gateway- アプリケーション エージェントを再起動します。
- Docker ホストネットワークが接続されているかどうかを確認するには、コンテナ内から次のコマンドを実行します。
curl -k -v <host-network-IP>:3892応答を受信した場合は、404 Not Foundであっても、ネットワークが接続されます。
アプリケーションの再起動(IBM JVM のみ)
モニタリング対象のアプリケーションが IBM JVM で実行されている場合は、ネットワークエージェントが永続的な接続を検出してモニターするために、アプリケーションを再起動する必要があります。