Session Recording

インストール、アップグレード、およびアンインストール

この記事は、次のセクションで構成されています。

インストールチェックリスト

次のファイルを使用して、Session Recordingコンポーネントをインストールします:

  • Broker_PowerShellSnapIn_x64.msi

  • SessionRecordingAdministrationx64.msi

  • SessionRecordingAgentx64.msi

  • SessionRecordingPlayer.msi

  • SessionRecordingWebPlayer.msi

インストールを始める前に、以下のリストに記載されている作業を行います:

手順
  インストールを開始する前に、前提条件をインストールします。「システム要件」および「Citrixスクリプトを使用したWindowsの役割と機能の前提条件のインストール」を参照してください。
  Session Recordingの各コンポーネントをインストールするマシンを選択します。各コンピューターがインストールするコンポーネントのハードウェアおよびソフトウェアの要件を満たしていることを確認します。
  Citrixアカウント資格情報を使用して、Citrix Virtual Apps and Desktopsのダウンロードページにアクセスして、製品ファイルをダウンロードします。ファイルを解凍します。
  Session Recordingコンポーネント間の通信にTLSプロトコルを使用するには、正しい証明書を環境にインストールします。
  Session Recordingコンポーネントに必要なHotfixをインストールします。HotfixはCitrixサポートから入手できます。
  Directorを構成して、Session Recordingポリシーを作成およびアクティブ化します。詳しくは、「Directorを構成してSession Recordingサーバーを使用する」を参照してください。

注:

  • 録画ポリシーに基づいて、公開アプリケーションを個別のデリバリーグループに分割することをお勧めします。公開アプリケーションのセッション共有は、同じデリバリーグループ内のアクティブなポリシーと競合する可能性があります。Session Recordingでは、アクティブなポリシーとユーザーが最初に開いた公開アプリケーションを照合します。7.18リリース以降、動的なセッションの録画機能を使用して、セッション中いつでもセッションの録画を開始または停止できます。この機能は、アクティブなポリシーとの競合の問題を軽減するために役立ちます。詳しくは、「動的なセッションの録画」を参照してください。
  • Machine Creation Services(MCS)またはProvisioning Servicesを使用する計画がある場合は、一意なQMIdを準備します。この手順の実行に失敗すると、録画データが損失する可能性があります。
  • SQL ServerではTCP/IPを有効にする必要があり、SQL Server Browserサービスが実行中で、またWindows認証の使用が必要です。
  • HTTPSを使用するには、TLS/HTTPSのサーバー証明書を構成します。
  • Local Users and Groups > Groups > UsersのユーザーがC:\windows\Tempフォルダーへの書き込み権限があることを確認します。

Citrixスクリプトを使用したWindowsの役割と機能の前提条件のインストール

以下のCitrixスクリプトを使用して、Session Recordingが正しく動作するために必要なWindowsの役割および機能の前提条件をインストールしてから Session Recordingをインストールします:

  • InstallPrereqsforSessionRecordingAdministration.ps1

     <#
     .Synopsis
         Installs Prereqs for Session Recording Administration
     .Description
         Supports Windows Server 2022, Windows Server 2019 and Windows Server 2016.
         Install below windows feature on this machine:
         -Application Development
         -Security - Windows Authentication
         -Management Tools - IIS 6 Management Compatibility
             IIS 6 Metabase Compatibility
             IIS 6 WMI Compatibility
             IIS 6 Scripting Tools
             IIS 6 Management Console
         -Microsoft Message Queuing (MSMQ), with Active Directory integration disabled, and MSMQ HTTP support enabled.
     #>
     function AddFeatures($featurename)
     {
         try
         {
             $feature=Get-WindowsFeature | ? {$\_.DisplayName -eq $featurename -or $\_.Name -eq $featurename}
             Add-WindowsFeature $feature
         }
         catch
         {
             Write-Host "Addition of Windows feature $featurename failed"
             Exit 1
         }
         Write-Host "Addition of Windows feature $featurename succeeded"
     }
    
     $system= gwmi win32_operatingSystem | select name
    
     if (-not (($system -Like '\*Microsoft Windows Server 2022\*') -or ($system -Like '\*Microsoft Windows Server 2019\*') -or ($system -Like '\*Microsoft Windows Server 2016\*')))
     {
         Write-Host("This is not a supported server platform. Installation aborted.")
         Exit
     }
    
     # Start to install Windows feature
     Import-Module ServerManager
    
     AddFeatures('Web-Asp-Net45') #ASP.NET 4.5
     AddFeatures('Web-Mgmt-Console') #IIS Management Console
     AddFeatures('Web-Windows-Auth') # Windows Authentication
     AddFeatures('Web-Metabase') #IIS 6 Metabase Compatibility
     AddFeatures('Web-WMI') #IIS 6 WMI Compatibility
     AddFeatures('Web-Lgcy-Scripting')#IIS 6 Scripting Tools
     AddFeatures('Web-Lgcy-Mgmt-Console') #IIS 6 Management Console
     AddFeatures('MSMQ-HTTP-Support') #MSMQ HTTP Support
     AddFeatures('web-websockets') #IIS Web Sockets
     AddFeatures('NET-WCF-HTTP-Activation45') #http activate
     <!--NeedCopy-->
    
  • InstallPrereqsforSessionRecordingAgent.ps1

     <#
     .Synopsis
         Installs Prereqs for Session Recording Agent
     .Description
         Supports  Windows Server 2022, Windows Server 2019, Windows Server 2016, windows 11, and Windows 10.
         Install below windows feature on this machine:
         -Microsoft Message Queuing (MSMQ), with Active Directory integration disabled, and MSMQ HTTP support enabled.
     #>
     function AddFeatures($featurename)
     {
         try
         {
             $feature=Get-WindowsFeature | ? {$\_.DisplayName -eq $featurename -or $\_.Name -eq $featurename}
             Add-WindowsFeature $feature
         }
         catch
         {
             Write-Host "Addition of Windows feature $featurename failed"
             Exit 1
         }
         Write-Host "Addition of Windows feature $featurename succeeded"
     }
    
     # Start to install Windows feature
     $system= gwmi win32_operatingSystem | select name
    
     if (-not (($system -Like '\*Microsoft Windows Server 2022\*') -or ($system -Like '\*Microsoft Windows Server 2019\*') -or ($system -Like '\*Microsoft Windows Server 2016\*') -or ($system -Like '\*Microsoft Windows 11\*') -or ($system -Like '\*Microsoft Windows 10\*')))
     {
         Write-Host("This is not a supported platform. Installation aborted.")
         Exit
     }
    
     if ($system -Like '\*Microsoft Windows Server\*')
     {
         Import-Module ServerManager
         AddFeatures('MSMQ') #Message Queuing
         AddFeatures('MSMQ-HTTP-Support')#MSMQ HTTP Support
     }
     else
     {
         try
         {
             dism /online /enable-feature /featurename:MSMQ-HTTP /all
         }
         catch
         {
             Write-Host "Addition of Windows feature MSMQ HTTP Support failed"
             Exit 1
         }
         write-Host "Addition of Windows feature MSMQ HTTP Support succeeded"
     }
     <!--NeedCopy-->
    

Windowsの役割と機能の前提条件をインストールするには、次の手順を完了します:

  1. Session Recording Administration コンポーネントをインストールする予定のマシンで以下を行います:

    1. PowerShellの実行ポリシーがRemoteSignedUnrestrictedに設定されていることを確認します。

      Set-ExecutionPolicy RemoteSigned
      <!--NeedCopy-->
      
    2. コマンドプロンプトを管理者として起動し、powershell.exe -file InstallPrereqsforSessionRecordingAdministration.ps1コマンドを実行します。

      正常に追加されている機能が表示され、スクリプトは停止します。

    3. スクリプトの実行後、実行ポリシーが社内ポリシーに基づく適切な値に設定されていることを確認します。

  2. Session Recording Agentコンポーネントをインストールする予定のマシンで以下を行います:

    1. PowerShellの実行ポリシーがRemoteSignedUnrestrictedに設定されていることを確認します。

      Set-ExecutionPolicy RemoteSigned
      <!--NeedCopy-->
      
    2. コマンドプロンプトを管理者として起動し、powershell.exe -file InstallPrereqsforSessionRecordingAgent.ps1コマンドを実行します。

      正常に追加されている機能が表示され、スクリプトは停止します。

    3. スクリプトの実行後、実行ポリシーが社内ポリシーに基づく適切な値に設定されていることを確認します。

Session Recording Administrationコンポーネントのインストール

Session Recording Administration、Session Recording Agent、およびSession Recording Playerの各コンポーネントを別々のサーバーにインストールすることをお勧めします。

Session Recording Administrationコンポーネントは、Session Recordingデータベース、Session Recordingサーバー、およびSession Recordingポリシーコンソールから構成されています。コンポーネントを選択してサーバーにインストールできます。

注:

2110以降、TLS 1.0が無効になっているWindows Server 2016にSession Recording Administrationコンポーネントをインストールする前に、次の手順を実行します。

  1. OLE DB Driver for SQL Serverをインストールします。
  2. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319レジストリキーで、SchUseStrongCrypto DWORD(32ビット)値を追加して、値を1に設定します。

  3. 再起動します。
  1. Broker_PowerShellSnapIn_x64.msiをインストールします。

    重要:

    Session Recordingポリシーコンソールを使用するには、Broker PowerShellスナップイン(Broker_PowerShellSnapIn_x64.msi)を手動でインストールします。Citrix Virtual Apps and DesktopsのISO(\layout\image-full\x64\Citrix Desktop Delivery Controller)でスナップインを検索し、インストール手順に従います。従わない場合、エラーが発生する可能性があります。

  2. Windowsコマンドプロンプトを管理者として起動し、msiexec /i SessionRecordingAdministrationx64.msiコマンドを実行するか、この.msiファイルをダブルクリックします。

  3. インストールUIで [次へ] を選択して、ライセンス契約に同意します。

  4. Session Recording Administration Setup画面で、インストールするSession Recording Administrationコンポーネントを選択します。

    Session Recording Administration Setup画面

    注:

    概念実証では、すべてのSession Recording Administrationコンポーネントを1つのサーバーにインストールしても構いません。ただし、大規模な実稼働環境の場合は、Session Recordingポリシーコンソールをインストールしたサーバーとは別のサーバーに、Session Recordingサーバー、Session Recording管理者ログ、およびSession Recordingデータベースをインストールすることをお勧めします。Session Recording管理者ログは、Session Recordingサーバーのオプションのサブ機能です。Session Recording管理者ログを選択する前に、Session Recordingサーバーを選択します。

Session Recordingデータベースのインストール

注:

Session RecordingデータベースとMicrosoft SQL Serverの展開には、通常以下の3種類があります:

  • 展開1: Session RecordingサーバーとSession Recordingデータベースを同じマシンにインストールし、Microsoft SQL Serverをリモートマシンにインストールする (推奨)。
  • 展開2:Session Recordingサーバー、Session Recordingデータベース、およびMicrosoft SQL Serverを同じマシンにインストールする。
  • 展開3:Session Recordingサーバーをあるサーバーにインストールし、Session RecordingデータベースとMicrosoft SQL Serverの両方を、Session Recordingサーバーをインストールしたマシンとは別のマシンにインストールする(推奨されません)。
  1. [データベースおよびサーバーの構成] ページで、Session Recordingデータベースのインスタンス名とデータベース名、およびSession Recordingサーバーのコンピューターアカウントを指定します。[次へ] をクリックします。

    • インスタンス名: データベースインスタンスが、インスタンスのセットアップ時に構成した名前付きインスタンスでない場合、SQL Serverのコンピューター名のみを使用できます。名前付きインスタンスがある場合は、データベースインスタンス名としてcomputer-name\instance-nameを使用します。使用中のサーバーインスタンス名を確認するには、SQL Serverでselect @@servernameを実行します。戻り値は、正確なデータベースインスタンス名です。SQL Serverがカスタムポート(デフォルトポート1433以外)でリスンするように構成されている場合は、インスタンス名にコンマを追加してカスタムリスナーポートを設定します。たとえば、[インスタンス名] テキストボックスで「DXSBC-SRD-1,2433」と入力します。コンマの後の「2433」は、カスタムリスナーポートを示します。

    • データベース名: [データベース名] テキストボックスで任意のデータベース名を入力するか、またはテキストボックスに事前設定されているデフォルトのデータベース名を使用します。[接続のテスト] をクリックして、SQL Serverインスタンスへの接続とデータベース名の有効性をテストします。

      重要:

      任意のデータベース名に使用できる文字は、A~Z、a~z、0~9 のみで、123文字を超えてはなりません。

      • データベースのsecurityadminおよびdbcreatorサーバー役割権限が必要です。権限がない場合は、次を行います:
        • データベース管理者にインストールの権限を割り当ててもらいます。インストールの完了後は、securityadminおよびdbcreatorサーバー役割権限は不要になり、安全に削除できます。
        • または、msiのインストール中、securityadminおよびdbcreatorサーバー役割権限とともに、データベース管理者の資格情報を求めるダイアログボックスが表示されます。資格情報を正確に入力して、[OK] をクリックし、インストールを続行します。

        インストールによりSession Recordingデータベースが作成され、Session Recordingサーバーのマシンアカウントがdb_ownerとして追加されます。

    • Session Recordingサーバーのコンピューターアカウント

      • 展開1と展開2[Session Recordingサーバーのコンピューターアカウント] テキストボックスで、「localhost」と入力します。

      • 展開3:Session Recordingサーバーをホストするマシンの名前を、「ドメイン\コンピューター名」の形式で入力します。Session Recordingサーバーのコンピューターアカウントは、Session Recordingデータベースにアクセスするためのユーザーアカウントです。

      注:

      [Session Recordingサーバーのコンピューターアカウント] テキストボックスにドメイン名が設定されているときに、Session Recording Administrationコンポーネントをインストールしようとすると、エラーコード1603で失敗することがあります。回避策として、localhostまたはNetBIOSドメイン\マシン名を [Session Recordingサーバーのコンピューターアカウント] テキストボックスに入力してください。NetBIOSドメイン名を取得するには、Session RecordingサーバーがインストールされたコンピューターのPowerShellで「$env:userdomain」を実行するか、コマンドプロンプトで「echo %UserDomain%」を実行します。

  2. 手順に従ってインストールを完了します。

Session Recording Serverのインストール

  1. [機能] ページで、[Session Recordingサーバー][Session Recording管理者ログ] を選択します。

    注:

    • Session Recording管理者ログは、Session Recordingサーバーのオプションのサブ機能です。Session Recording管理者ログを選択する前に、Session Recordingサーバーを選択します。
    • Session Recording管理者ログとSession Recordingサーバーを同時にインストールすることをお勧めします。管理者ログ機能を有効にしない場合は、後のページで無効にできます。
  2. [データベースおよびサーバーの構成] ページで、設定を指定します。

    • インスタンス名: [インスタンス名] にSQL Serverの名前を入力します。名前付きインスタンスを使用している場合は、「computer-name\instance-name」を入力します。使用していない場合は、「computer-name」だけを入力します。SQL Serverがカスタムポート(デフォルトポート1433以外)でリスンするように構成されている場合は、インスタンス名にコンマを追加してカスタムリスナーポートを設定します。たとえば、[インスタンス名] テキストボックスで「DXSBC-SRD-1,2433」と入力します。コンマの後の「2433」は、カスタムリスナーポートを示します。
    • データベース名: [データベース名] テキストボックスで任意のデータベース名を入力するか、またはテキストボックスに事前設定されているデフォルトのデータベース名CitrixSessionRecordingを使用します。 データベースのsecurityadminおよびdbcreatorサーバー役割権限が必要です。権限がない場合は、次を行います:
      • データベース管理者にインストールの権限を割り当ててもらいます。インストールの完了後は、securityadminおよびdbcreatorサーバー役割権限は不要になり、安全に削除できます。
      • または、msiのインストール中、securityadminおよびdbcreatorサーバー役割権限とともに、データベース管理者の資格情報を求めるダイアログボックスが表示されます。資格情報を正確に入力して、[OK] をクリックし、インストールを続行します。
    • 正しいインスタンス名とデータベース名を入力したら、[接続のテスト] をクリックしてSession Recordingデータベースへの接続をテストします。

    • Session Recordingサーバーのコンピューターアカウントを入力して、[次へ] をクリックします。
  3. [管理者ログの構成] ページで、管理者ログ機能の構成を指定します。

    • ログデータベースはSQL Serverインスタンスにインストールされます: このテキストボックスは編集できません。管理者ログデータベースのSQL Serverインスタンス名は、[データベースおよびサーバーの構成] ページで入力したインスタンス名が自動的に適用されます。
    • ログデータベース名: Session Recording管理者ログ機能をインストールするには、このテキストボックスで管理者ログデータベースの任意のデータベース名を入力するか、またはテキストボックスに事前設定されたデフォルトのデータベース名CitrixSessionRecordingLoggingを使用します。

      注:

      管理者ログデータベース名は [データベースとサーバーの構成] ページの [データベース名] テキストボックスで設定したSession Recordingデータベース名と異なるものにする必要があります。

    • デフォルトのデータベース名を使用します:このオプションを選択すると、デフォルトのログデータベース名が使用されます。
    • ロギングサービスを有効にする:デフォルトでは、管理者ログ機能は有効になっています。チェックボックスをオフにしてこの機能を無効にできます。
    • 強制ブロッキングを有効にする:デフォルトでは強制ブロッキングが有効になっているため、ログが失敗すると通常の機能がブロックされることがあります。チェックボックスをオフにして強制ブロッキングを無効にできます。
  4. [次へ] をクリックしてインストールを完了します。

注:

Session Recordingサーバーのデフォルトのインストールでは、通信をセキュリティで保護するためHTTPS/TLSを使用します。Session Recordingサーバーのデフォルトのインターネットインフォメーションサービス(IIS)サイトでTLSが構成されていない場合は、HTTPを使用します。これを実行するには、Session Recording Brokerサイトに移動してIIS管理コンソールでSSLを選択解除し、SSL設定を開き、[SSLを必要とする] ボックスをオフにします。

Session Recording Agentのインストール

Session Recording Agentは、セッションを録画するVDAまたはVDIマシンにインストールします。

  1. [Session Recording Agent構成] ページで、次の作業を行います:Session Recordingサーバーを事前にインストールしている場合は、Session Recordingサーバーをインストールしたマシンのコンピューター名と、Session Recordingサーバーとの接続のプロトコルとポート情報を入力します。Session Recordingのインストールが済んでいない場合は、後で [Session Recording Agentのプロパティ] でこれらの情報を変更できます。
  2. 手順に従ってインストールを完了します。

注:

Machine Creation Services(MCS)またはProvisioning Services(PVS)で、構成済みのマスターイメージとインストール済みのMicrosoft Message Queuing(MSMQ)を使用して複数のVDAを作成すると、一定の状況下において、これらのVDAのQMIdが同じになる可能性があります。この場合、さまざまな問題が発生する可能性があります:

  • 録画契約が承認されていても、セッションが録画されない場合があります。
  • セッションのログオフ信号がSession Recordingサーバーによって受信されず、セッションのステータスが常に[ライブ]になってしまう可能性があります。

解決策はVDAごとに固有のQMIdを作成することですが、方法は展開方法によって異なります。

Session Recording AgentがインストールされたシングルセッションOS VDAを、PVS 7.7以降またはMCS 7.9以降のバージョンを使用して静的デスクトップモードで作成する場合(たとえば、すべての変更が別のPersonal vDiskまたはVDAのローカルディスクで永続的になるように構成する場合)、追加の操作は不要です。

マルチセッションOS VDAがMCSまたはPVSとシングルセッションOS VDAを使用して作成され、ユーザーがログオフするとすべての変更が削除されるように構成されている場合は、GenRandomQMID.ps1スクリプトを使用してシステム起動時にQMIdを変更します。電源管理方法を変更して、ユーザーがログインを試行する前に十分な数のVDAが実行されているようにします。

GenRandomQMID.ps1スクリプトを使用するには、以下の手順に従ってください:

1. PowerShellの実行ポリシーがRemoteSignedUnrestrictedに設定されていることを確認します。

Set-ExecutionPolicy RemoteSigned

2. スケジュールされたタスクを作成し、トリガーを[システム起動時]に設定して、PVSまたはMCSマスターイメージマシンでSYSTEMアカウントを使って実行します。

3. スタートアップタスクとしてコマンドを追加します。

powershell .exe -file C:\\GenRandomQMID.ps1

GenRandomQMID.ps1スクリプトの概要:

  1. レジストリから現在のQMIdを削除します。
  2. SysPrep = 1HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSMQ\Parametersに追加します。
  3. CitrixSmAudAgentやMSMQなどの関連サービスを停止します。
  4. ランダムなQMIdを生成するために、先ほど停止したサービスを開始します。

GENRANDOMQMID.PS1を例に示します:

# Remove old QMId from registry and set SysPrep flag for MSMQ

Remove-Itemproperty -Path >HKLM:Software\Microsoft\MSMQ\Parameters\MachineCache -Name QMId -Force

Set-ItemProperty -Path HKLM:Software\Microsoft\MSMQ\Parameters -Name >"SysPrep" -Type DWord -Value 1

# Get dependent services

$depServices = Get-Service -name MSMQ -dependentservices | Select -Property Name

# Restart MSMQ to get a new QMId

Restart-Service -force MSMQ

# Start dependent services

if ($depServices -ne $null) {

    foreach ($depService in $depServices) {

        $startMode = Get-WmiObject win32_service -filter "NAME = '$($depService.Name)'" | Select -Property StartMode

        if ($startMode.StartMode -eq "Auto") {

            Start-Service $depService.Name
        }
}

}
<!--NeedCopy-->

Session Recording PlayerとWeb Playerのインストール

Session Recordingサーバーまたはドメイン内のワークステーションにSession Recording Playerをインストールします。Session RecordingサーバーでのみWeb Playerをインストールします。

SessionRecordingPlayer.msiSessionRecordingWebPlayer.msiをダブルクリックし、手順に従ってインストールを完了します。

インストールの自動化

Session Recordingは、オプションを使用するサイレントインストールをサポートしています。サイレントインストールを使用するスクリプトを記述し、関連するコマンドを実行します。

Session Recording Administrationコンポーネントのインストールを自動化する

単一のコマンドを使用してSession Recording Administrationコンポーネントの完全なセットをインストールする

たとえば、次のいずれかのコマンドを実行すると、Session Recording Administrationコンポーネントの完全なセットをインストールし、インストール情報を取得するためにログファイルを作成します。

msiexec /i "c:\SessionRecordingAdministrationx64.msi" ADDLOCAL="SsRecServer,PolicyConsole,SsRecLogging,StorageDatabase" DATABASEINSTANCE="WNBIO-SRD-1" DATABASENAME="CitrixSessionRecording" LOGGINGDATABASENAME="CitrixSessionRecordingLogging" DATABASEUSER="localhost" /q /l*vx "yourinstallationlog"
<!--NeedCopy-->
msiexec /i "SessionRecordingAdministrationx64.msi" ADDLOCAL="SsRecServer,PolicyConsole,SsRecLogging,StorageDatabase" DATABASEINSTANCE="CloudSQL" DATABASENAME="CitrixSessionRecording" LOGGINGDATABASENAME="CitrixSessionRecordingLogging" AZURESQLSERVICESUPPORT="1" AZUREUSERNAME="CloudSQLAdminName" AZUREPASSWORD="CloudSQLAdminPassword" /q /l*vx "c:\WithLogging.log"
<!--NeedCopy-->

注:

SessionRecordingAdministrationx64.msiファイルは\layout\image-full\x64\Session RecordingのCitrix Virtual Apps and Desktops ISOにあります。

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

  • ADDLOCALは選択した機能です。複数のオプションを選択できます。SsRecServerは、Session Recordingサーバーです。PolicyConsoleは、Session Recordingポリシーコンソールです。SsRecLoggingは、管理者ログ機能です。StorageDatabaseは、Session Recordingデータベースです。Session Recording管理者ログは、Session Recordingサーバーのオプションのサブ機能です。Session Recording管理者ログを選択する前に、Session Recordingサーバーを選択します。
  • DATABASEINSTANCEは、Session Recordingデータベースのインスタンス名です。たとえば、Azure SQL Managed Instanceを使用している場合は.\SQLEXPRESS,computer-name\SQLEXPRESS,computer-nameまたはtcp:srt-sql-support.public.ca7b16b60789.database.windows.net,3342です。
  • DATABASENAMEは、Session Recordingデータベースのデータベース名です。
  • LOGGINGDATABASENAMEは、管理者ログデータベース名です。
  • AZURESQLSERVICESUPPORTによって、クラウドSQLがサポートされるかどうかが決まります。クラウドSQLを使用するには、これを1に設定します。
  • DATABASEUSERは、Session Recordingサーバーのコンピューターアカウントです。
  • AZUREUSERNAMEは、クラウドSQLの管理者名です。
  • AZUREPASSWORDは、クラウドSQL管理者のパスワードです。
  • /qは、サイレントモードを指定します。
  • /l*vスイッチにより詳細モードでログが記録されます。
  • yourinstallationlog は、セットアップログを作成する場所です。

Session Recordingサーバーを展開するためのマスターイメージを作成する

Session Recordingデータベースおよび管理者ログデータベースが既存の展開に存在する可能性があります。このような場合は、SessionRecordingAdministrationx64.msiを使用してSession Recording Administrationコンポーネントをインストールするときに、データベースチェックを省略できるようになりました。マスターイメージを作成することで、Session Recordingサーバーを他の多くのマシン上で簡単に作成できます。マスターイメージを使用してターゲットマシンにサーバーを展開後、各マシンでコマンドを実行して、既存のSession Recordingデータベースと管理者ログデータベースに接続します。マスターイメージのサポートにより展開が容易になり、人的エラーによって影響を受ける可能性が最小限に抑えられます。これは新規インストールにのみ適用され、次の手順で実行します:

  1. コマンドプロンプトを起動し、次のようなコマンドを実行します:

    msiexec /i "SessionRecordingAdministrationx64.msi" ADDLOCAL="SsRecServer,PolicyConsole,SsRecLogging,StorageDatabase" DATABASEINSTANCE="sqlnotexists" DATABASENAME="CitrixSessionRecording2" LOGGINGDATABASENAME="CitrixSessionRecordingLogging2" DATABASEUSER="localhost" /q /l*vx "c:\WithLogging.log" IGNOREDBCHECK="True"
    <!--NeedCopy-->
    

    このコマンドは、Session Recordingデータベースおよび管理者ログデータベースへの接続を構成およびテストせずに、Session Recording Administrationコンポーネントをインストールします。

    IGNOREDBCHECKパラメーターをTrueに設定し、DATABASEINSTANCEDATABASENAMELOGGINGDATABASENAMEでランダムな値を使用します。

  2. 操作しているマシン上にマスターイメージを作成します。

  3. Session Recordingサーバーを展開するために、マスターイメージを他のマシンに展開します。

  4. 各マシンで、次のようなコマンドを実行します:

    .\SsRecUtils.exe -modifydbconnectionpara DATABASEINSTANCE DATABASENAME LOGGINGDATABASENAME
    
    iisreset /noforce
    <!--NeedCopy-->
    

    このコマンドは、以前にインストールされたSession Recordingサーバーを既存のSession Recordingデータベースおよび管理者ログデータベースに接続します。

    SsRecUtils.exeファイルの配置先は、\Citrix\SessionRecording\Server\bin\です。必要に応じて、DATABASEINSTANCEDATABASENAME、およびLOGGINGDATABASENAMEパラメーターを設定します。

Session Recording Administrationコンポーネントのアンインストール時にデータベースを保持

KEEPDBTrueに設定すると、Session Recording Administrationコンポーネントのアンインストール時に次のコマンドでSession Recordingデータベースおよび管理者ログデータベースを保持します。

msiexec /x "SessionRecordingAdministrationx64.msi" KEEPDB="True"
<!--NeedCopy-->

Session Recording PlayerおよびWeb Playerのインストールを自動化する

たとえば、次のコマンドはそれぞれSession Recording PlayerとWeb Playerをインストールします。

msiexec /i "c:\SessionRecordingPlayer.msi" /q /l*\vx "yourinstallationlog"
<!--NeedCopy-->
msiexec /i "c:\SessionRecordingWebPlayer.msi" /q /l*vx "yourinstallationlog"
<!--NeedCopy-->

注:

SessionRecordingPlayer.msiファイルは\layout\image-full\x86\Session RecordingのCitrix Virtual Apps and Desktops ISOにあります。

SessionRecordingWebPlayer.msiファイルは\layout\image-full\x64\Session RecordingのCitrix Virtual Apps and Desktops ISOにあります。

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

  • /qは、サイレントモードを指定します。
  • /l*vスイッチにより詳細モードでログが記録されます。
  • yourinstallationlog は、セットアップログを作成する場所です。

Session Recording Agentのインストールを自動化する

たとえば、次のコマンドでは、Session Recording Agentをインストールし、インストール情報を取得するためにログファイルを作成します。

msiexec /i SessionRecordingAgentx64.msi /q /l*vx yourinstallationlog SESSIONRECORDINGSERVERNAME=yourservername
SESSIONRECORDINGBROKERPROTOCOL=yourbrokerprotocol SESSIONRECORDINGBROKERPORT=yourbrokerport
<!--NeedCopy-->

注:

SessionRecordingAgentx64.msiファイルは\layout\image-full\x64\Session RecordingのCitrix Virtual Apps and Desktops ISOにあります。

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

  • yourservernameは、Session RecordingサーバーをホストするマシンのNetBIOS名またはFQDNです。指定しない場合のデフォルト値はlocalhostです。
  • yourbrokerportは、Session Recording Brokerとの通信にSession Recording Agentで使用されるポートを表すHTTPまたはHTTPSです。指定しない場合のデフォルト値はHTTPSです。
  • yourbrokerportは、Session Recording Brokerとの通信にSession Recording Agentで使用されるポートを表す整数です。指定しない場合のデフォルト値は0で、選択したプロトコルのデフォルトのポート番号を使用するようSession Recording Agentに指示します。具体的には、HTTPでは80、HTTPSでは443です。
  • /qは、サイレントモードを指定します。
  • /l*vスイッチにより詳細モードでログが記録されます。
  • yourinstallationlog は、セットアップログを作成する場所です。

Session Recordingのアップグレード

新しいバージョンのマシンやサイトをセットアップせずに、一部の環境をアップグレードすることができます。Session Recording 7.15 LTSRの最新のCUおよび以降のバージョンからSession Recordingの最新リリースにアップグレードできます。

注:

Session Recording Administrationを7.6から7.13以降にアップグレードし、Session Recording Administrationで [変更] を選択して管理者ログサービス追加した場合、[管理者ログの構成] ページにSQL Serverインスタンスの名前が表示されません。[次へ] をクリックすると次のエラーメッセージが表示されます: 「データベース接続テストに失敗しました。正しいデータベースインスタンス名を入力してください。」回避策として、localhostユーザーの読み取り権限を次のSmartAuditorサーバーレジストリフォルダーに追加します:HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\SmartAuditor\Server

Technical Previewバージョンからはアップグレードできません。

要件、準備、および制限

  • Session Recordingコンポーネントのアップグレードは、コンポーネントをインストールしたマシンで、Session Recordingインストーラーのグラフィカルインターフェイスまたはコマンドラインインターフェイスを使用します。
  • アップグレードを開始する前に、SQL ServerインスタンスでCitrixSessionRecordingという名前のデータベースをバックアップします。これにより、データベースのアップグレード後に問題が発生した場合に元の状態に復元することができます。
  • Session Recordingコンポーネントをアップグレードするには、ドメインユーザーであることに加えて、そのマシンのローカル管理者である必要があります。
  • Session RecordingサーバーとSession Recordingデータベースが同じサーバーにインストールされていない場合、Session Recordingデータベースをアップグレードするには、データベースの役割権限が必要です。それ以外の場合、次のことができます:
    • データベース管理者に頼んで、アップグレードのためにsecurityadminおよびdbcreatorサーバー役割権限を割り当ててもらいます。アップグレードの完了後は、securityadminおよびdbcreatorサーバー役割権限は不要になり、安全に削除できます。
    • または、SessionRecordingAdministrationx64.msiファイルを使用してアップグレードします。msiのアップグレード中、securityadminおよびdbcreatorサーバー役割権限を持つデータベース管理者の資格情報を求めるダイアログボックスが表示されます。資格情報を正確に入力して、[OK] をクリックし、アップグレードを続行します。
  • 同時にすべてのSession Recording Agentをアップグレードしない場合は、Session Recording Agent 7.6.0以降を、最新リリースのSession Recordingサーバーとともに使用できます。ただし、一部の新機能やバグ修正は反映されない可能性があります。
  • Session Recordingサーバーのアップグレード中に開始されたセッションは録画されません。
  • デスクトップコンポジションリダイレクトモードとの互換性を維持するために、新規インストールまたはアップグレード後に[Session Recording Agentのプロパティ]の [グラフィック調整] オプションがデフォルトで有効になっています。このオプションは、新規インストールまたはアップグレード後に手動で無効にできます。
  • 管理者ログ機能は、この機能を使用できない以前のリリースからSession Recordingをアップグレードした後はインストールされません。この機能を追加するには、アップグレード後にインストールを修正します。
  • アップグレードプロセスの開始時にライブ録画セッションが実行されていた場合、録画を完了できる可能性はほとんどありません。
  • サイトが停止する場合に備えて影響を軽減するために、以下のアップグレードの順序を確認してください。

アップグレードの順序

  1. Session RecordingデータベースとSession Recordingサーバーが別々のサーバーにインストールされている場合、Session RecordingサーバーでSession Recordingストレージマネージャーサービスを手動で停止します。次に、まずSession Recordingデータベースをアップグレードします。
  2. インターネットインフォメーションサービス(IIS)マネージャーで、Session Recording Brokerが実行されていることを確認します。Session Recordingサーバーをアップグレードします。Session RecordingデータベースとSession Recordingサーバーが同じサーバーにインストールされている場合、Session Recordingデータベースもアップグレードされます。
  3. Session Recordingサーバーのアップグレードが完了すると、Session Recordingサービスは自動的にオンラインに戻ります。
  4. (マスターイメージの)Session Recording Agentをアップグレードします。
  5. Session Recordingサーバーと一緒に、またはSession Recordingサーバーの後に、Session Recordingポリシーコンソールをアップグレードします。
  6. Session Recording Playerをアップグレードします。

クラウドSQLデータベースサービスでのSession Recordingデータベースの展開

ここでは、Azure SQL Managed Instance、AWS RDS、Azure VM上のSQL Serverに、Session Recordingデータベースを展開する方法について説明します。

Azure SQL Managed InstanceまたはAWS RDSでのSession Recordingデータベースの展開

ヒント:

次のような単一のコマンドを実行して、Azure SQL Managed InstanceまたはAWS RDSにSession Recordingデータベースを展開することもできます。詳しくは、この記事の「インストールの自動化」セクションを参照してください。

msiexec /i "SessionRecordingAdministrationx64.msi" ADDLOCAL="SsRecServer,PolicyConsole,SsRecLogging,StorageDatabase" DATABASEINSTANCE="CloudSQL" DATABASENAME="CitrixSessionRecording" LOGGINGDATABASENAME="CitrixSessionRecordingLogging" AZURESQLSERVICESUPPORT="1" AZUREUSERNAME="CloudSQLAdminName" AZUREPASSWORD="CloudSQLAdminPassword" /q /l*vx "c:\WithLogging.log"
<!--NeedCopy-->
  1. Azure SQL Managed Instanceを作成するか、Amazon RDSコンソールからSQL Serverインスタンスを作成します。

  2. (Azure SQLの場合のみ)プロパティパネルに表示されるServerの文字列を記録しておきます。この文字列は、Session Recordingデータベースのインスタンス名です。例として、以下のスクリーンショットを参照してください。

    サーバー文字列の例

  3. (AWS RDSの場合のみ)エンドポイントポートの情報を記録します。これはデータベースのインスタンス名として、<エンドポイント, ポート>という形式で使用します。

    AWS RDSインスタンスの構成

  4. SessionRecordingAdministrationx64.msiを実行して、Session Recordingデータベースをインストールします。

    [クラウドSQLを有効にする] チェックボックスをオンにして、クラウドSQLの管理者名とパスワードを入力します。その他の必要な構成を行います。

    クラウドSQL管理者の資格情報を入力

    注: クラウドSQLの管理者パスワードを変更する場合は、Session Recordingサーバーのプロパティでパスワードを更新する必要があります。Session Recordingサーバーのプロパティを開くと、エラーメッセージが表示されます。[OK] をクリックして続行し、[クラウドDB] タブを選択します。次に、クラウドSQLの新しい管理者パスワードを入力します。Citrix Session Recording Analyticsサービス、Citrix Session Recordingストレージマネージャーサービス、およびIISサービスを再起動します。

    クラウドSQLの管理者パスワードを更新

クラウドSQL Managed Instanceへのオンプレミスデータベースの移行

  1. https://docs.microsoft.com/en-us/data-migration/またはhttps://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/migrate-an-on-premises-microsoft-sql-server-database-to-amazon-rds-for-sql-server.htmlに従って、オンプレミスデータベースを移行します。

  2. 移行後にSession Recordingを正しく機能させるには、Session RecordingサーバーでSsRecUtils.exeを実行します。

    C:\Program Files\Citrix\SessionRecording\Server\bin\SsRecUtils.exe -modifyazuredbconnectionpara {Database Instance} {Session Recording Database Name} {Session Recording Logging Database Name} {AzureAdminName}{AzureAdminPassword} iisreset /noforce

  3. Session Recordingサーバーで、Citrix Session Recording Analyticsサービス、Citrix Session Recordingストレージマネージャーサービス、およびIISサービスを再起動します。

Azure SQL Managed Instanceからオンプレミスデータベースへの実稼働データベースの移行

  1. https://docs.microsoft.com/en-us/data-migration/に従って、データベースを移行します。

  2. 移行後にSession Recordingを正しく機能させるには、Session RecordingサーバーでSsRecUtils.exeを実行します。

    C:\Program Files\Citrix\SessionRecording\Server\bin\SsRecUtils.exe -modifydbconnectionpara {Database Instance} {Session Recording Database Name} {Session Recording Logging Database Name} iisreset /noforce

  3. Session Recordingサーバーで、Citrix Session Recording Analyticsサービス、Citrix Session Recordingストレージマネージャーサービス、およびIISサービスを再起動します。

Azure VM上のSQL ServerでのSession Recordingデータベースの展開

Azure VM上のSQL ServerでSession Recordingデータベースを展開できます。

  1. Azure SQL VMを確認します。
  2. VMを構成し、Session Recordingコンポーネントをインストールするドメインに追加します。
  3. Session Recordingデータベースのインストール時に、VMのFQDNをインスタンス名として使用します。 注: インストールにSessionRecordingAdministrationx64.msiを使用している場合は、[クラウドSQLを有効にする] チェックボックスをオフにします。
  4. 手順に従ってインストールを完了します。

Session Recordingのアンインストール

サーバーやワークステーションからSession Recordingコンポーネントを削除するには、Windowsのコントロールパネルのプログラムのアンインストールまたは削除オプションを使用します。Session Recordingデータベースを削除するには、インストール時と同じSQL Serverの役割権限securityadminおよびdbcreatorが必要です。

セキュリティ上の理由により、コンポーネントがアンインストールされた後には管理者ログデータベースは削除されません。