Azureでのセッションレコーディングの展開と負荷分散
前提条件
- シトリックス バーチャルアプリ™ およびデスクトップ、またはシトリックス DaaS (旧称 シトリックス バーチャルアプリ™ およびデスクトップ サービス) がAzureにインストールされていること。
- Azureアカウントを持っていること。
ステップ1: シトリックス バーチャルアプリ™ およびデスクトップのインストーラーをAzureにアップロードする
注:
Citrixアカウントの資格情報を使用してCitrix Virtual Apps and Desktops のダウンロードページにアクセスし、製品のISOファイルをAzureのVMにダウンロードする場合は、ステップ1をスキップしてください。
-
Azure portalで、汎用v2 ストレージアカウントを作成し、デフォルトのパフォーマンス層であるStandardを受け入れます。
Azure Storageへのすべてのアクセスは、ストレージアカウントを介して行われます。

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

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

ステップ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.

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

ステップ5:インストーラーを実行してSession RecordingコンポーネントをAzure VMにインストールする
詳細については、「Session Recording管理コンポーネントのインストール」を参照してください。
ステップ6:録画を保存するためのAzureファイル共有を構成する
録画を保存するためのAzureファイル共有を作成するには、次の手順を実行します。
-
Azure portalで、ストレージアカウントを作成し、Azureファイル共有を作成します。
クイックスタートガイドについては、「Azure portal で Azure ファイル共有を作成および管理する」を参照してください。以下の表に、検討すべき構成を推奨します。
録画ファイルサイズ 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か月間の保持期間に基づいて計算されます。
-
セッション録画サーバーをインストールしたホストに、Azure ファイル共有の資格情報を追加します。
-
管理者としてコマンドプロンプトを起動し、ドライブを <Session Recording server installation path>\Bin フォルダーに変更します。
デフォルトでは、セッション録画サーバーは
C:\Program Files\Citrix\SessionRecording\Serverにインストールされます。 -
Run the SsRecUtils.exe -AddAzureFiles <storageAccountName> <fileShareName> <accesskey> command.
ここで、
- <storageaccountname> は、Azure のストレージアカウントの名前です。
- <filessharename> は、ストレージアカウントに含まれるファイル共有の名前です。
- <accesskey> は、ファイル共有にアクセスするために使用できるストレージアカウントキーです。
ストレージアカウントキーを取得する方法は2つあります。
-
ファイル共有ページで Connect アイコンをクリックすると表示される接続文字列から、ストレージアカウントキーを取得できます。

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

-
セッション録画サーバーをインストールしたホストに、Azure ファイル共有をマウントします。
- 「セッションレコーディングサーバーのプロパティ」を開きます。
- 「Storage」タブで「Add」をクリックします。
-
Enter the UNC path in the format of \\<storageaccountname>.file.core.windows.net\<filessharename>\<subfolder>.
Specify a subfolder under the file share to store your recording files. The Session Recording server then automatically creates the subfolder for you.
Azureファイル共有の例(/ja-jp/session-recording/2303/media/azure-file-share-exmaple.png)
- 「File Storage Directory」ダイアログボックスで「OK」をクリックします。
- 「セッションレコーディングサーバーのプロパティ」ウィンドウで「適用」をクリックします。
- 「Apply」がグレー表示になったら、「OK」をクリックします。
-
Session Recording Storage Managerサービスを再起動するよう求められたら、「Yes」をクリックします。
サービス再起動のプロンプト(/ja-jp/session-recording/2303/media/service-restart-prompt.png)
-
ステップ7:ロードバランサーを追加する
If there is more than one Session Recording server, we recommend you add a load balancer in front of them. Azure offers many options to load-balance traffic requests. This section walks you through the process of creating Citrix ADC, Azure Load Balancer, and Azure Application Gateway in Azure.
オプション1:AzureでCitrix ADC VPXインスタンスを作成する
-
Azure portalで、検索ボックスに「Citrix ADC」と入力します。
検索ボックスに「Citrix ADC」と入力します(/ja-jp/session-recording/2303/media/search-for-citrix-adc.png)
-
「Citrix ADC VPX ライセンス持ち込み」プランを選択し、「作成」をクリックします。
プランの選択(/ja-jp/session-recording/2303/media/choose-a-plan.png)
-
リソースグループを選択または作成し、「基本」タブでその他の設定を行います。
-
VM構成を設定します。
VM構成(/ja-jp/session-recording/2303/media/vm-configurations.png)
-
必要に応じてネットワーク設定を確認および変更します。パブリックインバウンドポートには「ssh (22)、http (80)、https (443)」を選択します。
仮想ネットワークが自動的に作成されます。Session Recording環境がすでにインストールされている場合は、その仮想ネットワークとサーバーサブネット設定を使用できます。
Citrix ADCネットワーク設定(/ja-jp/session-recording/2303/media/citrix-adc-network-settings.png)
その他のCitrix ADCネットワーク設定(/ja-jp/session-recording/2303/media/more-citrix-adc-network-settings.png)
-
「次へ: 確認 + 作成」をクリックしてCitrix ADC VPXインスタンスを作成し、展開が完了するまで待ちます。
Citrix ADC VPXインスタンス作成の検証に合格しました(/ja-jp/session-recording/2303/media/validation-passed.png)
-
サブネットIP(SNIP)アドレスとCitrix ADC VIPアドレスを同じサブネット上に設定します。
SNIPアドレスとVIPアドレスは同じサブネット上にある必要があります。この例では、VIPアドレスをSNIPアドレスのサブネット上に設定します。
- citrix-adc-vpx仮想マシンを停止します。
-
VIPアドレスのサブネットを変更します。
VIPアドレスのサブネットを変更する(/ja-jp/session-recording/2303/media/change-subnet-of-vip-address.png)
新しいサブネットを保存する(/ja-jp/session-recording/2303/media/save-new-subnet.png)
- citrix-adc-vpx仮想マシンを起動します
オプション2:Azureロードバランサーを作成する
Azure Load BalancerはTCPパススルーサービスです。次の図は、TCPパススルーによるロードバランシングを示しています。
TCPパススルーによるロードバランシング(/ja-jp/session-recording/2303/media/load-balancing-through-tcp-passthrough-2.png)
- Azureロードバランサーを作成します。
-
Azureポータルで検索し、マーケットプレイスからロードバランサーを選択します。
マーケットプレイスでAzure ロードバランサーを検索(/ja-jp/session-recording/2303/media/search–for-azure-load-balancer.png)
ロードバランサーの作成ページの基本タブで、次の表に示すように設定を構成します。
設定 値 サブスクリプション サブスクリプションを選択します。 リソースグループ 例えば、以前作成した srlbtest を選択します。 名前 SRLoadBalance と入力してください。 リージョン (US) East US を選択します。 種類 Internal を選択します。 SKU Standard を選択します。 仮想ネットワーク 例えば、以前作成した srazureautovnet を選択します。 サブネット 例えば、以前作成した srazureautosubnet を選択します。 IPアドレスの割り当て Dynamic を選択します。 アベイラビリティゾーン 「ゾーン冗長」を選択します。 
-
バックエンドプール、ヘルスプローブ、ロードバランシングルールなどのロードバランサーリソースを追加します。
-
バックエンドプールを追加します。
リソースリストから作成したロードバランサーを選択し、左側のナビゲーションで「Backend pools」をクリックします。「Add」をクリックしてバックエンドプールを追加します。
バックエンドプールの追加(/ja-jp/session-recording/2303/media/add-a-back-end-pool.png)
新しいバックエンドプールの名前を入力し、「Add」をクリックします。
バックエンドプールを追加しました(/ja-jp/session-recording/2303/media/added-a-back-end-pool.png)
-
ヘルスプローブを追加します。
リソースリストから作成したロードバランサーを選択し、左側のナビゲーションで「Health probes」をクリックします。
ヘルスプローブの追加(/ja-jp/session-recording/2303/media/add-health-probes.png)
「Add」をクリックして、ポート80、22334、1801、443にヘルスプローブを追加します。
ポート上のヘルスプローブ(/ja-jp/session-recording/2303/media/health-probes-on-ports.png)
たとえば、ポート80にヘルスプローブを作成するには、次の設定を使用します。
設定 値 名前 SRHealthProbe80 と入力してください。 プロトコル TCPを選択します。 ポート 80と入力します。 間隔 5 異常しきい値 VMが異常と見なされるまでに発生する必要がある異常しきい値または連続プローブ失敗の数として「2」を選択します。 ポート80でのヘルスプローブの例(/ja-jp/session-recording/2303/media/example-health-probe-on-port80.png)
-
負荷分散ルールを追加します。
リソースリストから作成したロードバランサーを選択し、左側のナビゲーションで負荷分散ルールをクリックします。追加をクリックして負荷分散ルールを追加します。
負荷分散ルールを追加する(/ja-jp/session-recording/2303/media/add-load-balancer-rule.png)
ポート80、22334、1801、443の負荷分散ルールを追加するには、追加をクリックします。
ポート上の負荷分散ルール(/ja-jp/session-recording/2303/media/load-balancer-rules-for-ports.png)
たとえば、ポート80の負荷分散ルールを作成するには、次の設定を使用します。
設定 値 名前 名前を入力します(例: SRTCPRule80)。 IPバージョン IPv4を選択します。 フロントエンドIPアドレス ロードバランサーフロントエンド を選択します。 プロトコル TCPを選択します。 ポート 80と入力します。 バックエンドポート 80と入力します。 バックエンドプール 次に、SRBackendPool を選択してください。 ヘルスプローブ 次に、SRHealthProbe80 を選択してください。 セッション永続性 Client IPを選択します。 アイドルタイムアウト (分) デフォルト設定を受け入れます。 TCPリセット Enabledを選択します。 送信元ネットワークアドレス変換 (SNAT) (推奨)アウトバウンドルールを使用してバックエンドプールメンバーにインターネットへのアクセスを提供しますを選択します。 ポート80のロードバランシング規則の例(/ja-jp/session-recording/2303/media/load-balancer-rule-for-port80.png)
-
Session RecordingサーバーがインストールされているAzure VMをバックエンドプールに追加します。
Session RecordingサーバーVMをバックエンドプールに追加(/ja-jp/session-recording/2303/media/add-back-end-servers.png)
バックエンドプール内のVM(/ja-jp/session-recording/2303/media/added-back-end-servers.png)
-
-
Azureロードバランサーをテストします。
サーバーをバックエンドプールに追加できず、NetworkInterfaceAndLoadBalancerAreInDifferentAvailabilitySetsというエラーメッセージが表示される場合は、サーバーのネットワークインターフェイスのパブリックIPアドレスの関連付けを解除します。
パブリックIPアドレスの関連付けを解除(/ja-jp/session-recording/2303/media/disassociate-a-public-ip-address.png)
-
オプション3:Azureアプリケーションゲートウェイを作成する
ヒント:
Application Gateway V2は、NTLM対応プロキシを介した要求のルーティングをサポートしていません。
-
Azureアプリケーションゲートウェイを作成します。
アプリケーションゲートウェイを作成する際に、次の設定を構成します。
- [基本] タブで、[階層] を [Standard] に設定します。
- [フロントエンド] タブで、[フロントエンドIPアドレスの種類] を [プライベート] に設定します。新しいアプリケーションゲートウェイは、内部ロードバランサーとして使用されます。
-
バックエンドプールを追加します。

-
HTTP 設定を作成します。
Azure Application Gateway は、バックエンドサーバーへの要求ルーティングに HTTP と HTTPS の両方をサポートしています。ポート 80、443、22334 の HTTP 設定を作成します。
-
ポート 80 経由の HTTP

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


-
ポート 22334 経由の HTTP または HTTPS
WebSocket が HTTP を使用する場合は、ポート 80 と同じ設定を使用します。 WebSocket が HTTPS を使用する場合は、ポート 443 と同じ設定を使用します。
-
-
フロントエンド IP アドレスを追加します。

-
リスナーを追加します。
たとえば、ポート 80、443、22334 にリスナーを追加します。

- ポート80のリスナー

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

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

-
要求ルーティングルールを作成します。
ポート80、443、22334のルールを作成します。例:

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


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


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


-
-
Session RecordingサーバーがインストールされているAzure VMをバックエンドプールに追加します。
-
ナレッジセンターの記事CTX230015に従って、Session Recordingサーバーを構成します。
この記事の概要
- 前提条件
- ステップ1: シトリックス バーチャルアプリ™ およびデスクトップのインストーラーをAzureにアップロードする
- ステップ2: Azure portalでSQLマネージドインスタンスを作成する
- ステップ3:Azure仮想マシン(VM)を作成する
- ステップ4:リモートデスクトップでCitrix Virtual Apps and DesktopsインストーラーをAzure VMにダウンロードする
- ステップ5:インストーラーを実行してSession RecordingコンポーネントをAzure VMにインストールする
- ステップ6:録画を保存するためのAzureファイル共有を構成する
- ステップ7:ロードバランサーを追加する