🤖

閉域環境へのSplunk AppDynamics Private Synthetic Agent の導入

に公開
2026/04/07

はじめに

本記事では、Splunk AppDynamics Private Synthetic Agent(以下 PSA)を筆者の閉域環境へ実際に新規インストールしてみた際の記録を共有します。インストールに当たっては、次の資料を参考にします。

以下、本記事では PSA の概要、前提、アーティファクトの準備、インストール、簡単な動作確認について記載します。

PSAの概要

PSA は、自社のネットワーク内や特定のデータセンター内に配置できる外形監視用のエージェントです。

これを利用することにより、閉域環境内においてユーザーの操作をシミュレートしたパフォーマンス測定や可用性チェックを行うことができます。ここで言う閉域環境とは、パブリックな監視拠点からはアクセスできない環境、あるいはファイアウォール内の環境です。

参考までに、Splunk AppDynamics の外形監視用エージェントには PSA 以外にも、Synthetic Hosted Agent があります。両者の特徴を比べた表を記載します。

項目 PSA Synthetic Hosted Agent
管理主体 ユーザー(自社) Splunk
設置場所 自社データセンター、社内LAN AWS、Azure
主な監視対象 制限されたネットワーク内のWebサイト・API 公開されているWebサイト・API
導入の手間 必要(PSA動作用サーバーの準備とインストールが必要) 不要(設定のみですぐ利用可能)
インフラ費用 ユーザー側でサーバー維持費を負担 ライセンス料金に含まれる
ネットワーク制限 閉域環境内で動作可能 インターネット経由のアクセスが必要

本記事では PSA を使います。

前提

本記事では次のことを前提とします。

  • 本記事の対象読者は PSA の導入を検討しているインフラエンジニア・SRE・アプリケーション開発者
  • PSA の動作プラットフォームを大きく分けると Docker と Kubernetes になるが、本記事では Docker を使用する
  • PSA のバージョンとしては、本執筆(2026 年 1 月 20 日)時点の最新版である 25.11.0 を使用
    • このバージョンのアーティファクト(PSA Docker イメージとインストール用 zip ファイル)を入手できること
  • PSA 動作用サーバーを準備できること
    • 同サーバーの必要ハードウェアスペックについては、PSAハードウェア要件のページのうち次の箇所を参照
      • Docker の表
      • Number of Measurement Containers
    • 同サーバーの OS としては、本記事では RHEL 10 を使用
      • Docker Engine と Docker Compose plugin は既にインストール済み
      • Docker Engine のデーモンプロセス(dockerd)は既に起動済み
    • 同サーバーの /root ディレクトリー以下に、次のアーティファクト 2 点が既に配置されていること
      1. PSA Docker イメージ: Pre-built Private Synthetic Agent Docker Images (zip)
      2. インストール用 zip ファイル: Private Synthetic Agent for web monitoring
  • PSA 動作用サーバーから接続可能な Splunk AppDynamics プラットフォームがあること
    • PSA の接続先となる Shepherd URL と、そのための認証情報(EUM アカウント名とアクセスキー)を知っていること
    • その Splunk AppDynamics プラットフォームには、PSA 動作に必要なライセンスが既にプロビジョニングされていること
  • PSA 動作用サーバーから接続可能なテスト対象(例: 任意のウェブサーバー)があること
  • PSA のインストール後、本記事では PSA による機能のうち Browser Synthetic Monitoring だけを簡単な動作確認対象とする
  • 本記事ではセキュリティーあるいは記述量削減のため、設定ファイルやコマンド入出力における一部の情報を「■」あるいは「(中略)」へ置換して記載する

アーティファクトの準備

まずは、PSA 動作用サーバーへログインし、root ユーザーになります。そして、前提に記載したアーティファクトのファイル 2 点が既に配置されていることを確認します。

$ sudo su -
# ls -l
total 1294724
-rw-r--r--. 1 root root     592099 Jan 20 16:58 synthetic-agent-25.11.0.301.zip
-rw-r--r--. 1 root root 1325200092 Jan 20 16:58 synthetic-zipped-agent-linux_amd64-25.11.0.zip

続いて任意の作業用ディレクトリーを作り、そこに PSA Docker イメージの zip ファイルを展開します。

# mkdir synthetic-zipped-agent-linux_amd64-25.11.0
# unzip synthetic-zipped-agent-linux_amd64-25.11.0.zip -d synthetic-zipped-agent-linux_amd64-25.11.0/
Archive:  synthetic-zipped-agent-linux_amd64-25.11.0.zip
   creating: synthetic-zipped-agent-linux_amd64-25.11.0/synth-agents/
  inflating: synthetic-zipped-agent-linux_amd64-25.11.0/synth-agents/ignite-2.16.0-jdk11.tar
  inflating: synthetic-zipped-agent-linux_amd64-25.11.0/synth-agents/heimdall-25.11.3505.tar
  inflating: synthetic-zipped-agent-linux_amd64-25.11.0/synth-agents/api-monitoring-agent-1.0-456.tar
  inflating: synthetic-zipped-agent-linux_amd64-25.11.0/synth-agents/chrome-agent-1.0-1242.tar

そして、PSA Docker イメージ 4 個をロードします。

# cd synthetic-zipped-agent-linux_amd64-25.11.0/synth-agents/
# docker load -i api-monitoring-agent-1.0-456.tar
Loaded image: ■.dkr.ecr.us-west-2.amazonaws.com/sum/api-monitoring-agent:1.0-456
# docker load -i chrome-agent-1.0-1242.tar
Loaded image: ■■■■■■■■■■■■.dkr.ecr.us-west-2.amazonaws.com/sum/chrome-agent:1.0-1242
# docker load -i heimdall-25.11.3505.tar
Loaded image: ■■■■■■■■■■■■.dkr.ecr.us-west-2.amazonaws.com/sum/heimdall:25.11.3505
# docker load -i ignite-2.16.0-jdk11.tar
Loaded image: apacheignite/ignite:2.16.0-jdk11

イメージ 4 個が無事にロードできたことを確認します。

# docker image ls
                                                                                                            i Info →   U  In Use
IMAGE                                                                           ID             DISK USAGE   CONTENT SIZE   EXTRA
■■■■■■■■■■■■.dkr.ecr.us-west-2.amazonaws.com/sum/api-monitoring-agent:1.0-456   ba28df0893e0        332MB          156MB
■■■■■■■■■■■■.dkr.ecr.us-west-2.amazonaws.com/sum/chrome-agent:1.0-1242          957c60204ea2          4GB         1.98GB
■■■■■■■■■■■■.dkr.ecr.us-west-2.amazonaws.com/sum/heimdall:25.11.3505            310f7f26f141        906MB          452MB
apacheignite/ignite:2.16.0-jdk11                                                b85f2785115e        785MB          389MB

ここで出力された次の値は、インストールのステップで参照します。

  • ■■■■■■■■■■■■.dkr.ecr.us-west-2.amazonaws.com/sum/api-monitoring-agent:1.0-456 …①
  • ■■■■■■■■■■■■.dkr.ecr.us-west-2.amazonaws.com/sum/chrome-agent:1.0-1242 …②
  • ■■■■■■■■■■■■.dkr.ecr.us-west-2.amazonaws.com/sum/heimdall:25.11.3505 …③

ホームディレクトリーへ戻り、別のアーティファクト向けの作業用ディレクトリーを作った後、そこにインストール用 zip ファイルを展開します。

# cd
# mkdir synthetic-agent-25.11.0.301
# unzip synthetic-agent-25.11.0.301.zip -d synthetic-agent-25.11.0.301/
Archive:  synthetic-agent-25.11.0.301.zip
 extracting: synthetic-agent-25.11.0.301/ignite-psa.tgz
  inflating: synthetic-agent-25.11.0.301/install_psa
  inflating: synthetic-agent-25.11.0.301/monitoring_psa
   creating: synthetic-agent-25.11.0.301/sum-heimdall/
   creating: synthetic-agent-25.11.0.301/sum-heimdall/docker-PSA/
  inflating: synthetic-agent-25.11.0.301/sum-heimdall/docker-PSA/docker-compose.yaml
   creating: synthetic-agent-25.11.0.301/sum-heimdall/docker-PSA/appdynamics/
  inflating: synthetic-agent-25.11.0.301/sum-heimdall/docker-PSA/appdynamics/application-onprem.yml
 extracting: synthetic-agent-25.11.0.301/sum-psa-heimdall.tgz
  inflating: synthetic-agent-25.11.0.301/sum-psa-monitoring.tgz
  inflating: synthetic-agent-25.11.0.301/uninstall_psa
  inflating: synthetic-agent-25.11.0.301/upgrade_psa

これでアーティファクトの準備ができたことになります。

インストール

実際に PSA のインストールをしていきます。そのため、まずはインストール用 zip ファイルの展開先ディレクトリーのうち、sum-heimdall/docker-PSA/appdynamics/ サブディレクトリーへ移動します。

# cd synthetic-agent-25.11.0.301/sum-heimdall/docker-PSA

そして、そのディレクトリー以下にあるファイル appdynamics/application-onprem.yml をテキストエディターで開き、次の値を変更して保存します。

キー 変更後の値
shepherd -> url Shepherd URL
shepherd -> credentials -> eumAccount EUMアカウント名
shepherd -> credentials -> eumKey EUMアクセスキー
shepherd -> registration -> location -> code ロケーションコード(例: PSA-1)
shepherd -> registration -> location -> name ロケーション名(例: PSA 1)
chrome -> image ②の値
api -> image ①の値

もし本番環境を想定した場合、要件によっては上記以外の値で変えるべき箇所があるでしょうが、本記事では簡単な動作確認が出来れば良いため、上記値だけを変更します。

続いて、docker-compose.yaml をテキストエディターで開き、次の値を変更して保存します。

キー 変更後の値
services -> heimdall -> image ③の値

これによりインストールにて使う設定ファイルの変更が終わりましたので、次は PSA を起動してみます。

# docker compose up -d
WARN[0000] /root/synthetic-agent-25.11.0.301/sum-heimdall/docker-PSA/docker-compose.yaml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
WARN[0000] No services to build
[+] up 3/3
 ✔ Network docker-psa_measurement Created                                                                                   0.1s
 ✔ Container ignite               Created                                                                                   0.1s
 ✔ Container heimdall                                                                                                       0.0s

[+] up 3/3 のように表示されれば OK です。上記例には警告が 2 件でていますが、これらは無視して問題ありません。

また必要でしたら、2 階層上のディレクトリーにある monitoring_psa スクリプトを実行すると、PSA 関連コンテナーが動いているかどうかを確認できます。

# ../../monitoring_psa

----------------------------
| Service     |   Status    |
----------------------------
| Ignite      |   running   |
| Heimadall   |   running   |
----------------------------

NAME                                          CPU %     MEM USAGE / LIMIT     MEM %
heimdall                                      0.30%     456.5MiB / 7.298GiB   6.11%
ignite                                        0.38%     409.6MiB / 7.298GiB   5.48%

Ignite と Heimadall どちらも status が running となっていれば OK です。これでインストールが終わりました。

簡単な動作確認

最後に簡単な動作確認をしましょう。

PSA 動作用サーバーが接続している Splunk AppDynamics プラットフォームにて、Browser Synthetic Monitoring のジョブ作成画面を開きます。Browser Synthetic Monitoringジョブ作成のマニュアルを参考にして、ジョブを作成します。ロケーションには、インストール時に設定したロケーション名を選択します。この画面で目的のロケーション名が選択できない場合、PSA が正常に接続できていない可能性があります。
ジョブ作成画面1

その他、ジョブ作成に必要な情報を入力し、最後に Save ボタンを押します。
ジョブ作成画面2

Save ボタン押下後にエラーがでなければ OK です。

数分待ってから、ジョブの実行結果が表示されるのを確認しましょう。
ジョブ一覧画面

ここでは、ジョブの実行結果が緑または赤色になれば OK です。緑の場合は外形監視結果に問題なし、赤の場合は問題ありですが、いずれにしても PSA そのものは動いていることになります。

この画面のジョブの行をダブルクリックすると、そのジョブが実行したセッションの一覧画面が開きます。
セッション一覧画面

セッションの一覧が表示されれば OK です。これにより動作確認は完了とします。

まとめ

本記事では、Splunk AppDynamics PSA の概要、前提について説明し、その後アーティファクトの準備、インストール、簡単な動作確認を実際に行ってみました。

PSA を使うことにより、閉域環境内においてユーザーの操作をシミュレートしたパフォーマンス測定や可用性チェックを行うことができます。

また本記事では実施しませんでしたが、設定によっては PSA のセッションから Application Performance Monitoring(APM)の画面へと連携できます。これによりフロントエンドからバックエンドまで、エンドツーエンドでの障害対応ができます。

Discussion