AppDynamics アプリエージェントは、AppDynamics コントローラに接続して構成データを取得し、モニタリング対象の環境に関する情報を送り返す必要があります。このページでは、エージェントとコントローラ間の接続に関する一般的な情報を提供します。

接続設定

エージェントとコントローラ間の接続は、エージェントによって開始される一方向接続です。したがって、エージェントで接続設定を構成するだけで十分です。

エージェントをコントローラに接続するには、次の情報を入力します。

  • Controller host:コントローラのホスト名。エージェントは直接コントローラに接続する場合と、プロキシを介して接続する場合があります。
  • Controller port:コントローラがエージェントのトラフィックをリッスンするポート。エージェントはポート 443 を使用します。これは、コントローラ UI へのブラウザ接続と同じポートです。
  • Account name:コントローラにリストされるアカウント名。1 つのテナントコントローラにつき、1 つのデフォルトアカウント customer1 と 1 つの内部システムアカウントの 2 つのアカウントがあります。ほとんどの接続では、デフォルトのアカウント名を使用します。 
  • Global Account name:Analytics エージェントからなど、イベントサービスへの特定の接続に使用されます。
  • Account access key:コントローラアカウントに関連付けられている一意のキー。アカウント名とアクセスキーの確認」を参照してください。  
  • SSL enabled:エージェントが SSL を使用して接続する必要がある場合。 

コントローラの開始ウィザードを使ってエージェントをダウンロードした場合、コントローラのホスト、ポート、およびアカウントの設定はすでに構成済みです。

お使いの環境でエージェントがプロキシを介して SaaS コントローラまたはオンプレミスコントローラに接続する場合、コントローラのホストとポートの設定を使用するようにエージェントのプロパティを構成します。例については、「 Javaエージェント構成プロパティ」でプロキシ設定の説明を参照してください。

アウトバウンド接続が制限された環境でエージェントから SaaS コントローラに接続するには、AppDynamics SaaS プラットフォーム コンポーネントへのアクセスを許可するファイアウォール規則を設定します。SaaS IP アドレスの一覧については、「Cisco AppDynamics SaaS Domains and IP Ranges」を参照してください。

アカウント名とアクセスキーの確認

エージェント ダウンロード ウィザードを使用せず手動でエージェントを構成するには、コントローラのホストとポート、アカウント名、およびアカウントアクセスキーを手動で設定します。管理者アカウントをお持ちの場合、AppDynamicsコントローラUIでアカウント名とアクセスキーを確認できます。管理者でない場合は、管理者にアクセスキーを問い合わせてください。

アカウント名とデフォルトアクセスキーを表示するには:

  1. ライセンスの表示権限を持つユーザでコントローラ UI にログインします。 
  2. 歯車アイコン()をクリックして [License] を選択します。 
  3. [Account ] タブをクリックします。アカウント名が [Name] ラベルの隣に表示されます。シングルテナントのオンプレミスコントローラでは、名前は customer1 ですが、SaaS コントローラでは名前が異なります。 
  4. [Access Key] ラベルの横にある [Show] をクリックして、このインスタンスのアカウントのデフォルトアクセスキー設定を表示します。この値をエージェント設定のアカウントアクセスキー設定として使用します。
    Click Show next to the Access Key label to reveal the account default access key setting for this instance. Use this value as the Account access key setting in agent settings.

デフォルトのルールに加えてライセンスルールを作成すると、各ルールのアクセスキーが [Rules] タブに表示されます。

接続の保護

.NET エージェントはコンテナでの設定を使用してコントローラと SSL プロトコルをネゴシエートします。通常は .NET エージェントのセキュリティプロトコルを構成する必要はありません。

Java エージェントの各種バージョンのデフォルト セキュリティ プロトコルの一覧については、「エージェントとコントローラの互換性」を参照してください。

ご使用のバージョンの Java エージェントのデフォルト セキュリティ プロトコルがコントローラまたは介在するプロキシと互換性がない場合、‑Dappdynamics.agent.ssl.protocol システムプロパティを渡して次のセキュリティプロトコルのいずれかを設定します。

  • [SSL]
  • [TLS]
  • TLSv1.2
  • TLSv1.1

次の形式を使用

java -javaagent:<agent_home>/javaagent.jar ... -Dappdynamics.agent.ssl.protocol <protocol> ...

以下で説明するように、セキュリティに関するコントローラ固有の考慮事項は、SaaS コントローラかオンプレミスコントローラかによって異なります。 

オンプレミスコントローラのセキュア接続

オンプレミスコントローラには、アクティブなセキュア(HTTPS)ポートとHTTPポートの両方があります。エージェントはどちらかのポートを使用してコントローラに接続できます。デフォルトでは、セキュア接続に使われる証明書は自己署名証明書です。.NETエージェントは、自己署名証明書を使用するセキュアポートで接続できないため、独自の証明書をポートに適用する必要があります。.NET エージェントは、自己署名証明書を使用するセキュアポートで接続できないため、独自の証明書をセキュアポートに適用する必要があります。AppDynamics SaaS コントローラに接続するアプリエージェントは、HTTPS 接続を使用する必要があります。

コントローラとエージェント間の接続用のSSLを実装するには

SaaSコントローラのセキュア接続

SaaSコントローラではSSLの使用が必須です。そのため、エージェントの構成設定で SSL を有効化し、それらのエージェントをコントローラのセキュアポート(443)に接続すれば十分です。詳細は、「アプリエージェントのセキュリティ」および「マシンエージェントのセキュリティ」を参照してください。

SaaS コントローラでの AWS PrivateLink の使用

一部の顧客は、エージェントトラフィックが暗号化されている場合でも、エージェントトラフィックがパブリックインターネットに公開されないようにするポリシーを持つことがあります。AppDynamics のお客様は、Amazon Web Services(AWS)のリージョン間 PrivateLink を利用して、仮想プライベートクラウド(VPC)と AppDynamics SaaS コントローラおよびオンプレミスコントローラ間でクラウドベースのアプリケーションをプライベート接続できます。このシナリオでは、VPC が異なる AWS リージョンに存在している場合でも、すべてのエージェントトラフィックが Amazon のプライベートネットワークを通過します。AWS PrivateLink を使用して AppDynamics エンドポイントから AWS VPC および AWS アカウントにデータを取り込む前に、いくつかのセットアップ手順を実行する必要があります。「How do I use AWS PrivateLink to connect to an AppDynamics SaaS Controller?」を参照してください。

アプリエージェントのセキュリティ

エージェトのSSLを構成するには、以下のSSL関連プロパティを設定します。

  • controller-ssl-enabledtrue に設定します。
  • controller-port を、オンプレミスまたは SaaS コントローラ向けの正しい値に設定します。

マルチテナントおよび SaaS 環境では、アプリエージェントは、接続プロパティ構成ファイルで設定されている、必須のアカウント名およびアカウントアクセスキーの値を使用して、コントローラに対し自身を認証します。       

スタンドアロンマシンエージェントのセキュリティ

マシンエージェントとコントローラの接続に関連したセキュリティ設定の詳細は、「マシンエージェントの設定プロパティ」を参照してください。 

接続の検証

アプリエージェントがコントローラにレポートを送信していることは、コントローラ UI にある [Tiers & Nodes] リストから確認できます。詳細については、「ティアとノード」を参照してください。また、歯車アイコンの下にある [AppDynamics Agents] ページからも確認できます(「アプリケーションエージェントの管理」を参照)。 

[Tiers & Nodes] ページの [App Agent Status] 列には、エージェントからコントローラへの接続状態が示されます。緑色の矢印アイコンはアクティブで接続済みのエージェントを示し、赤色の下矢印は以前認識されたものの現在は接続されていないエージェントを示します。 

エージェントがコントローラにレポートを送信していない場合、以下のトラブルシューティング情報を参照してください。

ティア間でトラフィックの相関が正しくない場合、モニタリング対象のノード間にあるネットワーク コンポーネント(ロードバランサやルーターなど)が、HTTP トラフィックから AppDynamics の相関ヘッダーを保持していることを確認してください。 

エージェントとコントローラ間の通信間隔

各 AppDynamics エージェントは、それぞれの目的に対応する通信チャネルを個別に持ち、異なる時間間隔でコントローラへの接続を自主的に開始します。

  • エージェント構成チャネルは、60 秒ごとに、新しい構成変更をコントローラに照会し、変更がある場合はそれをダウンロードします。
  • エージェント メトリック チャネルは、JMX、Windows パフォーマンスカウンタ、ビジネス トランザクション メトリックを含む新しい定期的なメトリックすべてを、60 秒ごとにコントローラに送信します。 
  • エージェントにとって新規のビジネストランザクションは、登録のため10秒ごとにコントローラに送信されます。
  • エージェントが新規のスナップショットやイベントを収集した場合、20秒ごとにコントローラに送信されます。

コントローラに送信される情報

次の表は、アプリケーション エージェントによって収集されてコントローラに送信される情報のタイプを示します。

メトリック説明
Server Request GUIDビジネストランザクションと呼ばれるリクエストを識別する一意の GUID。形式は xxxxxxxx-xxxx-xxxx- xxxx-xxxxxxxxxxxx で、x は小文字の 16 進数です。
Application Entry Pointsさまざまなフレームワークおよびテクノロジー間でトランザクションエントリポイントが識別されます。これには、サーブレットURI、Strutアクション名とメソッド名、Spring Bean名とメソッド名、JMSキューの宛先またはリスナー名、Webサービス/WCFアクション/オペレーション名、PHP仮想名などが含まれます。
Application Exit Pointsさまざまなフレームワークおよびテクノロジー間でトランザクション イグジット ポイントが識別されます。これには、HTTP URL エンドポイント、JMS キュー/宛先、タイプ、ベンダー、データベース URL エンドポイントとベンダー/バージョン、Web サービスのサービス名、キャッシュ名、および URL エンドポイントが含まれます。
パフォーマンスメトリック一般に、AppDynamicsの監視対象メトリックごとに、応答時間、コール率、およびエラー率が収集されます。これらの各メトリックには、それぞれのメトリック値に対して派生した自動ベースラインもあります。
Thread Stack Tracesアプリケーションリクエストを構成するコードレベルのメソッド実行メトリックが収集されます。このデータに含まれるのは、実行されたクラスとメソッド、およびソースコード内の行番号です。スタックトレースが収集されるのはトランザクションの 5% 未満であることに注意してください。エラーデータのエラー/例外とスタックトレースが収集されます。
SQL Query Values管理者権限が割り当てられている場合、クエリ内のSQLクエリ変数を有効化、収集、表示できます。パラメータデータの収集対象はトランザクションの5%未満であることに注意してください。構成の変更は監査ログに記録され、監査ログはセキュリティレビューに使用できます。
データコレクタ管理者権限が割り当てられている場合、HTTP値またはメソッドペイロード形式のデータを収集および表示できます。特定のデータコレクタおよびコードペイロードアクセサについては、収集のために明示的な構成が必要であることに注意してください。また、データ収集の対象はトランザクションの 5% 未満です。構成の変更は監査ログに記録され、監査ログはセキュリティレビューに使用できます。
ホスト名エージェントがインストールされてモニタリングデータのレポートを送信しているマシン(仮想/物理)のDNSホスト名。
IP Address Internet Protocol (IP)

モニタリングデータを送信しているエージェントがあるマシン(物理/仮想)の IP(インターネットプロトコル)アドレス。

CPU 使用率モニタリング対象のマシン/仮想マシン上で消費されているCPUの値。
Memory Usageモニタリング対象/仮想マシン上で消費されている物理メモリの値。
Network I/O Usageモニタリング対象のマシン/仮想マシン上で消費されているネットワークI/Oの値。
Disk I/O Usageモニタリング対象のマシン/仮想マシン上で消費されているディスクI/Oの値。
JVM Performance

JVMヒープ使用量、JVMメモリプール設定、ガベージコレクションのパフォーマンス、JVMシステム/スタートアップオプション、MBeanメトリック値(例:接続プール名や、アクティブ接続数、最大接続数などのメトリック値)

Blitz 負荷プロファイル

Blitz は SaaS 展開向けの、水平方向にスケーラブルなデータ処理プラットフォームです。エージェントからメトリックデータを収集し、集計して格納します。

10Mメトリック/分のBlitz負荷プロファイルには、以下のエージェントおよびチャーン情報が含まれます。

  • 24Kノードでアクティブ負荷10MM。合計登録メトリックは40M。

  • ノード分布:

    • DotNet = 3K

    • SIM マシンエージェントまたは Docker コンテナ = 30K
    • DBMonデータコレクタ = 1K

    • Javaノード = 16K

    • EUMブラウザアプリ = 60

  • Javaノードチャーン:1K/時間

  • SIMチャーンまたはDockerチャーンのどちらか

    • SIMノードチャーン = 40件/時間(4K SIMノードの1%)

    • Dockerチャーン = 200コンテナ/時間

  • ノードパージャーが有効、ハード制限は4K、ソフト制限は10K

  • SIMノードのパージが有効化され、削除は300/時間に制限されます。