既存の展開で負荷分散を構成する

既存のSession Recording展開でCitrix ADCを使用して負荷分散ノードを追加できます。次のサーバーは例として使用されます。また、AzureでSession Recordingを展開して負荷分散することもできます(/ja-jp/session-recording/2509/best-practices/deploy-and-load-balance-session-recording-in-azure.html)。

  • セッションレコーディング

    ホスト名 サーバーの役割 OS IPアドレス
    エスアールサーバー1 セッションレコーディングサーバー ウィンドウズ サーバー 10.63.32.55
    エルビーディーシー ドメインコントローラー ウィンドウズ サーバー 10.63.32.82
    ティーエスブイディーエー セッションレコーディングエージェント ウィンドウズサーバー 10.63.32.215
    エスアールエスキューエル Session Recordingデータベースおよびファイルサーバー ウィンドウズサーバー 10.63.32.91

    すべてのSession Recordingコンポーネントとドメインコントローラーは、たとえばlb.comのようなドメインを共有します。サーバーログオンには、たとえばlb\administratorのようなドメイン管理者アカウントが使用されます。

  • シトリックス エーディーシー

    ホスト名 サーバーの役割 管理IPアドレス (NSIP) サブネットIPアドレス (SNIP)
    ネットスケーラー シトリックス エーディーシー ブイピーエックス インスタンス 10.63.32.40 10.63.32.109

    詳細については、「Citrix ADC VPX インスタンスを展開する」を参照してください。

ステップ1:ファイルサーバー上に共有フォルダーを作成する

  1. ドメイン管理者アカウント(例: lb\administrator)を使用してファイルサーバーにログオンします。

  2. 録画を保存するフォルダーを作成し、そのフォルダーに SessionRecording という名前を付けます(例: C:\SessionRecording)。そのフォルダーの読み取り/書き込み権限をSession Recordingサーバーと共有します。SRServer1 を例として使用し、LB\SRSERVER1$ と入力します。ドル記号 $ は必須です。

    フォルダーの共有権限

    ターゲットサーバーへのフォルダーの共有権限

  3. SessionRecording フォルダー内にサブフォルダーを作成し、そのサブフォルダーに share という名前を付けます(例: C:\SessionRecording\share)。

    フォルダーの共有権限

  4. アーカイブされた録画を復元するための別のフォルダーを作成し、そのフォルダーに SessionRecordingsRestored という名前を付けます(例: C:\ SessionRecordingsRestored)。そのフォルダーの読み取り/書き込み権限をSession Recordingサーバーと共有します。SRServer1 を例として使用し、LB\SRSERVER1$ と入力します。ドル記号 $ は必須です。

  5. SessionRecordingsRestored フォルダー内にサブフォルダーを作成し、そのサブフォルダーに share という名前を付けます(例: C:\ SessionRecordingsRestored\share)。

ステップ2:既存のSession Recordingサーバーを構成して負荷分散をサポートする

この手順では、既存のSession Recordingサーバーを構成して負荷分散をサポートする方法について説明します。ステップ7 では、既存の展開にSession Recordingサーバーを追加する手順について詳しく説明します。

  1. ドメイン管理者アカウントを使用して、セッション録画サーバーにログオンします。

  2. セッション録画サーバーのプロパティを開きます。

    セッション録画サーバーのプロパティ(/ja-jp/session-recording/2509/media/session-recording-server-properties.png)

  3. ステップ1で作成したUniversal Naming Convention (UNC) パスを追加して、録画ファイルを保存および復元します。この例では、\\SRSQL\SessionRecording\share\\SRSQL\SessionRecordingRestored\shareです。SRSQLはファイルサーバーのホスト名です。

    注:

    セッション録画プレイヤーは、ドライブ文字またはドル記号 ($) を含むパスにあるファイルを再生できません。例外として、プレイヤーとセッション録画サーバーを同じマシンにインストールした場合が挙げられます。

    UNCパスを追加(/ja-jp/session-recording/2509/media/add-unc-paths.png)

  4. HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\SmartAuditor\Serverにあるセッション録画サーバーのレジストリキーに値を追加します。

    値の名前: EnableLB 値のデータ: 1 (D_WORD、有効を意味します)

    レジストリキーの値を追加(/ja-jp/session-recording/2509/media/add-registry-key-value.png)

  5. Citrix セッションレコーディングストレージマネージャーサービスを再起動します。

ステップ3:Citrix ADCで負荷分散を構成する

Citrix ADCで負荷分散を構成する方法は、TCPパススルーとSSLオフロードの2つがあります。

TCPパススルーによる負荷分散の構成

次のトポロジは、TCPパススルーによる負荷分散の構成方法を示しています。

  • PythonベースのWebSocketサーバー(バージョン1.0)を使用している場合:

    TCPパススルーによる負荷分散の構成

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

    TCPパススルーによる負荷分散の構成

TCPパススルーによる負荷分散を構成するには、次の手順を実行します。

  1. Citrix ADC VPXインスタンスにログオンします。

  2. 構成 > システム > 設定 > 基本機能の構成」に移動します。

    基本機能の構成

  3. Load Balancingを選択し、OKをクリックします。

    負荷分散の選択

  4. 負荷分散サーバーを追加します。

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

    負荷分散サーバーの追加

    Session Recordingサーバーの名前とIPアドレスを入力し、Createをクリックします。例:

    負荷分散サーバーの作成

    右上隅の保存アイコンをクリックして変更を保存します。

    保存をクリック(/ja-jp/session-recording/2509/media/save-icon.png)

  5. WebSocketサーバーバージョン1.0の場合、各Session Recordingサーバーにポート80、1801、22334、および443の負荷分散サービスを追加します。WebSocketサーバーバージョン2.0の場合、各Session Recordingサーバーにポート80、1801、および443の負荷分散サービスを追加します。

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

    負荷分散サービスを追加(/ja-jp/session-recording/2509/media/add-load-balancing-services.png)

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

    負荷分散サービスを作成(/ja-jp/session-recording/2509/media/create-a-load-balancing-service.png)

    各負荷分散サービスにTCPプロトコルモニターをバインドします。

    TCPプロトコルモニターをバインド(/ja-jp/session-recording/2509/media/bind-tcp-protocol-monitor.png)

    右上隅の保存アイコンをクリックして変更を保存します。

    作成したサービスを保存(/ja-jp/session-recording/2509/media/services-save-icon.png)

    ヒント:

    ポート22334の負荷分散サービスは、WebSocketサーバーバージョン1.0でのみ必要です。

  6. 負荷分散仮想サーバーを追加します。

    WebSocketサーバーバージョン1.0の場合、ポート80、443、1801、および22334の負荷分散仮想サーバーを追加するには、次の手順を完了します。WebSocketサーバーバージョン2.0の場合、ポート80、443、および1801の負荷分散仮想サーバーを追加します。例:

    仮想サーバーを保存(/ja-jp/session-recording/2509/media/save-virtual-servers.png)

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

    仮想サーバーを追加(/ja-jp/session-recording/2509/media/add-virtual-servers.png)

    TCPプロトコルに基づいて、Citrix ADC VIPアドレスを持つ各仮想サーバーを追加します。

    負荷分散仮想サーバー(/ja-jp/session-recording/2509/media/load-balancing-virtual-server.png)

    各仮想サーバーを同じポートの負荷分散サービスにバインドします。例:

    負荷分散仮想サーバーサービスバインディング(/ja-jp/session-recording/2509/media/virtual-server-service-binding.png)

    仮想サーバーサービスバインディングを追加(/ja-jp/session-recording/2509/media/add-virtual-server-service-binding.png)

    負荷分散方法を選択します。

    負荷分散方法を選択(/ja-jp/session-recording/2509/media/choose-load-balancing-method.png)

    各仮想サーバーで永続性を構成します。永続性の種類としてSOURCEIPを選択することをお勧めします。詳しくは、「永続性設定」を参照してください。

    永続性を構成(/ja-jp/session-recording/2509/media/configure-persistence.png)

  7. ドメインコントローラーでCitrix ADC VIPアドレスのホストレコードを作成します。

    ホストレコードを作成(/ja-jp/session-recording/2509/media/create-host-record.png)

  8. HTTPS経由でWebプレーヤーにアクセスするには、Citrix ADCと各Session Recordingサーバーの両方でSAN証明書が利用可能であることを確認してください。SAN証明書には、Citrix ADCと各Session RecordingサーバーのFQDNが含まれています。

    「SAN証明書」(/ja-jp/session-recording/2509/media/san-certificate.png)

SSLオフロードによる負荷分散の構成

次のトポロジは、SSLオフロードによる負荷分散を構成する方法を示しています。

  • PythonベースのWebSocketサーバー(バージョン1.0)を使用している場合:

    「SSLオフロードによる負荷分散の構成」(/ja-jp/session-recording/2509/media/load-balancing-through-ssl-offloading.png)

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

    「SSLオフロードによる負荷分散の構成」(/ja-jp/session-recording/2509/media/load-balancing-through-ssl-offloading-websocket-2-0.png)

  1. Citrix ADC VPXインスタンスにログオンします。

  2. 構成 > システム > 設定 > 基本機能の構成に移動します。

    「基本機能の構成」(/ja-jp/session-recording/2509/media/configure-basic-features.png)

  3. SSLオフロード負荷分散を選択し、OKをクリックします。

    「SSLオフロードと負荷分散の選択」(/ja-jp/session-recording/2509/media/select-ssl-offloading-and-load-balancing.png)

  4. 負荷分散サーバーを追加します。

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

    「負荷分散サーバーの追加」(/ja-jp/session-recording/2509/media/add-load-balancing-servers.png)

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

    ロードバランシングサーバーを作成する(/ja-jp/session-recording/2509/media/create-a-load-balancing-server.png)

    右上隅にある保存アイコンをクリックして、変更を保存します。

    保存をクリック(/ja-jp/session-recording/2509/media/save-icon.png)

  5. 前のステップで追加した各Session Recordingサーバーに対して、ロードバランシングサービスを追加します。

    各Session Recordingサーバーに対して、次のロードバランシングサービスを追加します:

    • (WebSocketサーバーバージョン1.0を使用している場合にのみ必要) TCPモニターにバインドするポート22334のSSLロードバランシングサービス
    • HTTPSモニターにバインドするポート443のSSLロードバランシングサービス
    • TCPモニターにバインドするポート1801のTCPロードバランシングサービス

    例えば、

    サーバーのロードバランシングサービス(/ja-jp/session-recording/2509/media/load-balancing-services-for-a-server.png)

    トラフィック管理 > ロードバランシング > サービスに移動し、追加をクリックします。

    ロードバランシングサービスを追加(/ja-jp/session-recording/2509/media/add-load-balancing-services.png)

    (WebSocketサーバーバージョン1.0を使用している場合にのみ必要) 各Session Recordingサーバーに対して、ポート22334のSSLロードバランシングサービスを追加します。 ロードバランシングサービスの名前を入力し、既存のサーバーを選択し、Session RecordingサーバーのIPアドレスを選択し、サーバープロトコルとしてSSLを選択し、ポート番号22334を入力して、OKをクリックします。

    例として、次のスクリーンショットを参照してください。

    ポート22334のSSL負荷分散サービスを作成する(/ja-jp/session-recording/2509/media/create-ssl-load-balancing-service-of-port-22334.png)

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

    TCPプロトコルモニターをポート22334のSSL負荷分散サービスにバインドする(/ja-jp/session-recording/2509/media/bind-tcp-protocol-monitor-to-ssl-load-balancing-service-of-port-22334.png)

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

    ポート443のSSL負荷分散サービスを作成する(/ja-jp/session-recording/2509/media/create-ssl-load-balancing-service-of-port-443.png)

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

    HTTPSプロトコルモニターをポート443のSSL負荷分散サービスにバインドする(/ja-jp/session-recording/2509/media/bind-https-protocol-monitor-to-ssl-load-balancing-service-of-port-443.png)

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

    ポート1801のSSL負荷分散サービスを作成する(/ja-jp/session-recording/2509/media/create-ssl-load-balancing-service-of-port-1801.png)

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

    TCPプロトコルモニターをポート1801のSSL負荷分散サービスにバインドする(/ja-jp/session-recording/2509/media/bind-tcp-protocol-monitor-to-ssl-load-balancing-service-of-port-1801.png)

  6. (WebSocketサーバーバージョン1.0を使用している場合にのみ必要) ポート22334の各SSL負荷分散サービスにHTTPプロファイルを追加します。

    システム > プロファイル > HTTPプロファイルに移動して、追加をクリックします。

    HTTPプロファイルを追加する(/ja-jp/session-recording/2509/media/add-http-profiles.png)

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

    WebSocket接続を有効にする

    HTTPプロファイルの例として、名前を入力します。websocket_SSL

    ポート22334の各SSLロードバランシングサービスに戻り、例えばsrv-1-22334をクリックします。+ プロファイルをクリックします。

    プロファイルを追加

    HTTPプロファイルを選択し、例えばwebsocket_SSLをクリックし、OK、次に完了をクリックします。

    追加するプロファイルを選択

  7. (WebSocketサーバーバージョン2.0を使用している場合にのみ必要) ポート443の各SSLロードバランシングサービスにHTTPプロファイルを追加します。

  8. ドメインコントローラー上でCitrix ADC VIPアドレスのホストレコードを作成します。

    ホストレコードを作成

  9. ロードバランシング仮想サーバーを追加します。

    Citrix ADC VIPアドレスを使用して、以下のロードバランシング仮想サーバーを追加します。

    • (WebSocketサーバーバージョン1.0を使用している場合にのみ必要) SSLベースのポート22334のロードバランシング仮想サーバー
    • SSLベースのポート443のロードバランシング仮想サーバー
    • TCPベースのポート1801のロードバランシング仮想サーバー

    例えば、以下のスクリーンショットを参照してください。

    3つのポート番号の負荷分散仮想サーバー(/ja-jp/session-recording/2509/media/load-balancing-virtual-servers-of-three-port-numbers.png)

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

    仮想サーバーを追加(/ja-jp/session-recording/2509/media/add-virtual-servers.png)

    Citrix ADC VIPアドレスを使用して各仮想サーバーを追加します。サーバー名を入力し、TCP または SSL を選択し、前述のとおり関連するポート番号を選択します。

    ポート80の仮想サーバー(/ja-jp/session-recording/2509/media/virtual-server-port-80.png)

    各仮想サーバーを、同じポートの負荷分散サービスにバインドします。例:

    同じポートの負荷分散サービスにバインド(/ja-jp/session-recording/2509/media/bind-to-service-of-same-port.png)

    ヒント:

    ポート22334の負荷分散サービスは、WebSocketサーバーバージョン1.0を使用している場合にのみ必要です。

    負荷分散方法を選択します。

    負荷分散方法(/ja-jp/session-recording/2509/media/least-bandwidth.png)

    各仮想サーバーで永続性を構成します。永続性の種類としてSOURCEIPを選択することをお勧めします。詳細については、永続性設定を参照してください。

    永続性を構成(/ja-jp/session-recording/2509/media/sourceip.png)

    (WebSocketサーバーバージョン1.0を使用している場合にのみ必要) ポート22334の負荷分散仮想サーバーにHTTPプロファイルを追加します。

    ポート22334の負荷分散仮想サーバーにHTTPプロファイルを追加(/ja-jp/session-recording/2509/media/add-profile-for-virtual-server-of-port-22334.png)

  10. Citrix ADC にサブジェクト代替名 (SAN) 証明書をインストールします。

    信頼された認証局 (CA) からPEM形式でSAN証明書を取得します。Traffic Management > SSL > Server Certificate Wizard に移動して、Citrix ADC に証明書と秘密鍵ファイルを抽出してアップロードします。

    詳細については、SSL証明書を参照してください。

    証明書をインストールする

  11. 各SSL負荷分散仮想サーバーにSAN証明書をバインドします。

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

    サーバー証明書

    前述のSAN証明書を追加し、Bind をクリックします。

手順4: 負荷分散をサポートするように既存のセッション記録エージェントを構成する

  1. ドメイン管理者アカウントを使用してセッション記録エージェントにログオンします。

  2. セッションレコーディングエージェントのプロパティ を開きます。

  3. TCP経由のMicrosoft Message Queuing (MSMQ) を使用している場合は、この手順を完了します。

    セッションレコーディングサーバー ボックスにCitrix ADC VIPアドレスまたはFQDNを入力します。

    セッションレコーディングサーバーボックス

    各セッション記録サーバーで、HKEY_LOCAL_MACHINE\ SOFTWARE\Microsoft\MSMQ\Parameters の下に IgnoreOSNameValidation DWORD値を 1 に追加し、設定します。

  4. HTTPまたはHTTPS経由でMSMQを使用する場合は、この手順を完了してください。

    (この手順が完了している場合はスキップ) ドメインコントローラーでCitrix ADC VIPアドレスのホストレコードを作成します。

    Citrix ADC VIPアドレスのホストレコードを作成する(/ja-jp/session-recording/2509/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/2509/media/add-redirections.png)

    注: PowerShell.exeを実行するときは、SrServerConfigurationSync.ps1があるフォルダーに移動してください。

    Session Recording Server」ボックスに、Citrix ADC VIPアドレスの完全修飾ドメイン名を入力します。例:

    Citrix ADC VIPアドレスのFQDNを入力してください

ステップ5: 既存のSession Recordingプレーヤーを構成して負荷分散をサポートする

Session Recordingプレーヤーコンポーネントをインストールした各マシンで、Citrix ADC VIPアドレスまたはそのFQDNを接続されたSession Recordingサーバーとして追加します。

ステップ6: 構成済みの既存のSession Recordingサーバーで負荷分散が機能するかどうかを確認する

  1. Citrix仮想セッションを起動します。
  2. セッションが記録できることを確認します。
  3. WebプレーヤーとSession Recordingプレーヤーが記録ファイルを再生できることを確認します。

ステップ7: Session Recordingサーバーを追加する

  1. 同じドメイン内のマシンを準備し、そのマシンにSession Recordingサーバー、データベース、および管理者ログモジュールをインストールします。

    注:

    Session Recording管理者ログは、Session Recordingサーバーのオプションのサブ機能です。Session Recording管理者ログを選択する前に、Session Recordingサーバーを選択する必要があります。Session Recordingデータベースは、Session Recordingサーバーの必須サブ機能です。Session Recordingサーバーがインストール用に選択されると、Session Recordingデータベースも自動的に選択され、選択を解除することはできません。

    Session Recordingサーバー、データベース、および管理者ログモジュールをインストールします。(/ja-jp/session-recording/2509/media/session-recording-server-selected.png)

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

    同じデータベース名を使用します。(/ja-jp/session-recording/2509/media/use-the-same-database-names.png)

  3. マシン上のネットワークファイアウォールを無効にします。

  4. Session RecordingデータベースをインストールしたSQL Serverで、すべてのSession Recordingサーバーマシンアカウントを共有Session Recordingデータベースに追加し、db_owner権限を割り当てます。例:

    すべてのSession Recordingサーバーマシンアカウントを共有Session Recordingデータベースに追加します。(/ja-jp/session-recording/2509/media/shared-database.png)

    データベース権限を割り当てます。(/ja-jp/session-recording/2509/media/assign-database-permission.png)

  5. 記録ストレージと復元フォルダー(例:SessionRecordingおよびSessionRecordingsRestored)の読み取り/書き込み権限を、新しいSession Recordingサーバーのマシンアカウント(例:LB\SRServer2$)と共有します。ドル記号$は必須です。

  6. 新しいSession Recordingサーバーの負荷分散サービスを追加し、既存の仮想サーバーを編集して負荷分散サービスへのバインディングを追加するには、手順3を繰り返します。これ以上仮想サーバーを追加する必要はありません。例:

    新しいセッションレコーディングサーバー(/ja-jp/session-recording/2509/media/a-new-session-recording-server.png)

    新しいSession Recordingサーバーの負荷分散サービスを追加します。(/ja-jp/session-recording/2509/media/add-load-balancing-services-for-new-session-recording-server.png)

    仮想サーバーを編集します。(/ja-jp/session-recording/2509/media/edit-virtual-servers.png)

    仮想サーバサービスバインディング」(/ja-jp/session-recording/2509/media/virtual-server-service-binding-2.png)

  7. 既存のセッションレコーディングサーバーから新しいセッションレコーディングサーバーへ、セッションレコーディング承認コンソール構成ファイルSessionRecordingAzManStore.xmlをコピーします。このファイルは<Session Recording server installation path>\App_Dataにあります。

  8. 新しいSession RecordingサーバーでHTTPまたはHTTPS経由でMSMQを使用するには、現在機能しているSession Recordingサーバーのレジストリ設定をインポートするために、以下の手順を完了します。

    既存のSession Recordingサーバー(例: SRServer1)で、<ADCHost>がCitrix ADC VIPアドレスのFQDNであるpowershell.exe -file SrServerConfigurationSync.ps1 –Action Export – ADCHost <ADCHost >コマンドを実行します。エクスポートされたレジストリファイルSrServerConfig.regが生成されます。

    SrServerConfig.regファイルを新しいSession Recordingサーバーにコピーし、powershell.exe -file SrServerConfigurationSync.ps1 –Action Import,AddRedirection – ADCHost <ADCHost>コマンドを実行します。EnableLB値が、新しいSession RecordingサーバーのHKEY_LOCAL_MACHINE\SOFTWARE\Citrix\SmartAuditor\Serverにあるレジストリキーに追加され、C:\Windows\System32\msmq\Mappingの下にsr_lb_map.xmlファイルが追加されます。

  9. 別のSession Recordingサーバーを追加するには、この手順を繰り返します。

トラブルシューティング

  • Session RecordingサーバーにCNAMEレコードまたはALIASレコードを使用すると、セッションが記録されません。この問題に対処するには、Microsoftドキュメントを参照してください。

  • 記録ファイルはローカルに保存できますが、Universal Naming Convention (UNC) パスには保存できません。この問題に対処するには、Citrix Session Recording Storage Managerサービスの開始モードを自動 (遅延開始)に変更します。