Session Recording

スケーラビリティに関する考慮事項

Session Recording のインストールと実行には、Citrix Virtual Apps and Desktops の実行に必要なリソース以外に、ほとんど追加のリソースは必要ありません。ただし、Session Recording を使用して多数のセッションを記録する予定がある場合や、記録する予定のセッションによって大きなセッションファイル(たとえば、グラフィックを多用するアプリケーションなど)が生成される可能性がある場合は、Session Recording の展開を計画する際にシステムのパフォーマンスを考慮してください。

高度にスケーラブルな Session Recording システムの構築に関する詳細については、Citrix の記事 CTX200869 を参照してください。

ハードウェアの推奨事項

各 Session Recording Server に送信するデータ量と、サーバーがこのデータを処理および保存できる速度を考慮してください。システムが受信データを保存できる速度は、データ入力速度よりも速くなければなりません。

データ入力速度を見積もるには、記録されたセッション数に各記録セッションの平均サイズを乗じ、セッションを記録する時間で割ります。たとえば、8時間の勤務時間中に、それぞれ20 MBのMicrosoft Outlookセッションを5,000回記録する場合があります。この場合、データ入力速度は約28 Mbpsです(5,000セッションに20 MBを乗じ、8時間で割り、1時間あたりの3,600秒で割り、Mbpsへの変換のために8を乗じます)。

パフォーマンスは、単一の Session Recording Server のパフォーマンスを最適化するか、複数の Session Recording Server を異なるマシンにインストールすることで向上させることができます。

ディスクとストレージのハードウェア

ディスクとストレージのハードウェアは、Session Recording の展開を計画する際に考慮すべき最も重要な要素です。ストレージソリューションの書き込みパフォーマンスは特に重要です。データがディスクに書き込まれる速度が速いほど、システム全体のパフォーマンスは向上します。

Session Recording で使用するのに適したストレージソリューションには、ローカルディスクコントローラーまたは接続されたSANによってRAIDアレイとして制御される一連のローカルディスクが含まれます。

注:

SMBやNFSなどのファイルベースのプロトコルに基づいたNASにデータを保存すると、パフォーマンスとセキュリティに影響を与える可能性があります。セキュリティ上の影響を避けるために、使用するプロトコルの最新バージョンを使用し、適切なパフォーマンスを確保するためにスケールテストを実行してください。

ローカルドライブのセットアップでは、内蔵キャッシュメモリを備えたディスクコントローラーがパフォーマンスを向上させます。キャッシュディスクコントローラーには、停電時のデータ整合性を確保するためにバッテリーバックアップ機能が必要です。

ネットワーク容量

100 Mbpsのネットワークリンクは、Session Recording Server の接続に適しています。Gb Ethernet接続はパフォーマンスを向上させる可能性がありますが、100 Mbpsリンクの10倍のパフォーマンスが得られるわけではありません。

セッションレコーディングで使用されるネットワークスイッチが、利用可能なネットワーク帯域幅を競合する可能性のあるサードパーティアプリケーションと共有されていないことを確認してください。理想的には、ネットワークスイッチはセッションレコーディングサーバー専用であるべきです。

コンピューターの処理能力

セッションレコーディングサーバーがインストールされているコンピューターについては、次の仕様を考慮してください。

  • デュアルCPUまたはデュアルコアCPUを推奨します
  • 4 GBのRAMを推奨します

これらの仕様を超えても、パフォーマンスが大幅に向上することはありません。

複数のセッションレコーディングサーバーを展開する

単一のセッションレコーディングサーバーでパフォーマンス要件を満たせない場合、複数のセッションレコーディングサーバーを異なるマシンにインストールして、ロードバランシングプールとして機能させることができます。この種類の展開では、セッションレコーディングサーバーはストレージとデータベースを共有します。負荷を分散するには、ワークロード分散を担当するロードバランサーにセッションレコーディングエージェントを向けます。

データベースのスケーラビリティ

セッションレコーディングデータベースには、Microsoft SQL Server 2019、Microsoft SQL Server 2017、Microsoft SQL Server 2016、Microsoft SQL Server 2014、Microsoft SQL Server 2012、またはMicrosoft SQL Server 2008 R2が必要です。データベースに送信されるデータ量は、データベースには記録されたセッションに関するメタデータのみが保存されるため、少ないです。記録されたセッションのファイル自体は別のディスクに書き込まれます。通常、各記録セッションはデータベース内で約1 KBのスペースしか必要としません。ただし、セッションに検索可能なイベントを挿入するためにセッションレコーディングイベントAPIが使用される場合は除きます。

Microsoft SQL Server 2019、Microsoft SQL Server 2017、Microsoft SQL Server 2016、Microsoft SQL Server 2014、Microsoft SQL Server 2012、およびMicrosoft SQL Server 2008 R2のExpress Editionは、10 GBのデータベースサイズ制限を課します。記録セッションあたり1 KBで、データベースは約4,000,000セッションをカタログ化できます。Microsoft SQL Serverの他のエディションにはデータベースサイズの制限がなく、利用可能なディスクスペースによってのみ制限されます。データベース内のセッション数が増加しても、データベースのパフォーマンスと検索速度の低下はごくわずかです。

If you are not making customizations through the Session Recording Event API, each recorded session generates four database transactions: two when recording starts, one when the user logs on to the session being recorded, and one when recording ends. If you use the Session Recording Event API to customize sessions, each searchable event recorded generates one transaction. Because even the most basic database deployment can handle hundreds of transactions per second, the processing load on the database is unlikely to be stressed. The impact is light enough that the Session Recording Database can run on the same SQL Server as other databases, including the Citrix Virtual Apps™ and Desktops data store database.

セッションレコーディング展開で数百万もの記録セッションをデータベースにカタログ化する必要がある場合、SQL Serverのスケーラビリティに関するMicrosoftのガイドラインに従ってください。

スケーラビリティに関する考慮事項