Session Recording

AzureでのSession Recordingの展開と負荷分散

前提条件

  • Citrix Virtual Apps and Desktopsが既にAzureにインストールされている。
  • Azureアカウントを持っている。

手順1:Citrix Virtual Apps and DesktopsインストーラーをAzureにアップロードする

注:

Citrixアカウント資格情報を使用して、Citrix Virtual Apps and Desktopsのダウンロードページにアクセスして、製品のISOファイルをAzureのVMにダウンロードする場合は、手順1をスキップしてください。

  1. Azure Portal[general-purpose v2] ストレージアカウントを作成し、デフォルトのパフォーマンスの階層である [Standard] のままにします。

    Azure Storageへのすべてのアクセスは、ストレージアカウントを経由します。

    ストレージアカウントの作成

  2. 新しいストレージアカウントに移動し、[Blob service] セクションで [Containers] を選択してコンテナを作成します。

    コンテナの作成

  3. Citrix Virtual Apps and Desktopsインストーラーをコンテナにアップロードします。

    BLOBのアップロード

手順2:AzureポータルでSQL Managed Instanceを作成する

詳しくは、Azure SQLマネージドインスタンスの作成を参照してください。

手順3:Azure仮想マシン(VM)を作成する

[Image]で [Windows Server 2019 Datacenter – Gen1] を選択し、[Size]で [Standard_D4as_v4 – 4 vcpus, 16GiB memory] を選択します。詳しくは、「Azure PortalでWindows仮想マシンを作成する」参照してください。

AzureでのVMの作成

手順4:リモートデスクトップにし、Citrix Virtual Apps and DesktopsインストーラーをAzureにアップロードする

インストーラーをAzure VMにダウンロード

手順5:インストーラーを実行して、Azure VMにSession Recordingコンポーネントをインストールする

詳しくは、「Session Recording Administrationコンポーネントのインストール」を参照してください。

手順6:録画を保存するためのAzureファイル共有を構成する

録画を保存するためのAzureファイル共有を作成するには、次の手順を実行します:

  1. Azure Portalで、ストレージアカウントを作成してから、Azureファイル共有を作成します。

    クイックスタートガイドについては、Azure Portalを使用したAzureファイル共有の作成および管理を参照してください。次の表は、検討すべきお勧めの構成です。

    録画ファイルサイズ(MB/時間) 1日あたりの録画されたセッション数 ファイル共有タイプ ファイル共有クォータ(TB) Session Recordingサーバーの数 Session Recordingサーバーのサイズ
    6.37未満 1,000未満 HDD Standard (StorageV2) 2 1 Standard D4as_v4
    6.37未満 1,000~2,000 SSD Premium 3 1 Standard D4as_v4
    6.37未満 2,000~3,000 SSD Premium 5 1 Standard D4as_v4
    6.37未満 3,000~4,000 SSD Premium 6 1 Standard D4as_v4
    約10 1,000未満 HDD Standard (StorageV2) 3 1 Standard D4as_v4
    約10 1,000~2,500 SSD Premium 6 1 Standard D4as_v4
    約10 2,500~4,000 SSD Premium 10 2 Standard D4as_v4

    ファイル共有クォータは、1日あたり8時間、1か月あたり23営業日、各録画ファイルの1か月の保有期間に基づいて計算されます。

  2. Session Recordingサーバーをインストールしたホストに、Azureファイル共有の資格情報を追加します。

    1. 管理者としてコマンドプロンプトを起動し、ドライブを <Sesion Recordingサーバーのパス>\Binフォルダーに変更します。

      デフォルトでは、Session RecordingサーバーはC:\Program Files\Citrix\SessionRecording\Serverにインストールされています。

    2. SsRecUtils.exe -AddAzureFiles <storageAccountName> <fileShareName> <accesskey>」コマンドを実行します。

      各項目の意味は次のとおりです。

      • <storageaccountname> は、Azureのストレージアカウントの名前です。
      • <filessharename> は、ストレージアカウントに含まれるファイル共有の名前です。
      • <accesskey> は、ファイル共有へのアクセスに使用できるストレージアカウントキーです。

      ストレージアカウントキーを取得するには、次の2つの方法があります:

      • ストレージアカウントキーは、ファイル共有ページの [Connect] アイコンをクリックしたときに表示される接続文字列から取得できます。

        ストレージアカウントキー情報を含む接続文字列

      • ストレージアカウントページの左側のナビゲーションにある [Access keys] をクリックして、ストレージアカウントキーを取得することもできます。

        アクセスキー

    3. Session Recordingサーバーをインストールしたホストに、Azureファイル共有をマウントします。

      1. Session Recordingサーバーのプロパティを開きます。
      2. [Storage] タブで [Add] をクリックします。
      3. 次の形式でUNCパスを入力します:\\<storageaccountname>.file.core.windows.net\<filessharename>\<subfolder>

        録画ファイルを保存する場所として、ファイル共有の下にあるサブフォルダーを指定します。そうすると、Session Recordingサーバーが自動的にサブフォルダーを作成します。

        Azureファイル共有の例

      4. [File Storage Directory] ダイアログボックスで [OK] をクリックします。
      5. [Session Recording Server Properties] ウィンドウで [Apply] をクリックします。
      6. [Apply] がグレー表示になったら、[OK] をクリックします。
      7. Session Recordingストレージマネージャーサービスを再起動するよう求められたら、[Yes] をクリックします。

        サービス再起動プロンプト

手順7:ロードバランサーを追加する

複数のSession Recordingサーバーがある場合、それらの前にロードバランサーを追加することをお勧めします。Azureでは、トラフィック要求の負荷分散をするためのオプションが多数用意されています。このセクションでは、AzureでCitrix ADC、Azure Load Balancer、Azure Application Gatewayを作成するプロセスについて説明します。

オプション1:AzureでCitrix ADC VPXインスタンスを作成する

  1. Azure Portalで、検索ボックスに「Citrix ADC」と入力します。

    検索ボックスに「Citrix ADC」と入力

  2. [Citrix ADC VPX Bring Your Own License] プランを選択し、[Create] をクリックします。

    プランの選択

  3. リソースグループを選択または作成し、[Basics] タブで他の設定を行います。

  4. [VM Configurations]を設定します。

    VM Configurations

  5. 必要に応じて、ネットワーク設定を確認および変更します。パブリック受信ポートには、[ssh (22), http (80), https (443)] を選択します。

    仮想ネットワークが自動的に作成されます。Session Recording環境が既にインストールされている場合は、その仮想ネットワークとサーバーのサブネット設定を使用できます。

    Citrix ADCネットワーク設定

    その他のCitrix ADCネットワーク設定

  6. [Next: Review + create] をクリックしてCitrix ADC VPXインスタンスを作成し、展開が完了するのを待ちます。

    Citrix ADC VPXインスタンスを作成するための検証に合格

  7. サブネットIP(SNIP)アドレスとCitrix ADC VIPアドレスを同じサブネット上に設定します。

    SNIPアドレスとVIPアドレスは同じサブネット上にある必要があります。この例では、VIPアドレスをSNIPアドレスのサブネット上に設定します。

    1. citrix-adc-vpx仮想マシンを停止します。
    2. VIPアドレスのサブネットを変更します。

      VIPアドレスのサブネットを変更

      新しいサブネットを保存

    3. citrix-adc-vpx仮想マシンを起動します。

オプション2:Azure Load Balancerを作成する

Azure Load Balancerは、TCPパススルーサービスです。次の図は、TCPパススルーによる負荷分散を示しています。

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

  1. Azure Load Balancerを作成します。
    1. Azure Portalで検索し、[Marketplace][Load Balancers] を選択します。

      MarketplaceでAzure Load Balancerを検索

      [Create load balancer] ページの [Basics] タブで、次の表のとおりに設定します:

      設定
      Subscription サブスクリプションを選択します。
      Resource group たとえば、前に作成した [srlbtest] を選択します。
      名前 SRLoadBalance」と入力します。
      リージョン [(US) East US] を選択します。
      種類 [Internal] を選択します。
      SKU [Standard] を選択します。
      仮想ネットワーク たとえば、前に作成した [srazureautovnet] を選択します。
      Subnet たとえば、前に作成した [srazureautosubnet] を選択します。
      IP address assignment [Dynamic] を選択します。
      Availability zone [Zone-redundant] を選択します。

      Azure Load Balancerの作成

    2. バックエンドプール、ヘルスプローブ、負荷分散の規則などのロードバランサーリソースを追加します。

      • バックエンドプールを追加します。

        リソースリストから、作成したロードバランサーを選択し、左側のナビゲーションで [Backend pools] をクリックします。[Add] をクリックして、バックエンドプールを追加します。

        バックエンドプールの追加

        新しいバックエンドプールの名前を入力してから、[Add] をクリックします。

        バックエンドプールを追加

      • ヘルスプローブを追加します。

        リソースリストから、作成したロードバランサーを選択し、左側のナビゲーションで [Health probes] をクリックします。

        ヘルスプローブの追加

        [Add] をクリックして、ポート80、22334、1801、443にヘルスプローブを追加します。

        ポートのヘルスプローブ

        たとえば、次の設定を使用して、ポート80にヘルスプローブを作成します。

        設定
        名前 SRHealthProbe80」と入力します。
        プロトコル [TCP] を選択します。
        ポート 80」と入力します。
        Interval 5
        Unhealthy threshold VMが異常であると判断される前に必ず発生する、異常なしきい値、または連続するプローブエラーの数として、2を選択します。

        ポート80のヘルスプローブの例

      • 負荷分散の規則を追加します。

        リソースリストから、作成したロードバランサーを選択し、左側のナビゲーションで [Load balancing rules] をクリックします。[Add] をクリックして、負荷分散の規則を追加します。

        負荷分散の規則を追加

        [Add] をクリックして、ポート80、22334、1801、443の負荷分散の規則を追加します。

        ポートの負荷分散の規則

        たとえば、次の設定を使用して、ポート80の負荷分散の規則を作成します。

        設定
        名前 SRTCPRule80」などの名前を入力します。
        IP Version [IPv4] を選択します。
        Frontend IP address [LoadBalancerFrontEnd] を選択します。
        プロトコル [TCP] を選択します。
        ポート 80」と入力します。
        Backend port 80」と入力します。
        Backend pool [SRBackendPool] を選択します。
        Health probe [SRHealthProbe80] を選択します。
        Session persistence [Client IP] を選択します。
        Idle timeout (minutes) デフォルト設定のままにします。
        TCP reset [有効] をクリックします。
        送信元ネットワークアドレス変換(SNAT) [(Recommended) Use outbound rules to provide backend pool members access to the internet] ((推奨)送信規則を使用してバックエンドプールのメンバーにインターネットへのアクセス権を付与する)を選択します。

        ポート80の負荷分散の規則の例

      • Session RecordingサーバーがインストールされているAzure VMをバックエンドプールに追加します。

        Session RecordingサーバーVMをバックエンドプールに追加

        バックエンドプール内のVM

    3. Azure Load Balancerをテストします。

      サーバーをバックエンドプールに追加できず、次のエラーメッセージにNetworkInterfaceAndLoadBalancerAreInDifferentAvailabilitySetsと表示される場合は、サーバーネットワークインターフェイスのパブリックIPアドレスの関連付けを解除します。

      パブリックIPアドレスの関連付けを解除

オプション3:Azureアプリケーションゲートウェイを作成する

ヒント:

Application Gateway V2は、NTLM対応プロキシを介したルーティング要求をサポートしていません。

  1. Azureアプリケーションゲートウェイを作成します。

    アプリケーションゲートウェイを作成するときに、次の設定を構成します。

    • [Basics] タブで、[Tier][Standard] に設定します。
    • [Frontends] タブで、[Frontend IP address type][Private] に設定します。新しいアプリケーションゲートウェイは、内部ロードバランサーとして使用されます。
  2. バックエンドプールを追加します。

    Azureアプリケーションゲートウェイバックエンドプール

  3. HTTP設定を作成します。

    Azure Application Gatewayでは、要求をバックエンドサーバーにルーティングするためにHTTPとHTTPSの両方を使用できます。ポート80、443、22334のHTTP設定を作成します。

    • ポート80を介したHTTP

      ポート80を介したHTTP

    • ポート443を介したHTTP

      Application Gateway V1でバックエンドサーバーを許可するには、認証証明書が必要です。認証証明書は、Base-64でエンコードされたX.509(.CER)形式のバックエンドサーバー証明書の公開キーです。TLS/SSL証明書から公開キーをエクスポートする方法については、「認証証明書のエクスポート(v1 SKU用)」を参照してください。

      ポート443を介したHTTP

      ポート443を介したHTTPの追加設定

    • ポート22334を介したHTTPまたはHTTPS

      WebSocketがHTTPを使用する場合は、ポート80と同じ設定を使用します。 WebSocketがHTTPSを使用する場合は、ポート443と同じ設定を使用します。

  4. フロントエンドIPアドレスを追加します。

    フロントエンドIP構成

  5. リスナーを追加します。

    次の例のように、ポート80、443、22334にリスナーを追加します:

    ポートのリスナー

    • ポート80のリスナー

    ポート80のリスナー

    • ポート443のリスナー

      HTTPSリスナーを作成するとき、自己署名証明書を作成してAzure Portalにアップロードします。詳しくは、「TLS終端でサポートされる証明書」および「自己署名証明書の作成」を参照してください。

      ポート443のリスナー

    • ポート22334のリスナー

      WebSocketがHTTPを使用する場合は、ポート80と同じ設定を使用します。WebSocketがHTTPSを使用する場合は、ポート443と同じ設定を使用します。次の例は、ポート22334でのHTTPSリスナーの設定を示しています。

      ポート22334のリスナー

  6. 要求ルーティングの規則を作成します。

    次の例のように、ポート80、443、22334の規則を作成します:

    要求ルーティングの規則

    • ポート80のルーティングの規則

      ポート80の要求ルーティングの規則 - [Listener]タブ

      ポート80の要求ルーティングの規則 - [Backend targets]タブ

    • ポート443のルーティングの規則

      ポート443の要求ルーティングの規則 - [Listener]タブ

      ポート443の要求ルーティングの規則 - [Backend targets]タブ

    • ポート22334のルーティングの規則

      ポート22334の要求ルーティング規則 - [Listener]タブ

      ポート22334の要求ルーティング規則 - [Backend targets]タブ

  7. Session RecordingサーバーがインストールされているAzure VMをバックエンドプールに追加します。

  8. Knowledge Centerの記事CTX230015に従って、Session Recordingサーバーを構成します。