Session Recording

Azureでのセッションレコーディングの展開と負荷分散

前提条件

  • 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で、汎用v2ストレージアカウントを作成し、デフォルトのパフォーマンス層であるStandardを受け入れます。

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

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

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

    コンテナーの作成

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

    BLOBのアップロード

ステップ2: Azure portalでSQLマネージドインスタンスを作成する

詳細については、Azure SQL Managed Instance の作成を参照してください。

ステップ 3: Azure 仮想マシン (VM) を作成する

Choose Windows Server 2019 Datacenter – Gen1 for the image and Standard_D4as_v4 – 4 vcpus, 16GiB memory for the size. For more information, see Create a Windows virtual machine in the Azure portal.

Azure で VM を作成する

ステップ 4: リモートデスクトップで接続し、Citrix Virtual Apps and Desktops インストーラーを Azure VM にダウンロードする

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

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

詳細については、Session Recording 管理コンポーネントのインストールを参照してください。

ステップ 6: 記録を保存するための Azure ファイル共有を構成する

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

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

    クイックスタートガイドについては、Create and manage Azure file shares with the Azure portalを参照してください。次の表に、考慮すべき構成を推奨します。

    記録ファイルサイズ MB/時 1 日あたりの記録セッション数 ファイル共有の種類 ファイル共有クォータ (TB) セッション録画サーバーの数量 セッション録画サーバーのサイズ
    < 6.37 < 1,000 ハードディスクドライブ スタンダード (StorageV2) 2 1 スタンダード D4as_v4
    < 6.37 1,000~2,000 SSD プレミアム 3 1 スタンダード D4as_v4
    < 6.37 2,000–3,000 SSD プレミアム 5 1 スタンダード D4as_v4
    < 6.37 3,000–4,000 SSD プレミアム 6 1 スタンダード D4as_v4
    約10 < 1,000 ハードディスクドライブ スタンダード (StorageV2) 3 1 スタンダード D4as_v4
    約10 1,000~2,500 SSD プレミアム 6 1 スタンダード D4as_v4
    約10 2,500~4,000 SSD プレミアム 10 2 スタンダード D4as_v4

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

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

    1. 管理者としてコマンドプロンプトを起動し、ドライブを<Session Recording Server installation path>\Binフォルダーに変更します。

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

    2. Run the SsRecUtils.exe -AddAzureFiles <storageAccountName> <fileShareName> <accesskey> command.

      ここで、

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

      ストレージアカウントキーを取得する方法は2つあります。

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

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

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

        アクセスキー

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

      1. セッションレコーディングサーバーのプロパティ」を開きます。
      2. ストレージ」タブで「追加」をクリックします。
      3. Enter the UNC path in the format of \\<storageaccountname>.file.core.windows.net\<filessharename>\<subfolder>.

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

        Azureファイル共有の例(/ja-jp/session-recording/2109/media/azure-file-share-exmaple.png)

      4. ファイルストレージディレクトリ」ダイアログボックスで「OK」をクリックします。
      5. Session Recording Serverのプロパティ」ウィンドウで「適用」をクリックします。
      6. 適用」がグレー表示になったら「OK」をクリックします。
      7. Session Recording Storage Managerサービスを再起動するよう求められたら、「はい」をクリックします。

        サービス再起動のプロンプト(/ja-jp/session-recording/2109/media/service-restart-prompt.png)

ステップ7:ロードバランサーを追加する

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

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

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

    検索ボックスに「Citrix ADC」と入力します(/ja-jp/session-recording/2109/media/search-for-citrix-adc.png)

  2. Citrix ADC VPX ライセンス持ち込みプランを選択し、作成をクリックします。

    「プランの選択」(/ja-jp/session-recording/2109/media/choose-a-plan.png)

  3. リソースグループを選択または作成し、「基本」タブでその他の設定を行います。

  4. VM構成を設定します。

    「VM構成」(/ja-jp/session-recording/2109/media/vm-configurations.png)

  5. 必要に応じてネットワーク設定を確認および変更します。パブリックインバウンドポートには「ssh (22)、http (80)、https (443)」を選択します。

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

    「Citrix ADCネットワーク設定」(/ja-jp/session-recording/2109/media/citrix-adc-network-settings.png)

    「その他のCitrix ADCネットワーク設定」(/ja-jp/session-recording/2109/media/more-citrix-adc-network-settings.png)

  6. 次へ: 確認 + 作成」をクリックしてCitrix ADC VPXインスタンスを作成し、デプロイが完了するまで待ちます。

    「Citrix ADC VPXインスタンス作成の検証に合格しました」(/ja-jp/session-recording/2109/media/validation-passed.png)

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

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

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

      VIPアドレスのサブネットを変更する(/ja-jp/session-recording/2109/media/change-subnet-of-vip-address.png)

      新しいサブネットを保存する(/ja-jp/session-recording/2109/media/save-new-subnet.png)

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

オプション2:Azureロードバランサーを作成する

Azure Load BalancerはTCPパススルーサービスです。次の図は、TCPパススルーによるロードバランシングを示しています。

TCPパススルーによるロードバランシング(/ja-jp/session-recording/2109/media/load-balancing-through-tcp-passthrough-2.png)

  1. Azureロードバランサーを作成します。
    1. Azureポータルで検索し、Marketplaceからロードバランサーを選択します。

      マーケットプレイスでAzure Load Balancerを検索(/ja-jp/session-recording/2109/media/search–for-azure-load-balancer.png)

      ロードバランサーの作成ページの基本タブで、次の表に示すように設定を構成します。

      設定
      サブスクリプション サブスクリプションを選択します。
      リソースグループ 例えば、以前に作成したsrlbtestを選択します。
      名前 SRLoadBalance」と入力してください。
      リージョン (US) East USを選択します。
      タイプ Internalを選択します。
      SKU Standardを選択します。
      仮想ネットワーク 例えば、以前に作成したsrazureautovnetを選択します。
      サブネット 例えば、以前に作成したsrazureautosubnetを選択します。
      IPアドレスの割り当て Dynamicを選択します。
      可用性ゾーン ゾーン冗長を選択します。

      Azure ロードバランサーの作成

    2. バックエンドプール、ヘルスプローブ、ロードバランシングルールなどのロードバランサーリソースを追加します。

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

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

        バックエンドプールの追加(/ja-jp/session-recording/2109/media/add-a-back-end-pool.png)

        新しいバックエンドプールの名前を入力し、追加をクリックします。

        バックエンドプールを追加しました(/ja-jp/session-recording/2109/media/added-a-back-end-pool.png)

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

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

        ヘルスプローブの追加(/ja-jp/session-recording/2109/media/add-health-probes.png)

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

        ポート上のヘルスプローブ(/ja-jp/session-recording/2109/media/health-probes-on-ports.png)

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

        設定
        名前 SRHealthProbe80」という名前を入力します。
        プロトコル TCP」を選択します。
        ポート 80」と入力します。
        間隔 5
        異常しきい値 VMが異常と見なされるまでに発生する必要がある異常しきい値または連続プローブ失敗の数として「2」を選択します。

        ポート80でのヘルスプローブの例(/ja-jp/session-recording/2109/media/example-health-probe-on-port80.png)

      • 負荷分散ルールを追加します。

        リソースリストから作成したロードバランサーを選択し、左側のナビゲーションで「負荷分散ルール」をクリックします。「追加」をクリックして、負荷分散ルールを追加します。

        ロードバランシング規則の追加(/ja-jp/session-recording/2109/media/add-load-balancer-rule.png)

        ポート80、22334、1801、および443のロードバランシング規則を追加するには、[追加] をクリックします。

        ポート上のロードバランシング規則(/ja-jp/session-recording/2109/media/load-balancer-rules-for-ports.png)

        たとえば、ポート80のロードバランシング規則を作成するには、次の設定を使用します。

        設定
        名前 たとえば、SRTCPRule80などの名前を入力します。
        IPバージョン [IPv4] を選択します。
        フロントエンドIPアドレス LoadBalancerFrontEnd という項目を選択してください。
        プロトコル [TCP] を選択します。
        ポート 80」と入力します。
        バックエンドポート 80」と入力します。
        バックエンドプール SRBackendPool」の項目を選択してください。
        ヘルスプローブ SRHealthProbe80」という項目を選択してください。
        セッション永続性 Client IP」を選択します。
        アイドルタイムアウト (分) デフォルト設定を受け入れます。
        TCPリセット Enabled」を選択します。
        送信元ネットワークアドレス変換 (SNAT) (推奨) 送信ルールを使用してバックエンドプールメンバーにインターネットへのアクセスを提供します」を選択します。

        ポート80の負荷分散ルールの例(/ja-jp/session-recording/2109/media/load-balancer-rule-for-port80.png)

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

        「セッションレコーディングサーバーVMをバックエンドプールに追加」(/ja-jp/session-recording/2109/media/add-back-end-servers.png)

        バックエンドプール内のVM(/ja-jp/session-recording/2109/media/added-back-end-servers.png)

    3. Azureロードバランサーをテストします。

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

      パブリックIPアドレスの関連付けを解除(/ja-jp/session-recording/2109/media/disassociate-a-public-ip-address.png)

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

ヒント:

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

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

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

    • ベーシック」タブで、「ティア」を「スタンダード」に設定します。
    • Frontendsタブで、Frontend IP address typePrivateに設定します。新しいアプリケーションゲートウェイは、内部ロードバランサーとして使用されます。
  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 にリスナーを追加します。

    ポート上のリスナー(/ja-jp/session-recording/2109/media/listeners-on-ports.png)

    • ポート80のリスナー

    ポート80のリスナー(/ja-jp/session-recording/2109/media/listener-on-port-80.png)

    • ポート443のリスナー

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

      ポート443のリスナー(/ja-jp/session-recording/2109/media/listener-on-port-443.png)

    • ポート22334のリスナー

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

      ポート22334のリスナー(/ja-jp/session-recording/2109/media/listener-on-port-22334.png)

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

    たとえば、ポート80、443、22334のルールを作成します。

    要求ルーティングルール(/ja-jp/session-recording/2109/media/request-routing-rules.png)

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

      ポート80の要求ルーティングルール - リスナー タブ(/ja-jp/session-recording/2109/media/request-routing-rule-for-port-80.png)

      ポート80の要求ルーティングルール - バックエンド ターゲット タブ(/ja-jp/session-recording/2109/media/request-routing-rule-for-port-80-2.png)

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

      ポート443の要求ルーティングルール - リスナー タブ

      ポート443の要求ルーティングルール - バックエンドターゲット タブ

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

      ポート22334の要求ルーティングルール - リスナー タブ

      ポート22334の要求ルーティングルール - バックエンドターゲット タブ

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

  8. Knowledge Center の記事CTX230015に従って、セッションレコーディングサーバーを構成します。