Session Recording

負荷分散

Session Recordingは、Session Recordingサーバー間の負荷分散をサポートします。この記事では、Citrix ADCを例として使用した負荷分散構成を説明しています。詳しくは、「既存の環境での負荷分散の構成」および「AzureでのSession Recordingの展開と負荷分散」を参照してください。

すべてのSession Recordingサーバー間で、負荷分散構成を同期できます。

注:

この負荷分散機能を使用するには、Session RecordingサーバーおよびSession Recording Agentのバージョン7.16以降が必要です。

負荷分散をサポートする場合のSession Recordingの変更内容:

  • すべてのSession Recordingサーバーが、録画ファイルを保存する1つのフォルダーを共有します。
  • すべてのSession Recordingサーバーが、1つのSession Recordingデータベースを共有します。
  • (推奨)Session Recordingポリシーコンソールを1つだけインストールし、すべてのSession Recordingサーバーがこのコンソールを共有するようにしてください。

負荷分散の構成

この機能を使用するには、Citrix ADCとさまざまなSession Recordingコンポーネントで以下の手順を行います:

負荷分散の構成(Citrix ADC側)

負荷分散サーバーの構成

Citrix ADC内の負荷分散サーバーにSession Recordingサーバーを追加します。

負荷分散サービスの構成

  1. それぞれのSession Recordingサーバーで必要な各プロトコルに負荷分散サービスを追加します。
  2. (推奨)各サービスモニターにバインドする、関連するプロトコルモニターを選択します。

負荷分散仮想サーバーの構成

  1. 必要なプロトコルに基づいて、同じCitrix ADC仮想IPアドレスを持つ仮想サーバーを作成し、それらの仮想サーバーを関連する負荷分散サービスにバインドします。
  2. 各仮想サーバーでパーシステンスを構成します。
  3. (推奨)負荷分散の方法には、デフォルトの方法(LEASTCONNECTION)ではなく、LEASTBANDWITHまたはLEASTPACKETSを選択します。
  4. HTTPS仮想サーバーを稼働させるための証明書を作成します。

負荷分散の構成(Session Recording側)

Session Recordingサーバーがインストールされた各サーバーで、以下を実行します

  1. (推奨)Session Recordingサーバーのインストール時に、同じSession Recordingデータベース名を入力します。
  2. 管理者ログ機能を選択した場合、Citrixでは各Session Recordingサーバーのインストール時に指定した管理者ログデータベース名と同じ名前を入力することをお勧めします。
  3. ファイルストレージフォルダーの読み取り/書き込み権限をすべてのSession Recordingサーバーマシンアカウントと共有した後、Session Recordingサーバープロパティでこのファイルストレージフォルダーを共有フォルダーとして使用するように変更します。詳しくは、「録画の復元先の指定」を参照してください。
  4. Session Recordingサーバーレジストリキー(HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\SmartAuditor\Server)に、次の値を追加します。
    値の名前:EnableLB
    値のデータ:1(DWORD、つまり「有効」)
  5. Session RecordingストレージマネージャーのメッセージキューにHTTPまたはHTTPSプロトコルを選択した場合、Citrix ADC仮想IPアドレスのホストレコードを作成し、C:\Windows\System32\msmq\Mapping\sample_mapにリダイレクトを追加して、メッセージキューサービスを再起動します。

    リダイレクトは以下のようにします:

    <redirections xmlns="msmq-queue-redirections.xml">
            <redirection>
                        <from>http://<ADCHost>\*/msmq/private$/CitrixSmAudData</from>
                        <to>http://<LocalFqdn>/msmq/private$/CitrixSmAudData</to>
            </redirection>
            <redirection>
                        <from>https://<ADCHost>\*/msmq/private$/CitrixSmAudData</from>
                        <to>https://<LocalFqdn>/msmq/private$/CitrixSmAudData</to>
            </redirection>
    </redirections>
    <!--NeedCopy-->
    

    <ADCHost> は作成されたCitrix ADC仮想IPアドレスのFQDNで、<LocalFqdn> はローカルホストのFQDNです。

  6. (推奨)1つのSession Recordingサーバーレジストリを構成後、スクリプト「<Session Recordingサーバーのインストールパス>\Scripts\SrServerConfigurationSync.ps1 」を使用して、このサーバーレジストリから構成をエクスポートして、他のSession Recordingサーバーレジストリにインポートできます。スクリプト「SrServerConfigurationSync.ps1」を使用して、メッセージキューのリダイレクトマッピングを追加することもできます。

    1. 1つのSession Recordingサーバーで、EnableLBレジストリ値を構成後、管理者としてコマンドプロンプトを起動し、powershell.exe -file SrServerConfigurationSync.ps1 –Action Export,AddRedirection –ADCHost <ADCHost> コマンドを実行します。ここで、<ADCHost> は、作成したCitrix ADC仮想IPアドレスのFQDNです。

    2. スクリプトの実行後、SrServerConfig.regというファイル名のエクスポート済みレジストリが生成され、sr_lb_map.xmlC:\Windows\System32\msmq\Mappingパスに追加されます。

    3. その他のSession Recordingサーバーで、上の手順で生成されたSrServerConfig.regをコピーし、管理者としてコマンドプロンプトを起動し、powershell.exe -file SrServerConfigurationSync.ps1 –Action Import,AddRedirection –ADCHost <ADCHost> コマンドを実行します。ここで、<ADCHost> は、作成したCitrix ADC仮想IPアドレスのFQDNです。

    4. スクリプトの実行後、EnableLB値が他のSession Recordingサーバーのレジストリキーに追加され、sr_lb_map.xmlC:\Windows\System32\msmq\Mappingパスに追加されます。

Session Recording AgentがインストールされたマシンのSession Recording Agentプロパティで以下を行います

  • Session RecordingストレージマネージャーメッセージのキューにHTTPまたはHTTPSを選択した場合、[Session Recordingサーバー] テキストボックスにはCitrix ADC仮想IPアドレスのFQDNを入力します。
  • Session RecordingストレージマネージャーメッセージのキューにデフォルトのTCPプロトコルを選択した場合、[Session Recordingサーバー] テキストボックスにはCitrix ADC仮想IPアドレスを入力します。

Session Recording Playerがインストールされたマシンで以下を行います

Citrix ADC仮想IPアドレスまたはそのFQDNを、接続されたSession Recordingサーバーとして追加します。

Session RecordingデータベースがインストールされたSQL Serverで以下を行います

共有Session RecordingデータベースにすべてのSession Recordingサーバーマシンアカウントを追加し、それらにdb_owner権限を割り当てます。

負荷分散