既存の展開で負荷分散を構成する
この記事では、既存のSession Recording展開でCitrix ADCを使用して負荷分散ノードを追加するプロセスについて説明します。プロセス全体を通して、以下のサーバーが例として使用されます。また、AzureでSession Recordingを展開し、負荷分散することもできます(/ja-jp/session-recording/2206/best-practices/deploy-and-load-balance-session-recording-in-azure.html)。
-
セッションレコーディング
ホスト名 サーバーの役割 OS IPアドレス SRサーバー1 セッションレコーディング サーバー ウィンドウズ サーバー 10.63.32.55 エルビーディーシー ドメインコントローラー ウィンドウズ サーバー 10.63.32.82 ティーエスブイディーエー セッション録画エージェント ウィンドウズ サーバー 10.63.32.215 エスアールエスキューエル セッション録画データベースとファイルサーバー ウィンドウズ サーバー 10.63.32.91 すべてのセッション録画コンポーネントとドメインコントローラーはドメインを共有します(例:
lb.com)。サーバーログオンには、ドメイン管理者アカウント(例:lb\administrator)が使用されます。 -
シトリックス ADC
ホスト名 サーバーの役割 管理IPアドレス (NSIP) サブネットIPアドレス (SNIP) ネットスケーラー シトリックス ADC VPX インスタンス 10.63.32.40 10.63.32.109 詳細については、「Citrix ADC VPXインスタンスを展開する」を参照してください。
ステップ1:ファイルサーバー上に共有フォルダーを作成する
-
ドメイン管理者アカウントを使用してファイルサーバーにログオンします。例:
lb\administrator。 -
録画を保存するフォルダーを作成し、そのフォルダーに
SessionRecordingという名前を付けます。例:C:\SessionRecording。そのフォルダーの読み取り/書き込み権限をSession Recordingサーバーと共有します。SRServer1を例として、LB\SRSERVER1$と入力します。ドル記号$は必須です。

-
SessionRecordingフォルダー内にサブフォルダーを作成し、そのサブフォルダーにshareという名前を付けます。例:C:\SessionRecording\share。
-
アーカイブされた録画を復元するための別のフォルダーを作成し、そのフォルダーに
SessionRecordingsRestoredという名前を付けます。例:C:\ SessionRecordingsRestored。そのフォルダーの読み取り/書き込み権限をSession Recordingサーバーと共有します。SRServer1を例として、LB\SRSERVER1$と入力します。ドル記号$は必須です。 -
SessionRecordingsRestoredフォルダー内にサブフォルダーを作成し、そのサブフォルダーにshareという名前を付けます。例: C:\SessionRecordingsRestored\share。
ステップ2:既存のSession Recordingサーバーを構成して負荷分散をサポートする
この手順では、既存のSession Recordingサーバーを構成して負荷分散をサポートする方法について説明します。ステップ7では、既存の展開にSession Recordingサーバーを追加する手順について詳しく説明します。
-
ドメイン管理者アカウントを使用して、セッションレコーディングサーバーにログオンします。
-
セッションレコーディングサーバーのプロパティを開きます。

-
手順1で作成したユニバーサルネーミング規則 (UNC) パスを、レコーディングファイルを保存および復元するために追加します。この例では、
\\SRSQL\SessionRecording\shareおよび\\SRSQL\SessionRecordingRestored\shareです。SRSQLはファイルサーバーのホスト名です。注:
プレーヤーとセッションレコーディングサーバーを同じマシンにインストールしない限り、セッションレコーディングプレーヤーは、ドライブ文字またはドル記号 (
$) を含むパスにあるファイルを再生できません。
-
HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\SmartAuditor\Serverにあるセッションレコーディングサーバーのレジストリキーに値を追加します。値の名前: EnableLB 値のデータ: 1 (D_WORD、有効を意味します)

-
シトリックス セッションレコーディング ストレージマネージャー サービスを再起動します。
手順3: Citrix ADCで負荷分散を構成する
Citrix ADCで負荷分散を構成する方法は、TCPパススルーとSSLオフロードの2つがあります。
TCPパススルーを介して負荷分散を構成する
次のトポロジは、TCPパススルーを介して負荷分散を構成する方法を示しています。
-
PythonベースのWebSocketサーバー(バージョン1.0)を使用している場合:

-
IISでホストされているWebSocketサーバー(バージョン2.0)を使用している場合:

TCPパススルーによる負荷分散を構成するには、次の手順を実行します。
-
Citrix ADC VPXインスタンスにログオンします。
-
構成 > システム > 設定 > 基本機能の構成に移動します。

-
負荷分散を選択し、OKをクリックします。

-
負荷分散サーバーを追加します。
トラフィック管理 > 負荷分散 > サーバーに移動し、追加をクリックします。

セッションレコーディングサーバーの名前とIPアドレスを入力し、Createをクリックします。例:

右上隅にある保存アイコンをクリックして、変更を保存します。
保存をクリック (/ja-jp/session-recording/2206/media/save-icon.png)
-
WebSocketサーバーバージョン1.0の場合は、各セッションレコーディングサーバーに対してポート80、1801、22334、および443の負荷分散サービスを追加します。WebSocketサーバーバージョン2.0の場合は、各セッションレコーディングサーバーに対してポート80、1801、および443の負荷分散サービスを追加します。
トラフィック管理 > 負荷分散 > サービス に移動し、追加 をクリックします。
負荷分散サービスを追加 (/ja-jp/session-recording/2206/media/add-load-balancing-services.png)
追加する各負荷分散サービスの名前を入力します。Existing Server を選択し、ターゲットのセッションレコーディングサーバーのIPアドレスを選択し、サーバープロトコルとして TCP を選択し、ポート番号を入力します。OK をクリックします。
負荷分散サービスを作成 (/ja-jp/session-recording/2206/media/create-a-load-balancing-service.png)
TCPプロトコルモニターを各負荷分散サービスにバインドします。
TCPプロトコルモニターをバインド (/ja-jp/session-recording/2206/media/bind-tcp-protocol-monitor.png)
右上隅にある保存アイコンをクリックして、変更を保存します。
作成したサービスを保存 (/ja-jp/session-recording/2206/media/services-save-icon.png)
ヒント:
ポート22334の負荷分散サービスは、WebSocketサーバーバージョン1.0でのみ必要です。
-
負荷分散仮想サーバーを追加します。
WebSocketサーバーバージョン1.0の場合は、ポート80、443、1801、および22334の負荷分散仮想サーバーを追加するために、次の手順を完了します。WebSocketサーバーバージョン2.0の場合は、ポート80、443、および1801の負荷分散仮想サーバーを追加します。例:
「仮想サーバーを保存」(/ja-jp/session-recording/2206/media/save-virtual-servers.png)
「トラフィック管理 > 負荷分散 > 仮想サーバー」に移動し、「追加」をクリックします。
「仮想サーバーを追加」(/ja-jp/session-recording/2206/media/add-virtual-servers.png)
TCPプロトコルに基づいて、Citrix ADC VIPアドレスを持つ各仮想サーバーを追加します。
「負荷分散仮想サーバー」(/ja-jp/session-recording/2206/media/load-balancing-virtual-server.png)
各仮想サーバーを同じポートの負荷分散サービスにバインドします。例:
「負荷分散仮想サーバーサービスバインディング」(/ja-jp/session-recording/2206/media/virtual-server-service-binding.png)
「仮想サーバーサービスバインディングを追加」(/ja-jp/session-recording/2206/media/add-virtual-server-service-binding.png)
負荷分散方法を選択します。
「負荷分散方法を選択」(/ja-jp/session-recording/2206/media/choose-load-balancing-method.png)
各仮想サーバーで永続性を構成します。永続性タイプとして SOURCEIP を選択することをお勧めします。詳細については、「永続性設定」を参照してください。
「永続性を構成」(/ja-jp/session-recording/2206/media/configure-persistence.png)
-
ドメインコントローラー上でCitrix ADC VIPアドレスのホストレコードを作成します。
「ホストレコードを作成」(/ja-jp/session-recording/2206/media/create-host-record.png)
-
HTTPS経由でWebプレーヤーにアクセスするには、Citrix ADCと各Session Recordingサーバーの両方でSAN証明書が利用可能であることを確認してください。SAN証明書には、Citrix ADCと各Session RecordingサーバーのFQDNが含まれています。
SAN証明書(/ja-jp/session-recording/2206/media/san-certificate.png)
SSLオフロードによる負荷分散の構成
以下のトポロジは、SSLオフロードによる負荷分散を構成する方法を示しています。
-
PythonベースのWebSocketサーバー(バージョン1.0)を使用している場合:
SSLオフロードによる負荷分散の構成(/ja-jp/session-recording/2206/media/load-balancing-through-ssl-offloading.png)
-
IISでホストされているWebSocketサーバー(バージョン2.0)を使用している場合:
SSLオフロードによる負荷分散の構成(/ja-jp/session-recording/2206/media/load-balancing-through-ssl-offloading-websocket-2-0.png)
-
Citrix ADC VPXインスタンスにログオンします。
-
構成 > システム > 設定 > 基本機能の構成に移動します。
基本機能の構成(/ja-jp/session-recording/2206/media/configure-basic-features.png)
-
SSLオフロードと負荷分散を選択し、OKをクリックします。
SSLオフロードと負荷分散を選択(/ja-jp/session-recording/2206/media/select-ssl-offloading-and-load-balancing.png)
-
負荷分散サーバーを追加します。
トラフィック管理 > 負荷分散 > サーバーに移動し、追加をクリックします。
負荷分散サーバーの追加(/ja-jp/session-recording/2206/media/add-load-balancing-servers.png)
セッションレコーディングサーバーの名前とIPアドレスを入力し、作成をクリックします。例:
負荷分散サーバーを作成する(/ja-jp/session-recording/2206/media/create-a-load-balancing-server.png)
変更を保存するには、右上隅にある保存アイコンをクリックします。
保存をクリック(/ja-jp/session-recording/2206/media/save-icon.png)
-
前のステップで追加した各セッションレコーディングサーバーに対して、負荷分散サービスを追加します。
各セッションレコーディングサーバーに対して、次の負荷分散サービスを追加します。
- (WebSocketサーバーバージョン1.0を使用している場合にのみ必要) TCPモニターにバインドするポート22334のSSL負荷分散サービス
- HTTPSモニターにバインドするポート443のSSL負荷分散サービス
- TCPモニターにバインドするポート1801のTCP負荷分散サービス
例えば、
サーバーの負荷分散サービス(/ja-jp/session-recording/2206/media/load-balancing-services-for-a-server.png)
「トラフィック管理 > 負荷分散 > サービス」に移動し、「追加」をクリックします。
負荷分散サービスを追加(/ja-jp/session-recording/2206/media/add-load-balancing-services.png)
(WebSocketサーバーバージョン1.0を使用している場合にのみ必要) 各セッションレコーディングサーバーに対して、ポート22334のSSL負荷分散サービスを追加します。 負荷分散サービスの名前を入力し、既存のサーバーを選択し、セッションレコーディングサーバーのIPアドレスを選択し、サーバープロトコルとしてSSLを選択し、ポート番号22334を入力して、OKをクリックします。
例として、次のスクリーンショットを参照してください。

追加したばかりのSSL負荷分散サービスにTCPモニターをバインドします。

各Session Recording Serverにポート443のSSL負荷分散サービスを追加します。 負荷分散サービスの名前を入力し、Existing Serverを選択し、Session RecordingサーバーのIPアドレスを選択し、サーバープロトコルとしてSSLを選択し、ポート番号443を入力して、OKをクリックします。

追加したばかりのSSL負荷分散サービスにHTTPSモニターをバインドします。

各Session Recording Serverにポート1801のTCP負荷分散サービスを追加します。 負荷分散サービスの名前を入力し、Existing Serverを選択し、Session RecordingサーバーのIPアドレスを選択し、サーバープロトコルとしてTCPを選択し、ポート番号1801を入力して、OKをクリックします。

追加したばかりのTCP負荷分散サービスにTCPモニターをバインドします。

-
(WebSocketサーバーバージョン1.0を使用している場合にのみ必要) ポート22334の各SSL負荷分散サービスにHTTPプロファイルを追加します。
システム > プロファイル > HTTPプロファイル に移動し、追加 をクリックします。

Enable WebSocket connectionsチェックボックスをオンにし、その他のデフォルト設定を適用します。

HTTPプロファイルの例として、名前を入力します。
websocket_SSLポート22334の各SSL負荷分散サービス(例:
srv-1-22334)に戻ります。「+ プロファイル」をクリックします。
HTTPプロファイル(例:
websocket_SSL)を選択し、「OK」をクリックしてから「完了」をクリックします。
-
(WebSocketサーバーバージョン2.0を使用している場合にのみ必要) ポート443の各SSL負荷分散サービスにHTTPプロファイルを追加します。
-
ドメインコントローラーでCitrix ADC VIPアドレスのホストレコードを作成します。

-
負荷分散仮想サーバーを追加します。
Citrix ADC VIPアドレスを使用して、以下の負荷分散仮想サーバーを追加します。
- (WebSocketサーバーバージョン1.0を使用している場合にのみ必要) SSLベースのポート22334の負荷分散仮想サーバー
- SSLベースのポート443の負荷分散仮想サーバー
- TCPベースのポート1801の負荷分散仮想サーバー
例として、次のスクリーンショットを参照してください。
3つのポート番号のロードバランシング仮想サーバー(/ja-jp/session-recording/2206/media/load-balancing-virtual-servers-of-three-port-numbers.png)
トラフィック管理 > ロードバランシング > 仮想サーバー に移動し、追加 をクリックします。
仮想サーバーを追加(/ja-jp/session-recording/2206/media/add-virtual-servers.png)
Citrix ADC VIPアドレスを使用して各仮想サーバーを追加します。サーバー名を入力し、TCP または SSL を選択し、前述のように関連するポート番号を選択します。
ポート80の仮想サーバー(/ja-jp/session-recording/2206/media/virtual-server-port-80.png)
各仮想サーバーを同じポートのロードバランシングサービスにバインドします。例:
同じポートのロードバランシングサービスにバインド(/ja-jp/session-recording/2206/media/bind-to-service-of-same-port.png)
ヒント:
ポート22334のロードバランシングサービスは、WebSocketサーバーバージョン1.0を使用している場合にのみ必要です。
ロードバランシング方法を選択します。
ロードバランシング方法(/ja-jp/session-recording/2206/media/least-bandwidth.png)
各仮想サーバーで永続性を構成します。永続性タイプとして SOURCEIP を選択することをお勧めします。詳細については、永続性設定 を参照してください。
永続性を構成(/ja-jp/session-recording/2206/media/sourceip.png)
(WebSocketサーバーバージョン1.0を使用している場合にのみ必要) ポート22334のロードバランシング仮想サーバーにHTTPプロファイルを追加します。
ポート22334のロードバランシング仮想サーバーにHTTPプロファイルを追加(/ja-jp/session-recording/2206/media/add-profile-for-virtual-server-of-port-22334.png)
-
Citrix ADC にサブジェクト代替名 (SAN) 証明書をインストールします。
信頼できる認証局 (CA) から PEM 形式の SAN 証明書を取得します。Traffic Management > SSL > Server Certificate Wizard に移動して、Citrix ADC に証明書と秘密鍵ファイルを抽出してアップロードします。
詳細については、「SSL 証明書」を参照してください。

-
各 SSL 負荷分散仮想サーバーに SAN 証明書をバインドします。
「トラフィック管理 > 負荷分散 > 仮想サーバー」に移動し、SSL負荷分散仮想サーバーを選択して、「サーバー証明書」をクリックします。

前述の SAN 証明書を追加し、Bind をクリックします。
手順 4: 既存のセッション録画エージェントを構成して負荷分散をサポートする
-
ドメイン管理者アカウントを使用して、セッション録画エージェントにログオンします。
-
「セッションレコーディングエージェントのプロパティ」を開きます。
-
TCP 経由で Microsoft Message Queuing (MSMQ) を使用する場合は、この手順を完了します。
「セッションレコーディングサーバー」ボックスに、Citrix ADC VIPアドレスのFQDNを入力してください。

各セッション録画サーバーで、
HKEY_LOCAL_MACHINE\ SOFTWARE\Microsoft\MSMQ\Parametersの下にIgnoreOSNameValidationDWORD 値を追加し、1に設定します。 -
MSMQ over HTTPまたはHTTPSを使用している場合は、この手順を完了してください。
(この手順が完了している場合はスキップ) ドメインコントローラーでCitrix ADC VIPアドレスのホストレコードを作成します。
Citrix ADC VIPアドレスのホストレコードを作成する(/ja-jp/session-recording/2206/media/create-host-record-for-citrix-adc-vip-address.png)
各Session Recordingサーバーで、
powershell.exe -file SrServerConfigurationSync.ps1 –Action AddRedirection – ADCHost <ADCHost>コマンドを実行して、Citrix ADCからローカルホストへのリダイレクトを追加します。<ADCHost>はCitrix ADC VIPアドレスのFQDNです。たとえば、sr_lb_map.xmlのようなリダイレクトファイルがC:\Windows\System32\msmq\Mappingの下に生成されます。リダイレクトを追加する(/ja-jp/session-recording/2206/media/add-redirections.png)
注: PowerShell.exeを実行するときは、
SrServerConfigurationSync.ps1があるフォルダーに移動してください。「セッションレコーディングサーバー」ボックスにCitrix ADC VIPアドレスのFQDNを入力します。例:
Citrix ADC VIPアドレスのFQDNを入力してください(/ja-jp/session-recording/2206/media/type-fqdn-of-citrix-adc-vip-address.png)
ステップ5:既存のSession Recording Playerを構成して負荷分散をサポートする
Session Recording Playerコンポーネントをインストールした各マシンで、Citrix ADC VIPアドレスまたはそのFQDNを接続されたSession Recordingサーバーとして追加します。
ステップ6:構成済みの既存のSession Recordingサーバーで負荷分散が機能するかどうかを確認する
- Citrix仮想セッションを起動します。
- セッションが記録できるかどうかを確認します。
- Web PlayerとSession Recording Playerが記録ファイルを再生できるかどうかを確認します。
ステップ7:Session Recordingサーバーを追加する
-
同じドメイン内のマシンを準備し、そのマシンにSession RecordingサーバーとSession Recording管理者ログモジュールのみをインストールします。

-
既存のSession Recordingサーバーと同じデータベース名を使用します。例:

-
マシン上のネットワークファイアウォールを無効にします。
-
Session RecordingデータベースをインストールしたSQL Serverで、すべてのSession Recordingサーバーマシンアカウントを共有Session Recordingデータベースに追加し、
db_owner権限を割り当てます。例:

-
記録ストレージと復元フォルダー(例:
SessionRecordingおよびSessionRecordingsRestored)の読み取り/書き込み権限を、新しいSession Recordingサーバーのマシンアカウント(例:LB\SRServer2$)と共有します。ドル記号$は必須です。 -
新しいSession Recordingサーバーの負荷分散サービスを追加し、既存の仮想サーバーを編集して負荷分散サービスへのバインディングを追加するには、手順3を繰り返します。これ以上仮想サーバーを追加する必要はありません。例:




-
既存のセッションレコーディングサーバーから新しいセッションレコーディングサーバーに、セッションレコーディング承認コンソール構成ファイル
SessionRecordingAzManStore.xmlをコピーします。このファイルは<Session Recording Server installation path>\App_Dataにあります。 -
新しいSession Recording serverでHTTPまたはHTTPS経由でMSMQを使用するには、現在機能しているSession Recording serverのレジストリ設定をインポートするために、次の手順を完了します。
既存のSession Recording server(例:
SRServer1)で、<ADCHost>をCitrix ADC VIPアドレスのFQDNとして、powershell.exe -file SrServerConfigurationSync.ps1 –Action Export – ADCHost <ADCHost >コマンドを実行します。エクスポートされたレジストリファイルSrServerConfig.regが生成されます。SrServerConfig.regファイルを新しいSession Recording serverにコピーし、powershell.exe -file SrServerConfigurationSync.ps1 –Action Import,AddRedirection – ADCHost <ADCHost>コマンドを実行します。EnableLB値が新しいSession Recording ServerのレジストリキーHKEY_LOCAL_MACHINE\SOFTWARE\Citrix\SmartAuditor\Serverに追加され、sr_lb_map.xmlファイルがC:\Windows\System32\msmq\Mappingの下に追加されます。 -
別のSession Recording serverを追加するには、この手順を繰り返します。
トラブルシューティング
-
Session Recording serverにCNAMEレコードまたはALIASレコードを使用すると、セッションが録画されません。この問題に対処するには、Microsoftドキュメントを参照してください。
-
録画ファイルはローカルに保存できますが、ユニバーサルネーミングコンベンション (UNC) パスには保存できません。この問題に対処するには、シトリックス セッションレコーディング ストレージマネージャー サービスの開始モードをAutomatic (Delayed Start)に変更します。