すべてのプロダクト
Search
ドキュメントセンター

Application Real-Time Monitoring Service:単一ホストへの複数インスタンスのデプロイ

最終更新日:Aug 19, 2026

単一ホストにアプリケーションの複数のインスタンスをデプロイするには、-Darms.agentId パラメーターを各 JVM プロセスで一意の値 (001、002、003 など) に設定します。このパラメーターは、接続する JVM プロセスを指定します。

例:

# インスタンス 1
java -javaagent:/{user.workspace}/ArmsAgent/aliyun-java-agent.jar \
  -Darms.licenseKey=<LicenseKey> \
  -Darms.appName=<AppName> \
  -Darms.agentId=001 \
  -jar demoApp.jar

# インスタンス 2
java -javaagent:/{user.workspace}/ArmsAgent/aliyun-java-agent.jar \
  -Darms.licenseKey=<LicenseKey> \
  -Darms.appName=<AppName> \
  -Darms.agentId=002 \
  -jar demoApp.jar

プレースホルダーを実際の値に置き換えてください。

プレースホルダー説明例
{user.workspace}ARMS エージェントのインストールディレクトリの絶対パス/home/admin
<LicenseKey>アプリケーションの ARMS ライセンスキーLTAI5tXxx
<AppName>ARMS に登録されたアプリケーション名my-order-service
説明

-javaagent 引数は -jar 引数の前に指定する必要があります。これは JVM オプションであり、アプリケーションの引数ではありません。

説明

ARMS エージェントのバージョンが 2.7.3.5 より前の場合は、aliyun-java-agent.jar を arms-bootstrap-1.7.0-SNAPSHOT.jar に置き換えてください。最新の機能と修正を利用するには、最新のエージェントバージョンにアップグレードすることを推奨します。

Docker コンテナのクロスホストデプロイシナリオ

複数の ECS インスタンス上の Docker コンテナに同じアプリケーションをデプロイする場合、すべてのホストで、デフォルトの Docker ブリッジネットワークは 172.17.0.0/16 サブネットを使用します。その結果、異なるホスト上のコンテナに 172.17.0.2 などの同じ内部 IP アドレスが割り当てられる可能性があります。ARMS は IP アドレスによってアプリケーションインスタンスを識別するため、同じ IP アドレスを共有するコンテナは、[Application Monitoring] のインスタンスリストで単一のインスタンスに統合されます。

解決策 1:ホストネットワークモードの使用

--network=host を指定してコンテナを起動し、コンテナがホストの IP アドレスを直接使用するようにします。各 ECS インスタンスは異なる IP アドレスを持つため、デフォルトの Docker ブリッジネットワークに起因する IP アドレスの競合を回避できます。

docker run --network=host \
  -e JAVA_TOOL_OPTIONS="-javaagent:/{user.workspace}/ArmsAgent/aliyun-java-agent.jar -Darms.licenseKey=<LicenseKey> -Darms.appName=<AppName>" \
  <image>

解決策 2:環境変数によるエージェント ID の挿入

ホストネットワークモードを使用できない場合は、すべてのホストで同じデプロイスクリプトを維持し、各ホストで異なる値を持つコンテナの HOSTNAME 環境変数を使用して -Darms.agentId を動的に設定します。この方法により、デプロイスクリプトでホスト固有の設定を行うことなく、エージェント ID の重複を回避できます。

java -javaagent:/{user.workspace}/ArmsAgent/aliyun-java-agent.jar \
  -Darms.licenseKey=<LicenseKey> \
  -Darms.appName=<AppName> \
  -Darms.agentId=$HOSTNAME \
  -jar demoApp.jar