株式会社ネットワールドのエンジニアがお届けする技術情報ブログです。
各製品のエキスパートたちが旬なトピックをご紹介します。

【Citrix】uberAgent × SplunkでCitrix環境を可視化する(#1 構築編)

はじめに

皆様、こんにちは。ネットワールドSEの丸山です。

Citrixでは、ユーザー体験の可視化やトラブルシューティングを支援するソリューションとしてuberAgentが提供されています。

uberAgentはCitrix Directorでは把握しづらかったログオン処理の詳細な内訳やアプリケーションの動作状況、エンドユーザー視点でのパフォーマンス情報を収集できることが特長です。

今回は実際にuberAgentSplunkを構築し、どのような情報を取得し活用できるのかを検証してみました。

本記事では構築編として環境構築の手順や設定時のポイントをご紹介します。続く検証編(後日公開予定)では、実際に収集できるデータや活用シナリオについてご紹介する予定です。

目 次

1. uberAgentとは

まず、Citrixの機能である「uberAgent」とは何か、また今回連携するSplunkについてもあわせてご紹介します。

uberAgentとは?

uberAgentは、Windows・macOS・Linuxのエンドポイントを対象とした監視エージェントです。

Citrix環境ではDirectorでセッション情報や接続状況を確認できますが、「ユーザーが実際にどのような体験をしているのか」や「端末上で何が発生しているのか」まで詳細に把握することは難しい場合があります。

uberAgentは、こうした課題を補完するために利用されてきた製品で、アプリケーションの起動時間やログオン時間、ネットワーク品質、ブラウザ利用状況など、ユーザーエクスペリエンスに直結する情報を収集できます。
また、Citrixセッションだけでなく、ブラウザー経由で利用するMicrosoft 365や社内Webアプリケーションについても、利用状況やパフォーマンスを可視化できる点がuberAgentの大きな特長です。

2024年にはCitrix(Cloud Software Group)が開発元であるvast limits社を買収し、現在はCitrix製品の一部として提供されています。

Splunkとの連携イメージ

uberAgentは、端末上のログオン時間やアプリケーション利用状況、ネットワーク情報などを収集するエージェントであり、収集したデータは外部の分析基盤へ送信して保存・可視化します。

本記事では、その分析基盤としてSplunkを利用します。Splunkとは、サーバーやアプリケーション、ネットワーク機器などから出力されるログやメトリクスを収集・蓄積し、検索やダッシュボードによる分析・可視化を行うためのプラットフォームです。IT運用監視やセキュリティ分析の分野で広く利用されており、uberAgentが収集したデータを保存・分析するバックエンドとして利用できます。

構成はシンプルで、uberAgentが収集したデータを Splunk の HTTP Event Collector(HEC)へ送信し、Splunk側で保存・可視化します。データの流れは以下の通りです。

補足:Splunkアプリとバックエンド

uberAgentは、Splunk以外にも Azure Data ExplorerやElasticsearchなど複数のバックエンドへデータを送信できますが、uberAgentが提供する豊富なダッシュボードや分析機能を利用できるのは現時点ではSplunkのみです。
そのため、本記事ではSplunkを利用して構築・検証を行います。

📖 参考リンク:

docs.citrix.com

Directorでどこまで見える?Splunk連携との違い

CVAD 2503以降では、uberAgentをCitrix Directorと連携することで、アプリケーションの利用状況をDirector上から確認できるようになりました。

この機能を利用するには、WebStudioで「uberAgentのデータ収集を有効化する」ポリシーおよび「uberAgent データで Directorを強化する」ポリシーが有効になっている必要があります。ポリシーが適用されていると、Directorのダッシュボードに表示される[アプリケーションの使用状況]や、Directorの左側メニュー[アプリケーション]からアプリケーション別の利用状況を確認できます。

また、CVAD 2603ではApplication Performance機能が追加され、左側メニューの[アプリケーション]>[アプリケーションのパフォーマンス]から、アプリケーションやプロセスのCPU使用率、メモリ使用率、ディスク、ネットワーク遅延、入力遅延なども確認できます。

一方、詳細なログオン分析、ブラウザ/Webアプリ監視、アプリケーション単位のネットワーク品質分析など、uberAgent UXMの幅広い機能を活用するには、Splunkとの連携が必要です。主な違いを以下に示します。

📖 参考リンク:

docs.citrix.com

項目 Director連携のみ Splunk利用
ローカルアプリの利用状況
アプリケーション別の利用者数・起動数
アプリケーションパフォーマンス ※1
CPU/メモリ等のリソース分析 ※1
詳細なログオン分析 ×
ブラウザ/Webアプリ監視 × ※2
アプリケーション単位のネットワーク品質分析 ×
履歴・トレンド分析 ※3
Helpdeskダッシュボード ×
UXMダッシュボード ×
セキュリティ分析(ESA) × ※4

※1 CVAD 2603では、DirectorのApplication Performanceにより、 アプリケーション/プロセスのCPU使用率、メモリ使用率、ディスク、 ネットワーク遅延、入力遅延などを確認できます。
※2 ブラウザ/Webアプリ監視を利用するには、 対象ブラウザへのuberAgentブラウザ拡張機能の導入が必要です。
※3 Directorでも一定範囲の履歴を確認できますが、 Splunkでは収集・保持したデータを使用して、より詳細な検索や分析を行えます。
※4 uberAgent ESAは製品として提供されていますが、 今回の検証ではUXMのみを対象としているため、検証対象外としています。

Director連携でもアプリケーションの利用状況や基本的なパフォーマンス情報を確認できますが、ログオン、ブラウザ、ネットワークなどを含めてより詳しく分析する場合は、Splunkとの連携が有効です。

2. 検証環境

本章では、本記事で使用した検証環境について説明します。構築手順や画面キャプチャは、以下の環境を使用して取得しています。

前提条件

環境を構築するにあたり、以下の条件を満たしている必要があります。

uberAgentがサポートしているSplunkバージョンを使用すること

ファイアウォールを無効にしておくか、有効になっている場合は、「splunkd.exe」と「splunkweb.exe」の通信が許可されていること

SplunkサーバーとVDA間で通信できること

📖 参考リンク:

docs.citrix.com

docs.citrix.com

バージョン情報

今回使用した主な製品・コンポーネントのバージョンは以下の通りです。

製品 バージョン
Delivery Controller 2603
StoreFront 2603
License Server 11.17.2.0 build 55100
Virtual Delivery Agent 2603
Splunk Enterprise 10.4
uberAgent 8.0

※ 検証日時点の最新バージョンを使用しています。

📖 参考リンク:

docs.citrix.com

docs.citrix.com

https://help.splunk.com/en/?resourceId=Splunk_Installation_Systemrequirements

サーバー構成

今回の検証では、以下の構成で環境を準備しました。

Splunk Enterprise Server × 1
(Windows Server 2025)

CVAD管理サーバー× 1
(Windows Server 2025/Delivery Controller、StoreFront、License Server同居)

VDAサーバー × 2
(Windows Server 2025/uberAgent導入)

ユーザー接続とuberAgentのデータ連携イメージを以下に示します。

※本図では、StoreFrontでの認証やDelivery Controllerによるリソース仲介などの処理を省略し、主な接続経路とuberAgentのデータ連携経路のみを示しています。

3. 環境構築

ここから、実際の構築手順をご紹介します。UberAgentのバージョンによって手順や設定方法が変わることがあるため、使用するバージョンに合わせて適宜製品ドキュメントを参考に構築してください。

①Splunkアカウント作成

まずはSplunkアカウントを作成します。以下のリンクから登録を行うことで、Splunk Enterpriseの60日間無料トライアルを利用できます。(1日のデータ量は500 MBまでの制限有)
※最新のバージョンが表示されます
https://www.splunk.com/ja_jp/download/splunk-enterprise.html

フォームに必要情報を入力してアカウントを作成後、Splunkから確認メールが送信されます。
メール内のリンクをクリックしてメールアドレスの認証を行います。認証完了後、Splunk Enterpriseのダウンロードや利用を開始できます。

今回はWindows Server 2025環境へ導入するため、Windows版のインストーラーをダウンロードします。

②Splunkインストール

専用サーバーにSplunkをインストールしていきます。
利用規約を確認し、同意チェックを付けて [Access program] をクリックします。

インストーラーのダウンロード完了後、インストール作業へ進みます。

インストーラーを起動し、ライセンス規約への同意にチェックを入れて [Next] をクリックします。

管理者アカウントのユーザー名とパスワードを設定します。

必要に応じて [Create Start Menu Shortcut] を有効にし、[Install] をクリックします。
インストールには数分かかります。

インストール完了後、[Finish] をクリックします。必要に応じて、Splunk Enterprise をブラウザーで起動できます。

Splunk管理コンソールのログイン画面が表示されたら、作成した管理者アカウントでサインインできることを確認します。

※初回ログイン時には、利用状況データの送信設定やクイックツアーの案内が表示されます。内容を確認して進みます。

③uberAgent UXM・uberAgent ESAをインストール

次に、Splunkに UXM (User Experience Monitoring) と ESA (Endpoint Security Analytics) アプリケーションをインストールしていきます。これにより、uberAgentのデータを可視化するためのダッシュボードや分析機能がSplunkに追加されます。
以下リンクからuberAgentの最新版をダウンロードします。
https://www.citrix.com/downloads/citrix-monitoring-observability/

UXM (User Experience Monitoring) と ESA (Endpoint Security Analytics) アプリのインストールに必要な3つのファイルを確認します。

ブラウザで「http://servername:8000」と入力してSplunkコンソールのホームページにアクセスし、ユーザー名とパスワードを使用してSplunkにログインします。

画面左上の「管理」をクリックし、次の画面で「ファイルからアプリをインストール」をクリックしてください。

各uberAgent_####.tgzファイルを選択して、「アップロード」してください。

「uberAgent_ESA_searchhead.tgz」

「uberAgent_indexer.tgz」

「uberAgent_searchhead.tgz」

※上記3つのファイルをすべてアップロードしてください。なお、一括アップロードには対応していないため、各ファイルを1つずつアップロードする必要があります。

[ホーム] > [設定] > [サーバーコントロール] > [Splunkの再起動]に移動して、Splunkインスタンスを再起動します。

Splunkの再起動が終わるまで数分待ち、再度ログイン画面が表示されたらログインします。

管理コンソールの画面左App欄に、UXMとESAアプリケーションが追加されていることを確認してください。

次に、各アプリをクリックしてダッシュボードを起動します。まだ HEC を作成していないため、この時点ではデータは表示されません。

④uberAgent用インデックスの作成

続いて、uberAgentから送信されるデータの保存先として、「uberagent」インデックスを作成します。

Splunkでは、受信したデータをインデックスと呼ばれる領域に保存します。次の手順で作成するHTTP Event Collector(HEC)はデータの受け口となり、HECで受信したuberAgentのイベントは、ここで作成する「uberagent」インデックスに格納されます。

画面上部の[設定]から[インデックス]をクリックします。

[新規インデックス]をクリックします。

名前に「uberagent」と入力し、[保存]をクリックします。そのほかの項目は、今回の検証では既定値のままとします。

作成した「uberagent」インデックスは、後述するHECトークンのデフォルトインデックスとして指定します。

⑤HTTP Event Collector(HEC)作成

HTTP Event Collector(HEC)は、HTTP/HTTPS経由で外部からSplunkへデータを送信するための機能です。
uberAgentはHECを利用して収集したデータをSplunkへ送信するため、まずはHECを作成します。

管理コンソールの[設定] > [データ入力]をクリックします。

「HTTPイベントコレクター」をクリックします。

右上の「グローバル設定」をクリックします。

次のダイアログが表示されます。

以下の設定をし、保存をクリックします。

全トークン:有効

デフォルトインデックス:uberagent

SSLを有効にする:無効

HTTPポート番号:8088

※今回は検証環境のためSSLを無効にしています。本番環境ではHTTPSの利用を推奨します。

⑥HTTPイベントコレクタートークンを作成する

次に、HECの認証に使用するトークンを作成します。
「HTTPイベントコレクター」画面で「新しいトークン」をクリックします。

任意の名前を入力し、[次へ] をクリックします。(すべてデフォルト設定でOK)

[確認] をクリックします。

確認画面で「実行」をクリックします。

トークンが生成されます。表示されているトークン値をコピーしておきます。(「⑨Config & Support Toolによる設定ファイルの生成」で使用します。)

⑦uberAgentのインストール

Splunk側の準備が完了したら、続いて監視対象サーバーへ uberAgent をインストールします。
CVADのインストールメディアにはuberAgentが含まれています。「x64\Virtual Desktop Components」フォルダ内の 「uberAgent_x64.msi」を実行してインストールを開始します。

セットアップウィザードが起動したら、[次へ] をクリックしてインストールを開始します。

[使用許諾契約書に同意します] にチェックを入れて [次へ] をクリックします。

インストール先フォルダーを確認し、既定の設定のまま [次へ] をクリックします。

既定の設定のまま [次へ] をクリックします。

[インストール] をクリックしてインストールを開始します。

インストール完了後、[構成ツールを実行] を有効にしたまま [完了] をクリックし、初期設定を行います。

⑧ライセンスファイル作成・配置

Citrix Cloudへサインインし、[DaaS] → [uberAgent] を開きます。
ここからuberAgentのライセンスを取得できます。

[アクティブ化ファイルを生成する] をクリックし、uberAgentのライセンスファイルを生成します。識別しやすいファイル名を入力し、「ファイルを生成する」をクリックします。

アクティブ化ファイルの情報を確認し、[ファイルのダウンロード] をクリックします。

ダウンロードした「provisiontoken.blob」ファイルを、uberAgentのインストールディレクトリ(%ProgramFiles%\Citrix\uberAgent)へ配置します。
これでライセンスの適用は完了です。

⑨Config & Support Toolによる設定ファイルの生成

インストールが完了したら、Config & Support Toolを使用してSplunkへの接続設定を行います。

※Config & Support ToolはuberAgentのインストーラーに含まれています。
https://www.citrix.com/downloads/citrix-monitoring-observability

uberAgentのインストーラー内の[Tools] >>[uAConfigSupportTool]にある「uAConfigSupportTool64.exe」を実行します。

「Quick Configuration」を選択します。

:設定前:

Quick Configurationを選択すると、Splunkへの接続に必要な設定画面が表示されます。

「Configuration Source」には、インストールされているuberAgentのバージョンに対応したGitHub上の設定ファイル取得先が表示されます。
今回の環境ではuberAgent 8.0を使用しているため、「version/8.0」ブランチの設定アーカイブが指定されています。
また、今回は検証環境のため「Use Data Volume Optimized Config(データ量最適化構成)」にチェックを入れています。この設定を有効にすると、収集するデータ量を抑えたPoC向けの構成を使用できます。まずはデータ量を抑えて動作確認を行い、必要に応じて後から収集範囲を調整する流れが分かりやすいと思います。

:設定後:

主な設定項目は以下の通りです。

Receiver Type: Splunk

Protocol: HTTP

Servers: Splunk HEC の接続先URL(例:http://SplunkServer:8088

REST Token: 手順⑤で作成したHECトークン

Disable Certificate Validation: 検証環境で証明書検証を無効化する必要がある場合に有効化

Use Default uberAgent Index: 有効

License:前項で配置した「provisiontoken.blob」を指定

 

すべての入力が完了したら、[Apply] をクリックします。

設定が正常に適用されると、「Configuration applied successfully.」というメッセージが表示されます。

設定内容は「c:\programdata\vast limits\uberagent\configuration」配下へ反映されます。
設定後は「uberAgent.conf」が生成・更新されていることを確認できます。入力したSplunkの接続先やHECトークンなどの情報は「uberAgent.conf」に保存されます。

⑩マスターイメージの準備 (MCS/PVS利用時)

※個別に構築したVDAや、マスターイメージからの展開を行わない環境では、 本手順は不要です。

MCSまたはPVSを利用して、uberAgentをインストール済みの マスターイメージからVDAを展開する場合は、 スナップショット取得前に以下の準備を行います。

この作業は、マスターイメージ上に保持されているuberAgentの情報を削除し、 展開後の各VDAで個別の情報が生成されるようにするためのものです。


まず、管理者権限でコマンドプロンプトを開き、uberAgentサービスを停止します。

net stop uberAgent

サービスを停止したら、以下のコマンドを実行してuberAgentのレジストリ情報を削除します。

reg delete "HKLM\SOFTWARE\vast limits\uberAgent" /f /reg:64

ここまで完了したら、uberAgentサービスを停止した状態のままマスターイメージをシャットダウンし、スナップショットを取得します。

取得したスナップショットを使用して、MCSマシンカタログを作成または更新します。

展開されたVDAの起動後は、uberAgentサービスが自動的に起動していることを確認します。

PowerShellでは、次のコマンドで確認できます。

Get-Service uberAgent

Statusが「Running」となっていれば、サービスは起動しています。

⑪Splunkでデータを確認

uberAgentを導入したVDAを起動し、Citrix Workspace appから公開アプリケーションまたはデスクトップを起動します。接続後、uberAgentが端末やセッションの情報を収集し、SplunkのHECへ送信します。

まず、Splunkへログインして「Search & Reporting」を開きます。

以下の検索を実行します。

index=uberagent

イベントが表示されれば、uberAgentからSplunkへデータが送信されています。

複数のVDAを展開している場合は、対象のホスト名を指定して確認することもできます。

index=uberagent host={VDAのホスト名}

続いて、Splunkのホーム画面から「uberAgent UXM」を開きます。

ダッシュボードに対象VDAやユーザー、ログオン、プロセスなどの情報が表示されていれば、uberAgentとSplunkの連携は正常に動作しています。

Experience Score Overview(エクスペリエンススコアの概要)
ユーザーセッションやアプリケーション、マシンなどの各種スコアを確認できます。

Machine Performance(マシンパフォーマンス)
対象マシンのCPU使用率やディスクI/Oなど、マシンのパフォーマンス情報を確認できます。

⑫補足:データが表示されない場合の確認ポイント

uberAgentのダッシュボードにデータが表示されない場合は、以下の項目を確認してください。

Splunk側

HECが有効になっているか

HECトークンが無効化されていないか

HECのポート番号が設定と一致しているか

Splunkサーバーのファイアウォールで通信が遮断されていないか

VDA側

uberAgentサービスが起動しているか

Splunkサーバーの名前解決ができるか

SplunkサーバーのHECポートへ接続できるか

「uberAgent.conf」ファイルに正しい接続先が設定されているか

ライセンスまたはアクティブ化ファイルが正しく配置されているか

uberAgentのログにエラーが記録されていないか

 

ポート疎通は、VDA上で以下のコマンドを実行することで確認できます。

Test-NetConnection <Splunkサーバー名> -Port 8088

また、トラブルシューティング時は以下のログファイルを確認してください。

C:\Windows\Temp\uberAgent.log

C:\Windows\Temp\uberAgentConfiguration.log

4. まとめ

本記事では、uberAgent と Splunk を連携するための基本的な設定手順を紹介しました。
設定完了後は、ログオン情報やプロセス情報などのイベントを Splunk 上で確認できるようになります。まずは基本的なデータ収集を有効化し、ダッシュボードで収集状況を確認してみてください。
次回以降は、実際にどのような情報が収集できるのか、各ダッシュボードの見方や活用方法についても紹介していきたいと思います。

 

免責事項
  • 本書は、株式会社ネットワールド(以下 弊社)が作成・管理します。
  • 本書の記載内容の一部または全部を弊社に無断で改変・転載することを禁じます。
  • 本書の記載内容は、一部または全部が将来予告無く変更されることがあります。
  • 本書の利用は、利用者様の責任において行われるものとします。
  • 本書の記載内容には、最善の注意を払っておりますが、正確性・完全性を保証するものではありません。従いまして、本書の利用によって生じたあらゆる損害に関して、弊社は一切の責任を負いません。

▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼

ネットワールドが開催する
年に一度の大イベント
【 Networld Wiz 2026 】お申込み受付中!!
本ブログでご紹介したメーカーもイベントへ出展します!
セッション & ブース出展情報 随時更新中

▼ぜひチェックしてください▼