このページでは、コンテナ化されたアプリケーションを AppDynamics アプリケーション サーバ エージェントでインストゥルメント化するために使用できる、さまざまなオプションについて説明します。

次のオンプレミスおよびクラウド展開のプラットフォームでは、アプリケーションを Docker コンテナイメージとして展開できます。

  • Kubernetes
  • Amazon ECS や Azure Container Instances などのクラウドコンテナ化プラットフォーム
  • Docker Swarm
  • Docker Engine を実行しているホスト

次の各プラットフォームは、アプリケーション サーバ エージェントでコンテナ化されたアプリケーションをインストゥルメント化するためのさまざまなオプションをサポートしています。

Kubernetes プラットフォーム

Kubernetes プラットフォームで実行するアプリケーション(OpenShift、Rancher、EKS、AKS、GKE など)では、次のオプションを使用してアプリケーションをインストゥルメント化できます。

最もシンプルな操作エクスペリエンスを提供できるため、AppDynamics では自動インストゥルメンテーションを推奨しています。これにより、個々のアプリケーションのイメージや導入仕様を変更する必要がなくなります。アプリケーション エージェントの設定を 1 つの場所に集約し、アプリケーション サーバ エージェントのバージョンを含めます。これにより、アプリケーション サーバ エージェントの初期ロールアウトと以降のアップグレードが大幅に簡素化されます。詳細については、Auto-Instrument Applications with the Cluster Agentを参照してください。

自動インストゥルメンテーションを使用できない場合は、手動オプションとして init コンテナを使用し、展開時にエージェントファイルをアプリケーションコンテナにコピーすることをお勧めします。詳細については、Init コンテナを使用したアプリケーションのインストゥルメント化を参照してください。 

また、Dockerfile を使用して、作成時にエージェントファイルを Docker イメージにコピーすることもできます。詳細については、Dockerfile を使用したアプリケーションのインストゥルメント化を参照してください。

非 Kubernetes プラットフォーム

非 Kubernetes 環境(Docker Swarm、Amazon ECS、Azure Container Instances など)では、Dockerfile を使用するのが最善のオプションです。詳細については、Dockerfile を使用したアプリケーションのインストゥルメント化を参照してください。

環境によっては、アプリケーションイメージを変更せずにアプリケーション サーバ エージェントをインストールできる場合があります。たとえば、Docker 共有ボリュームを使用して、実行中のコンテナがアプリケーション サーバ エージェント ファイルにアクセスできるようにします。Amazon ECS は、起動時に 2 番目のコンテナを参照する方法を指定する、コンテナの依存関係をサポートします。次に、2 番目のコンテナを使用して、アプリケーション サーバ エージェント ファイルをアプリケーションコンテナにコピーできます。