インストール、セットアップ、アップグレードおよびアンインストール
インストールおよび構成する前に
StoreFrontをインストールして構成するには、次の手順に従います。
-
StoreFrontでCitrix Virtual Apps and Desktopsのリソースをユーザーに配信する場合は、ユーザーアカウントが属しているMicrosoft Active Directoryドメイン、またはそのドメインと信頼関係があるドメインのいずれかにStoreFrontサーバーが属していることを確認してください。
重要:
- 単一サーバー展開では、ドメインに参加していないサーバーにStoreFrontをインストールできます。
- StoreFrontをドメインコントローラー上にインストールすることはできません。
-
StoreFrontを使用するにはMicrosoft .NET Frameworkが必要です。このフレームワークは、Microsoft社のWebサイトからダウンロードできます。Microsoft .NETがインストールされていることを確認してから、StoreFrontをインストールしてください。
-
複数サーバーのStoreFront展開環境を構成する計画の場合は、必要に応じてStoreFrontサーバーの負荷分散環境をセットアップします。
Citrix ADCを使用して負荷分散を行うには、StoreFrontサーバーのプロキシとなる仮想サーバーを定義します。Citrix ADCを使用した負荷分散の構成について詳しくは、「Citrixによる負荷分散」を参照してください。
-
Citrix ADCアプライアンスで負荷分散機能が有効になっていることを確認します。
-
必要に応じて、各StoreFrontサーバーについて個別のHTTPまたはSSL負荷分散サービス(StoreFrontモニター)を作成します。
-
StoreFrontに転送されるHTTP要求のX-Forwarded-Forヘッダーに、クライアントのIPアドレスが挿入されるようにサービスを構成して、グローバルポリシーの設定を上書きします。
StoreFrontでは、ユーザーのリソースへの接続を確立する時に、そのユーザーのIPアドレスが必要です。
-
仮想サーバーを作成し、これらのサービスを仮想サーバーにバインドします。
-
仮想サーバーで、 クライアントIPまたはCookie挿入のうちいずれかの方法を使用して永続性を構成します。ユーザーが必要な時間だけログオンし続けていられるように、Time To Live(TTL)を十分に設定します。
パーシステンス設定により、最初のユーザー接続だけが負荷分散の対象になり、同じユーザーのそれ以降の要求は同じStoreFrontサーバーに割り当てられるようになります。
-
-
必要に応じて、以下の機能を有効にします。
- [.NET Frameworkの機能]>[.NET Framework]、[ASP.NET]
必要に応じて、StoreFrontサーバーで以下の役割と依存関係を有効にします。
-
[Webサーバー(IIS)]>[Webサーバー]>[HTTP共通機能]>[既定のドキュメント]、[HTTPエラー]、[静的コンテンツ]、[HTTPリダイレクト]
-
[Webサーバー(IIS)]>[Webサーバー]>[健全性と診断]>[HTTPログ]
-
[Webサーバー(IIS)]>[Webサーバー]>[セキュリティ]>[要求のフィルタリング]、[Windows認証]
StoreFrontのインストール時に、これらの機能や役割が有効になっているかどうかが検証されます。
-
サーバーをサーバーグループに含める場合は、StoreFrontのインストール場所設定とIIS Webサイト設定の両方で、物理パスおよびサイトIDを一致させる必要があります。
-
StoreFrontとユーザーデバイス間の通信をHTTPSで保護する場合は、Microsoft IIS(インターネットインフォメーションサービス)でHTTPSを構成します。
スマートカード認証を使用する場合はHTTPSが必要です。デフォルトでは、Citrix Workspaceアプリはストアへの接続にHTTPSを必要とします。StoreFrontでHTTPSホストベースURLを使用できるようにIISを構成するには、デフォルトのWebサイトへのHTTPSバインドを作成し、それをStoreFrontサーバー証明書にリンクします。HTTPSバインドをIISサイトに追加する方法について詳しくは、「StoreFront展開環境のセキュリティ」を参照してください。
-
ファイアウォールやほかのネットワークデバイスで、社内ネットワーク内外からのTCPポート80または443へのアクセスが許可されることを確認します。また、内部ネットワーク上のファイアウォールやほかのネットワークデバイスで、すべての未割り当てTCPポートへのトラフィックがブロックされないことを確認します。
StoreFrontのインストール時にWindowsファイアウォールで構成される規則により、すべての未割り当てTCPポートからランダムに選択されるポートを介したStoreFrontの実行可能ファイルへのアクセスが有効になります。このポートは、サーバーグループ内のStoreFrontサーバー間の通信で使用されます。
-
複数のインターネットインフォメーションサービス(IIS)Webサイトを使用する場合、PowerShell SDKを使用して各IIS WebサイトにStoreFront展開環境を作成します。詳しくは、「複数のインターネットインフォメーションサービス(IIS)Webサイト」を参照してください。
注:
StoreFrontは、複数のサイトを検出すると管理コンソールを無効にし、メッセージを表示します。
-
Citrix StoreFront管理コンソールを使用して、サーバーを構成します。
StoreFrontのインストール
重要
StoreFrontインストール時にエラーやデータの損失が発生するのを回避するために、すべてのアプリケーションが閉じられていて、ターゲットシステム上で他のタスクや操作が実行されていないことを確認します。
-
ダウンロードページからインストーラーをダウンロードします。
-
ローカルの管理者権限を持つアカウントでStoreFrontサーバーにログオンします。
-
必要なMicrosoft .NET Frameworkがサーバー上にインストールされていることを確認します。
-
CitrixStoreFront-x64.exeを検索し、管理者として実行します。
-
ライセンス契約書を読み、同意することを選択して、[次へ] をクリックします。
-
[必須条件の確認]ページが開いた場合は、[次へ] をクリックします。
-
[インストールの開始]ページで、インストール対象の必須条件およびStoreFrontコンポーネントを確認して、[インストール] をクリックします。
コンポーネントがインストールされる前に、サーバー上の以下の役割が必要に応じて自動的に有効になります。
-
[Webサーバー(IIS)]>[Webサーバー]>[HTTP共通機能]>[既定のドキュメント]、[HTTPエラー]、[静的コンテンツ]、[HTTPリダイレクト]
-
[Webサーバー(IIS)]>[Webサーバー]>[健全性と診断]>[HTTPログ]
-
[Webサーバー(IIS)]>[Webサーバー]>[セキュリティ]>[要求のフィルタリング]、[Windows認証]
-
[Webサーバー(IIS)]>[管理ツール]>[IIS管理コンソール]、[IIS管理スクリプトおよびツール]
以下の機能が必要に応じて自動的に有効になります。
- [.NET Frameworkの機能]>[.NET Framework]、[ASP.NET]
-
-
インストールが完了したら、[完了]をクリックします。Citrix StoreFront管理コンソールが自動的に起動します。また、[起動]画面からStoreFrontを開くこともできます。
-
Citrix StoreFront管理コンソールで、[新しい展開環境の作成] をクリックします。
- [ベースURL] ボックスでStoreFrontサーバーのURLを指定します。
- [ストア名] ページで、ストアの名前を指定して、[次へ] をクリックします。
[Delivery Controllers] ページで、ストアで使用できるようにするリソースを提供するCitrix Virtual Apps and Desktops展開環境の詳細を入力します。
-
[トランスポートの種類] および [ポート] を設定し(HTTPとポート80、またはHTTPSとポート443など)、[OK] をクリックします。
-
[リモートアクセス] ページで[なし]を選択します。Citrix Gatewayを使用している場合は、[VPNトンネルなし]を選択し、ゲートウェイ詳細を入力します。
-
[リモートアクセス] ページで[作成]を選択します。ストアが作成されたら、[完了] をクリックします。
ユーザーはCitrix Receiver for Webサイトを介してストアにアクセスできるようになりました。これによりユーザーは、Webページからデスクトップやアプリケーションにアクセスできます。
新しいストアのCitrix Receiver for WebサイトのURLが表示されます。例:example.net/Citrix/StoreWeb/
。ログオンして、Citrix Workspaceアプリの新しいユーザーインターフェイスにアクセスします。
コマンドプロンプトからStoreFrontをインストールするには
-
ローカルの管理者権限を持つアカウントでStoreFrontサーバーにログオンします。
-
StoreFrontをインストールする前に、StoreFrontのインストール要件が満たされていることを確認します。「インストールおよび構成する前に」を参照してください。
-
インストールメディアの内容を参照するかパッケージをダウンロードして、CitrixStoreFront-x64.exeをサーバー上の任意のフォルダーに一時的にコピーします。
-
コマンドプロンプトでインストールファイルが含まれるフォルダーに移動して、次のコマンドを実行します:
CitrixStoreFront-x64.exe [-silent] [-INSTALLDIR installationlocation] [-WINDOWS_CLIENT filelocation\filename.exe] [-MAC_CLIENT filelocation\filename.dmg] <!--NeedCopy-->
StoreFrontとその前提条件のサイレントインストールを実行するには、-silent引数を使用します。StoreFrontは、デフォルトでC:\Program Files\Citrix\Receiver StoreFrontにインストールされます。ただし、-INSTALLDIR引数を使用して別のインストール場所を指定することもできます。installationlocationにはStoreFrontのインストール先のフォルダーを指定します。サーバーをサーバーグループに含める場合は、StoreFrontのインストール場所設定とIIS Webサイト設定の両方で、物理パスおよびサイトIDを一致させる必要があります。
デフォルトでは、Citrix Receiver for WebサイトがWindowsまたはMac OS XデバイスのCitrix Workspaceアプリを検出できない場合、プラットフォームに適したCitrix WorkspaceアプリをCitrixのWebサイトからダウンロードしてインストールするようメッセージが表示されます。この動作を変更して、Citrix WorkspaceアプリのインストールファイルをStoreFrontサーバーからダウンロードできるように構成することもできます。詳しくは、「ユーザーに対するリソースの表示方式の構成」を参照してください。
この構成を変更する場合は、-WINDOWS_CLIENTおよび -MAC_CLIENT 引数を指定して、Citrix Receiver for WindowsまたはWindows向けCitrix Workspaceアプリ、およびCitrix Receiver for MacまたはMac向けCitrix WorkspaceアプリのインストールファイルをそれぞれStoreFront展開の適切な場所にコピーします。ここでfilelocationはコピー対象のインストールファイルが格納されているフォルダーを示し、filenameはインストールファイルの名前を示します。Citrix Receiver for WindowsまたはWindows向けCitrix Workspaceアプリ、Citrix Receiver for MacまたはMac向けCitrix Workspaceアプリのインストールファイルは、Citrix Virtual Apps and Desktopsのインストールメディアに含まれています。
CEIP
Citrixのカスタマーエクスペリエンス向上プログラム(CEIP)に参加すると、匿名の統計および使用状況情報が、Citrix製品の品質およびパフォーマンスを向上させる目的で送信されます。
StoreFrontをインストールするとCEIPに自動的に登録されるようになりました。StoreFrontのインストールからおよそ7日後に、初回データアップロードが行われます。このデフォルトはレジストリ設定で変更できます。StoreFrontのインストールの前にレジストリ設定を変更すると、その値が使用されます。StoreFrontのアップグレードの前にレジストリ設定を変更すると、その値が使用されます。
警告:
レジストリエディターの使用を誤ると、深刻な問題が発生する可能性があり、オペレーティングシステムの再インストールが必要になる場合もあります。レジストリエディターの誤用による障害に対して、シトリックスでは一切責任を負いません。レジストリエディターは、お客様の責任と判断の範囲でご使用ください。また、レジストリファイルのバックアップを作成してから、レジストリを編集してください。
分析の自動アップロードを制御するレジストリ設定(デフォルト= 1):
Location: HKLM:\Software\Citrix\Telemetry\CEIP
Name: Enabled
Type: REG_DWORD
Value: 0 = disabled, 1 = enabled
<!--NeedCopy-->
デフォルトで、Enabledプロパティはレジストリに表示されません。未指定のままの場合、自動アップロード機能は有効です。
PowerShellを使用する場合、次のコマンドレットはCEIPへの登録を無効にします。
New-ItemProperty -Path HKLM:\SOFTWARE\Citrix\Telemetry\CEIP -Name Enabled -PropertyType DWORD -Value 0
注:
このレジストリ設定では、同一サーバー上にあるすべてのコンポーネントの匿名の統計情報と使用状況情報の自動アップロードを制御します。たとえば、Delivery Controllerと同じサーバー上にStoreFrontをインストールし、レジストリ設定でCEIPへの参加を無効にした場合、両方のコンポーネントでCEIPへの参加が無効になります。
StoreFrontで収集されるCEIPデータ
次の表に、収集される匿名情報の種類の例を示します。データでは、お客様を特定するすべての詳細は含まれません。
データ | 説明 |
---|---|
StoreFrontのバージョン | インストールされているStoreFrontのバージョンを示す文字列。例:3.8.0.0。 |
ストア数 | 展開環境に含まれるストア数を表すカウンター。 |
サーバーグループ内のサーバー数 | サーバーグループに含まれるサーバー数を表すカウンター。 |
ストアごとのDelivery Controller数 | 展開環境内の各ストアで利用可能なDelivery Controllerの数を表す数値の一覧。 |
HTTPS有効 | 展開でHTTPSが有効にされているかどうか(TrueまたはFalse)を示す文字列。 |
Citrix Receiver for WebのHTML 5設定 | 各Receiver for WebサイトのHTML5 Receiver設定(Always、Fallback、またはOff)を示す文字列の一覧。 |
Citrix Receiver/Citrix Workspaceアプリのワークスペースコントロールの有効化 | 各Web Receiverで「ワークスペースコントロール」が有効にされているかどうか(TrueまたはFalse)を示すブール値の一覧。 |
ストアのリモートアクセスの有効化 | 展開内の各ストアで「リモートアクセス」が有効にされているかどうか(ENABLEDまたはDISABLED)を示す文字列の一覧。 |
ゲートウェイ数 | 展開環境で構成されているCitrix Gatewayの数を表すカウンター。 |
Citrix Analytics Service
Citrix Cloudをご利用中でオンプレミスのStoreFront展開環境をお持ちの場合、データがCitrix CloudのCitrix Analytics Serviceに送信されるようにStoreFrontを構成できます。構成後は、Citrix Workspaceアプリ(およびHTML5対応WebブラウザーからアクセスするCitrix Receiver for Webサイト)から送信されたユーザーイベントをCitrix Analyticsが処理します。Citrix Analyticsは、ユーザー、アプリケーション、エンドポイント、ネットワーク、データに関する測定値を集約して、ユーザーの行動に関する包括的な分析情報を提供します。Citrix Analyticsドキュメントでこの機能について確認するには、「StoreFrontを使用したVirtual Apps and Desktopsサイトへのオンボード」を参照してください。
この機能を構成するには、以下を実行します:
- Citrix Analyticsから構成ファイルをダウンロードします。
- Citrix AnalyticsデータをPowerShellを使用してオンプレミスのStoreFront展開にインポートします。
StoreFrontの構成後は、Citrix Analytics Serviceが要求した時にCitrix WorkspaceアプリがStoreFrontのストアからデータを送信できます。
重要:
この機能が正しく動作し、Citrix Cloudサービスを消費するには、使用中のStoreFront展開がポート443の次のアドレスと通信できるようにする必要があります:
https://*.cloud.com
https://*.citrixdata.com
Citrix Analyticsから構成ファイルをダウンロードする
重要:
初期構成には、機密情報を含む構成ファイルが必要です。ダウンロード後はファイルを安全に保管してください。このファイルを組織外の人と共有しないでください。構成後、このファイルは削除できます。別のマシンに構成を再適用する必要がある場合は、Citrix Analytics Service管理コンソールからファイルを再度ダウンロードできます。
- 管理者アカウントでCitrix Cloud(
https://citrix.cloud.com/
)にログオンします。 - Citrix Cloudの顧客を選択します。
-
[管理] をクリックして、Citrix Analytics Service管理コンソールを開きます。
- Citrix Analytics Service管理コンソールで、[Settings]>[Data Sources] を選択します。
- Virtual App and Desktopsカードで、(⋮)メニューアイコン、[Connect StoreFront deployment] の順に選択します。
- [Connect StoreFront Deployment]ページで [Download File] を選択してStoreFrontConfigurationFile.jsonファイルをダウロードします。
構成ファイルの例
{
"customerId": "<yourcloudcustomer>",
"enablementService": " https://api.analytics.cloud.com /casvc/<yourcloudcustomer>/ctxana/v1/cas/<yourcloudcustomer>/XenDesktop/<deviceid>/dsconfigdata",
"cwsServiceKey": "PFJTPn…….. T4=",
"enablementServiceStatus": " https://api.analytics.cloud.com /casvc/<yourcloudcustomer>/ctxana/v1/cas/storefront/config",
"instanceId": "d98f21d0-56e0-11e9-ba52-5136d90862fe",
"name": "CASSingleTenant"
}
<!--NeedCopy-->
各項目の意味は次のとおりです。
customerIdは、最新のCitrix Cloudの顧客用の一意のIDです。
cwsServiceKeyは、最新のCitrix Cloudの顧客を特定する一意のキーです。
instanceIDは、Citrix WorkspaceアプリからCitrix Analyticsに対して送信された要求に署名(セキュリティ保護済み)するために生成されたIDです。複数のStoreFrontサーバーまたはサーバーグループをCitrix Cloudに登録すると、それぞれに一意のinstanceIDが割り当てられます。
Citrix AnalyticsデータをStoreFront展開にインポートする
- StoreFrontConfigurationFile.jsonファイルをオンプレミスのStoreFrontサーバー(またはStoreFrontサーバーグループのいずれかのサーバー)の適切なフォルダーにコピーします。以下のコマンドは、ファイルがデスクトップに保存されている場合です。
- PowerShell ISEを開き、[管理者として実行] を選択します。
-
次のコマンドを実行します:
Import-STFCasConfiguration -Path "$Env:UserProfile\Desktop\StoreFrontConfigurationFile.json" Get-STFCasConfiguration <!--NeedCopy-->
-
このコマンドはインポートされたデータのコピーを返し、それをPowerShellコンソールに表示します。
注:
Windows Server 2012 R2にインストールされているオンプレミスStoreFrontサーバーでは、C++ランタイムソフトウェアコンポーネントを手動でインストールしてCASに登録できるようにする必要があります。Citrix Virtual Apps and Desktopsのインストール中にStoreFrontがインストールされる場合、CVADメタインストーラーがC++ランタイムコンポーネントをインストールするため、この手順は不要です。C++ランタイムのないCitrixStoreFront-x64.exeメタインストーラーでStoreFrontがインストールされている場合、CAS構成ファイルのインポート後、Citrix Cloudへの登録に失敗する場合があります。
Citrix AnalyticsのデータをStoreFrontサーバーグループに伝達する
StoreFrontサーバーグループでこれらの操作を実行している場合は、インポートされたCitrix Analyticsデータをサーバーグループの全メンバーに伝達する必要があります。この手順は、単一のStoreFrontサーバー展開では必要ありません。
データを伝達するには、以下のいずれかの方法を使用します:
- StoreFront管理コンソールを使用します。
- PowerShellコマンドレットPublish-STFServerGroupConfigurationを使用します。
StoreFrontサーバーグループIDを確認する
Citrix Analytics Serviceに正常に登録されたかどうかを確認するには、PowerShellを使用して展開のServerGroupIDを検出します。
- StoreFrontサーバー、またはサーバーグループ内の1台のStoreFrontサーバーにログオンします。
- PowerShell ISEを開き、[管理者として実行] を選択します。
-
次のコマンドを実行します:
$WebConfigPath = "C:\Program Files\Citrix\Receiver StoreFront\Framework\FrameworkData\Framework.xml" $XMLObject = (Get-Content $WebConfigPath) -as [Xml] $XMLObject.framework.properties.property <!--NeedCopy-->
たとえば、これらのコマンドは次のような出力結果を生成します:
name value ---- ----- ClusterId 8b8ff5c8-44ba-46e4-87f0-2df8cff31432 HostBaseUrl https://storefront.example.com/ SelectedIISWebSiteId 1 AdminConsoleOperationMode Full <!--NeedCopy-->
StoreFrontからCitrix Analyticsへのデータの送信を停止する
- PowerShell ISEを開き、[管理者として実行] を選択します。
-
次のコマンドを実行します:
Remove-STFCasConfiguration
Get-STFCasConfiguration
以前にインポートされたCitrix Analyticsデータの削除に成功した場合、Get-STFCasConfigurationは値を返しません。
-
StoreFrontサーバーグループでこれらの操作を実行している場合は、変更を伝達し、インポートされたCitrix Analyticsデータをサーバーグループの全メンバーから削除する必要があります。サーバーグループ内の1台のサーバーで、次のコマンドを実行します:
Publish-STFServerGroupConfiguration
-
他のサーバーグループメンバーで次のコマンドを実行して、Citrix Analytics構成がグループ内のすべてのサーバーから正常に削除されたことを確認します:
Get-STFCasConfiguration
- 管理者アカウントでCitrix Cloud(
https://citrix.cloud.com/
)にログオンします。 - Citrix Cloudの顧客を選択します。
- [管理] をクリックして、Citrix Analytics Service管理コンソールを開きます。
- Citrix Analytics Service管理コンソールで、[Settings]>[Data Sources] を選択します。
-
Virtual App and Desktopsカードで、StoreFrontの展開数を選択します:
- ホストベースURLおよびServerGroupIDを参照して削除対象のStoreFront展開を特定します。
-
(⋮)メニューで、[Remove StoreFront deployment from Analytics] を選択します。
注:
サーバー側で構成を削除する一方、Citrix Analyticsからは削除しない場合、StoreFront展開のエントリはCitrix Analyticsに残るものの、StoreFrontからはデータを受信しません。Citrix Analyticsからのみ構成を削除する場合、StoreFront展開のエントリは次回のアプリプールの再利用時(IISのリセット時、または自動で24時間ごと)に再度追加されます。
Webプロキシを使用してCitrix Cloudに接続し、Citrix Analyticsに登録するようにStoreFrontを構成する
StoreFrontがWebプロキシの背後のホストWebサーバーに配置されている場合、Citrix Analyticsへの登録は失敗します。StoreFront管理者がCitrix展開でHTTPプロキシを使用する場合、インターネットへのStoreFrontトラフィックはクラウド内のCitrix Analyticsに到達する前にWebプロキシを通過する必要があります。StoreFrontは、ホストOSのプロキシ設定を自動的に使用しません。Webプロキシを介してトラフィックを送信するようストアに指示するには、さらに構成が必要です。ストアのweb.configファイルに新しいセクションを追加して<system.net>
プロキシ設定を構成できます。Citrix Analyticsへのデータ送信に使用されるStoreFrontサーバー上のすべてのストアに対してこれを実行します。
方法1:Powershellで1つまたは複数のストアでプロキシ構成を設定する(推奨)
PowershellスクリプトConfig-StoreProxy.ps1を実行すると、1つまたは複数のストアでこのプロセスを自動化し、<system.net>
を構成する有効なXMLが自動的に挿入されます。また、このスクリプトは現在のユーザーのデスクトップにストアのweb.configファイルのバックアップを作成し、必要な場合変更されていないweb.configファイルを復元できるようにします。
注:
スクリプトを複数回実行すると、複数の
<system.net
>XMLのコピーが追加されます。ストアごとに<system.net>
のエントリは1つのみにする必要があります。複数のコピーを追加すると、ストアのプロキシ構成が正しく機能しなくなります。
-
PowerShell ISEを開き、[管理者として実行] を選択します。
-
$Stores = @("Store","Store2")
を設定してWebプロキシで構成するストアを含めます。 -
次のいずれかを指定します:
- IPアドレス、または
- WebプロキシのFQDN
-
次のPowerShellを実行します:
$Stores = @("Store","Store2") $ProxyIP = "10.0.0.1" $ProxyFQDN = "proxyserver.example.com" $ProxyPort = 8888 # Set this for every Store using Stores array function Set-StoreProxyServer() # Tested with both IP and FQDN { [CmdletBinding()] param([Parameter(Mandatory=$true,ParameterSetName="ProxyIP")][Parameter(Mandatory=$true,ParameterSetName="ProxyFQDN")][array]$Stores, [Parameter(Mandatory=$true,ParameterSetName="ProxyIP")][string]$ProxyIP, [Parameter(Mandatory=$true,ParameterSetName="ProxyFQDN")][string]$ProxyFQDN, [Parameter(Mandatory=$true,ParameterSetName="ProxyIP")][Parameter(Mandatory=$true,ParameterSetName="ProxyFQDN")][int]$ProxyPort) foreach($Store in $Stores) { Write-Host "Backing up the Store web.config file for store $Store before making changes..." -ForegroundColor "Yellow" Write-Host "`n" if(!(Test-Path "$env:UserProfile\desktop$Store")) { Write-Host "Creating $env:UserProfile\desktop$Store\ directory for backup..." -ForegroundColor "Yellow" New-Item -Path "$env:UserProfile\desktop$Store" -ItemType "Directory" | Out-Null Write-Host "`n" } Write-Host "Copying c:\inetpub\wwwroot\Citrix$Store\web.config to $env:UserProfile\desktop$Store..." -ForegroundColor "Yellow" Copy-Item -Path "c:\inetpub\wwwroot\Citrix$Store\web.config" -Destination "$env:UserProfile\desktop$Store" -Force | Out-Null if(Test-Path "$env:UserProfile\desktop$Store\web.config") { Write-Host "$env:UserProfile\desktop$Store\web.config file backed up" -ForegroundColor "Green" } else { Write-Host "$env:UserProfile\desktop$Store\web.config file NOT found!" -ForegroundColor "Red" } Write-Host "`n" Write-Host "Setting the proxy server to $ProxyAddress for Store $Store..." -ForegroundColor "Yellow" Write-Host "`n" $StoreConfigPath = "c:\inetpub\wwwroot\Citrix$Store\web.config" $XMLObject = (Get-Content $StoreConfigPath) -as [Xml] if([string]::IsNullOrEmpty($ProxyFQDN)) { $ProxyServer = ("HTTP://$ProxyIP"+":"+$ProxyPort) } else { $ProxyServer = ("HTTP://$ProxyFQDN"+":"+$ProxyPort) } $XMLObject = (Get-Content $StoreConfigPath) -as [Xml] # Create 3 elements $SystemNet = $XMLObject.CreateNode("element","system.net","") $DefaultProxy = $XMLObject.CreateNode("element","defaultProxy","") $Proxy = $XMLObject.CreateNode("element","proxy","") $Proxy.SetAttribute("proxyaddress","$ProxyServer") $Proxy.SetAttribute("bypassonlocal","true") # Move back up the XML tree appending new child items in reverse order $DefaultProxy.AppendChild($Proxy) $SystemNet.AppendChild($DefaultProxy) $XMLObject.configuration.AppendChild($SystemNet) # Save the modified XML document to disk $XMLObject.Save($StoreConfigPath) Write-Host "Getting the proxy configuration for c:\inetpub\wwwroot\Citrix$Store..." -ForegroundColor "Yellow" $XMLObject = (Get-Content $StoreConfigPath) -as [Xml] $ConfiguredProxyServer = $XMLObject.configuration.'system.net'.defaultProxy.proxy.proxyaddress | Out-Null Write-Host ("Configured proxy server for Store $Store"+": "+ $ConfiguredProxyServer) -ForegroundColor "Green" Write-Host "`n" } Write-Host "Restarting IIS..." -ForegroundColor "Yellow" IISReset /RESTART } Set-StoreProxyServer -Stores $Stores -ProxyFQDN $ProxyFQDN -ProxyPort $ProxyPort # OR Set-StoreProxyServer -Stores $Stores -ProxyIP $ProxyIP -ProxyPort $ProxyPort <!--NeedCopy-->
-
C:\inetpub\wwwroot\Citrix< Store>\web.configでweb.configファイルの最後に新しい
<system.net>
セクションが含まれていることを確認します。</dependentAssembly> </assemblyBinding> </runtime> <system.net> <defaultProxy> <proxy proxyaddress="HTTP://proxyserver.example.com:8888" bypassonlocal="true" /> </defaultProxy> </system.net> </configuration> <!--NeedCopy-->
-
「Citrix AnalyticsデータをStoreFront展開にインポートする」の説明に従って、Citrix Analyticsデータをインポートします。
方法2:手動で<system.net>
セクションをストアのweb.configファイルに追加する
これは、Citrix Analyticsにデータを送信するために使用されるStoreFrontサーバー上のすべてのストアに対して実行する必要があります。
-
ストアのweb.configファイルのバックアップを作成し、C:\inetpub\wwwroot\Citrix< Store>\web.config以外の別の場所にコピーします。
-
FQDNとポート番号の組み合わせかIPとポート番号の組み合わせを使用して、以下のXMLでプロキシ設定を編集します。
たとえば、FQDNとポート番号の組み合わせでは、以下のような
<system.net>
要素を使用します:<system.net> <defaultProxy> <proxy proxyaddress="HTTP://proxyserver.example.com:8888" bypassonlocal="true" /> </defaultProxy> </system.net> <!--NeedCopy-->
たとえば、IPとポート番号の組み合わせでは、以下のような
<system.net>
要素を使用します:<system.net> <defaultProxy> <proxy proxyaddress="HTTP://10.0.0.1:8888" bypassonlocal="true" /> </defaultProxy> </system.net> <!--NeedCopy-->
-
ストアのweb.configファイルの最後に、以下のように適切な
<system.net>
要素を挿入します:<runtime> <gcServer enabled="true" /> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="System.Web.MVC" publicKeyToken="31BF3856AD364E35" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" /> </dependentAssembly> </assemblyBinding> </runtime> Insert the <system.net> element here </configuration> <!--NeedCopy-->
-
「Citrix AnalyticsデータをStoreFront展開にインポートする」の説明に従って、Citrix Analyticsデータをインポートします。
StoreFrontのアップグレード
警告:
StoreFront 1912にアップグレードすると、展開内のデスクトップアプライアンスサイトは自動的に削除されます。デスクトップアプライアンスサイトを保持する必要がある場合は、アップグレードしないでください。代わりに、Citrixではドメイン不参加のユースケースでは「Citrix WorkspaceアプリDesktop Lock」を使用することをお勧めします。
アップグレードする場合、StoreFront構成が保存されユーザーのアプリケーションサブスクリプションデータはそのまま保持されるため、すべてのアプリケーションのサブスクリプションを再度実行する必要はありません。一方、StoreFrontのアンインストールはStoreFrontおよび関連サービス、サイト、アプリケーションサブスクリプションデータ(スタンドアロンサーバーの場合)、関連構成を削除します。
ヒント
- StoreFrontが動作するサーバー上のオペレーティングシステムをアップグレードすることはサポートされていません。Citrixでは新しくインストールしたオペレーティングシステムにStoreFrontをインストールすることをお勧めします。
- 製品終了(EOL)になった古いStoreFrontの最新リリースから最近の最新リリースへのアップグレードはサポートされていません。詳しくは、CTX200356を参照してください。
- StoreFrontでは、複数の製品バージョンが混在する複数サーバーの展開環境がサポートされないため、サーバーグループ内のすべてのサーバーを同じバージョンにアップグレードしてから、ユーザーが展開環境にアクセスできるようにしてください。
- StoreFrontは、異なるサーバーOSを含む複数のサーバー展開環境をサポートしていないため、サーバーグループ内のすべてのサーバーは同じWindows Server OS上で実行されている必要があります。
- 複数サーバー展開環境では、同時アップグレードはサポートされません。各サーバーを順番にアップグレードする必要があります。
- 従来のユーザーエクスペリエンスを使用しているすべてのストアは、このバージョンのStoreFrontにアップグレードすると、統合エクスペリエンスを使用するように更新されます。「統合ユーザーエクスペリエンス」で説明されている、アップグレードによって導入される新しいエクスペリエンスについてユーザーに周知することをお勧めします。統合エクスペリエンスがカスタマイズされている場合、このバージョンのStoreFrontにアップグレード後もカスタマイズした内容は保持されます。カスタマイズした外観が新しい統合エクスペリエンスに最適か確認してください。
- StoreFrontのアップグレードを実行する前に、アップグレード前チェックを実行します。アップグレード前チェックが失敗した場合、アップグレードは開始されず、エラーに関する通知が表示されます。StoreFrontのインストールは変更されません。エラーの原因を修復してから、アップグレードに戻ります。
- StoreFrontのアップグレード自体が失敗すると、既存のStoreFrontのインストールで初期構成が失われる可能性があります。StoreFrontのインストールを機能する状態に復元してから、アップグレードを再度実行してください。StoreFrontを機能する状態に復元するには、次の方法を検討してください:
- アップグレード前に作成した仮想マシンスナップショットを復元する、
- アップグレード前にエクスポートしたStoreFront構成をインポートする(「StoreFront構成のエクスポートとインポート」を参照)、
- 「StoreFrontのアップグレードの問題に関するトラブルシューティング」のトラブルシューティング方法を実行する。
- Citrix Virtual Apps and Desktops MetainstallerでStoreFrontのアップグレードが失敗した場合、ダイアログで報告され関連するエラーログへのリンクが記載されます。
アップグレードの準備
アップグレードを開始する前に、アップグレードの失敗を防ぐために次の手順の実行をお勧めします:
- アップグレード前にバックアップを計画します。
- default.icaやusernamepassword.tfrmなど、
C:\inetpub\wwwroot\Citrix\<StoreName>\App_Data
のファイルを変更した場合は、ストアごとにバックアップを作成します。アップグレード後はそれらを復元して、変更内容を元に戻すことができます。 - StoreFrontサーバー上のすべてのアプリケーションを終了します。
- StoreFront管理コンソールを閉じます。
- すべてのコマンドラインおよびPowerShell画面を終了します。
- すべてのStoreFront関連のフォルダー(C:\inetpub\wwwroot\Citrix\Store、C:\inetpub\wwwroot\Citrix\StoreWebなど)を閉じます。これにより、Windowsエクスプローラーがフォルダーに排他的ロックをかけることを防ぎます。
- サーバーをアップグレードする前にサーバーを再起動して、StoreFrontのファイルまたはフォルダーに排他的ロックかかってないことを確認します(Windowsエクスプローラーのすべてのインスタンスを閉じるなど、エクスプローラープロセスを再起動するだけでは十分ではありません)。
- サーバー上の他のプログラムを起動せずに、すぐにアップグレードを実行します。
- 他のStoreFrontが実行中ではなく、最低限の他のアプリケーションがある管理者アカウントを使用して、サーバーをアップグレードします。
スタンドアロンのStoreFrontサーバーのアップグレード
-
ユーザーをStoreFront展開環境から切断し、ユーザーがアップグレード中にサーバーにアクセスできないようにします。これにより、アップグレード時にインストーラーがすべてのStoreFrontファイルに確実にアクセスできるようになります。インストーラーがファイルにアクセスできない場合、それらのファイルを置き換えることができないため、アップグレードに失敗して既存のStoreFront構成が削除されます。
- 仮想マシンスナップショットを作成してサーバーのバックアップを作成します。
-
既存のStoreFront構成をエクスポートします(推奨)。
- このバージョンのStoreFront用のインストールファイルを実行します。
StoreFrontサーバーグループをアップグレードするには
StoreFrontサーバーグループのアップグレードでは、いずれかのサーバーを使用して他のサーバーをグループから削除します。削除されたサーバーは、グループに関連する構成を保持しているため、新しいサーバーグループに参加できなくなります。新しいサーバーグループを構築するために再利用する前に、またはスタンドアロンのStoreFrontサーバーとして再利用する前に、削除されたサーバーを出荷時のデフォルト設定にリセットするか、またはStoreFrontに再インストールする必要があります。
サーバーグループをアップグレードする前に、以下を実行します:
- 仮想マシンスナップショットを作成してグループのすべてのサーバーのバックアップを作成します。これにより、アップグレードが計画どおりに行われない場合は、機能している3ノードのサーバーグループに簡単に戻すことができます。
- 既存のStoreFront構成をエクスポートします(推奨)。1台のサーバーからサーバーグループ構成のみをエクスポートします。サーバー間ですべての変更を伝達していることを前提としているため、サーバーグループ内のすべてのサーバーは同一コピーの構成を維持します。このバックアップにより、簡単に新しいサーバーグループを構築できます。
例1:スケジュールされたメンテナンスダウンタイム中に3ノードのStoreFrontサーバーグループをアップグレードします
スケジュールされたダウンタイム中に、3台のサーバーA、B、CによるStoreFrontサーバーグループをアップグレードします。
- 負荷分散URLを無効にして、サーバーグループへのユーザーアクセスを無効にします。これにより、ユーザーがアップグレードプロセス中に展開環境に接続できなくなります。
-
サーバーAを使用して、サーバーBとCをグループから削除します。
サーバーBとCは、サーバーグループから「孤立」しています。
- このバージョンのStoreFrontのインストールファイルを実行してサーバーAをアップグレードします。
- サーバーAが正常にアップグレードされたことを確認してください。
- サーバーBとCで、現在インストールされているStoreFrontをアンインストールし、新しいバージョンのStoreFrontをインストールします。
-
アップグレードされたサーバーグループを作成するために、アップグレードされたサーバーAにサーバーBとCを参加させます。このサーバーグループは、アップグレードされた1台のサーバー(A)と2台の新しくインストールされたサーバー(BとC)で構成されています。
既存のサーバーグループへの参加プロセスは自動的にすべての構成データとサブスクリプションデータを新しいサーバーBとCに伝達します。
- すべてのサーバーが正しく機能していることを確認してください。
- 負荷分散URLを有効にして、アップグレードされたサーバーグループへのユーザーアクセスを有効にします。
例2:スケジュールされたダウンタイムなしで3ノードのStoreFrontサーバーグループをアップグレードします
スケジュールされたダウンタイムなしで、3台のサーバーA、B、CによるStoreFrontサーバーグループをアップグレードします。
サーバーグループをアップグレードする前に、以下を実行します:
-
Export-STFStoreSubscriptionsを使用してサーバーAからサブスクリプションデータをエクスポートします。このバックアップは、サーバーがプロセスの後半で工場出荷時設定にリセットされ、サブスクリプションデータと構成データが削除されるため、必要になります。「ストアのサブスクリプションデータの管理」を参照してください。
- サーバーCに関連した負荷分散サービスを無効にしてサーバーCへのユーザーアクセスを無効にします。これによって、ユーザーはアップグレードプロセス中サーバーCに接続できなくなります。サーバーAとBに関連した負荷分散サービスを有効にして、ユーザーがそれらのサーバーを引き続き使用できるようにします。
- グループからサーバーCを削除するには、サーバーAを使用します。 サーバーAとBは、引き続きユーザーのリソースへのアクセスを提供します。サーバーCはサーバーグループから孤立し、工場出荷時設定にリセットされました。
- Clear-STFDeploymentを使用して、孤立したサーバーCを出荷時のデフォルト設定にリセットします。
- Import-STFConfigurationを使用して、以前にサーバーCにエクスポートしたことがあるStoreFront構成をインポートします。これで、サーバーCは以前のサーバーグループと同じ構成になります。後からこの手順を繰り返す必要はありません。必要なのはサーバー1台分の構成データのコピーであり、グループに参加しているその他のサーバーにはデータが伝達されます。
- このバージョンのStoreFrontのインストールファイルを実行してサーバーCをアップグレードします。これで、サーバーCは以前のサーバーグループと同じ構成になり、新しいバージョンのStoreFrontにアップグレードされます。
- 以前にサーバーCにエクスポートしたサブスクリプションデータをインポートします。後からこの手順を繰り返す必要はありません。必要なのはサーバー1台分のサブスクリプションデータのコピーであり、グループに参加しているその他のサーバーにはデータが伝達されます。
- サーバーBを使用して手順2、3、4、および6を繰り返します。手順5は繰り返さないでください。この間、ユーザーはサーバーAのリソースにのみアクセスできます。そのためこの手順は、StoreFrontサーバーグループの負荷が最小になると予想される、作業の少ない期間に実行することをお勧めします。
- 既存のサーバーグループへの参加プロセスを使用して、サーバーBをサーバーグループCに参加させます。これにより、StoreFrontの現在のバージョンで単一サーバー(サーバーA)を、StoreFrontの新しいバージョンで新しい2ノードサーバーグループ(サーバーBおよびC)を展開できます。
- サーバーBとCの両方で負荷分散サービスを有効にして、サーバーAから引き継ぐことができるようにします。
- ユーザーが新しくアップグレードされたサーバーBおよびCに接続されるように、サーバーAの負荷分散サービスを無効にします。
- サーバーAを使用して手順2~6を繰り返します。 サーバーグループのアップグレードプロセスが完了すると、サーバーA、B、Cには、元のグループと同じ構成およびサブスクリプションデータが配置されます。
注:
サーバーAが唯一アクセス可能なサーバーである短い期間中に、サブスクリプションが失われる可能性があります(手順9)。これによって、アップグレード後の新しいサーバーグループに存在するサブスクリプションデータベースが比較的古いものになり、新しいサブスクリプションレコードはすべて失われる可能性があります。
サブスクリプションデータはユーザーがログオンしてリソースを起動できるようにするために不可欠な要素ではないため、これによる機能への影響はありません。ただし、サーバーAが工場出荷時の設定にリセットされ、新しくアップグレードされたグループに参加した後で、ユーザーはリソースを再度サブスクライブする必要があります。ダウンタイムなしでStoreFront実稼働環境をライブでアップグレードすると、多数ではないものの、いくつかのサブスクリプションレコードが失われる可能性があります。
StoreFrontの構成
Citrix StoreFront管理コンソールの初回起動時に、2つのオプションが表示されます。
- 展開環境の作成。新しいStoreFront展開環境の最初のサーバーを構成します。StoreFrontを評価したり、小規模な展開環境を作成したりするには、単一サーバー環境が理想的です。最初のStoreFrontサーバーを構成した後では、いつでもサーバーをグループに追加して展開環境の許容能力を拡張できます。
- 既存のサーバーグループへの参加。既存のStoreFront展開環境に別のサーバーを追加します。StoreFront展開環境の許容能力をすばやく拡張するには、このオプションを選択します。複数サーバーの展開環境には、外部の負荷分散機能が必要です。サーバーを追加する管理者には、展開環境内の既存のサーバーに対するアクセス権が必要です。サーバーグループに6台を超えるサーバーを追加することはCitrixではお勧めしません。
StoreFrontのアンインストール
StoreFrontをアンインストールすると、StoreFront自体のほか、認証サービス、ストア、Citrix Receiver for Webサイト、XenApp ServicesサイトのURL、および関連する構成が削除されます。ユーザーのアプリケーションサブスクリプションデータを含んでいるサブスクリプションストアサービスも削除されます。単一サーバー環境では、これによりユーザーのサブスクリプションデータが削除されてしまいます。複数サーバーの展開環境の場合は、これらのデータは展開環境内のほかのサーバー上で保持されます。.NET Frameworkの機能やWebサーバー(IIS)の役割サービスなど、StoreFrontインストーラーにより有効になった必須機能は、StoreFrontをアンインストールしても無効になりません。
- ローカルの管理者権限を持つアカウントでStoreFrontサーバーにログオンします。
- StoreFront管理コンソールが開いている場合は閉じます。
- PowerShell SDKを使用してStoreFrontの管理に使用されている可能性のあるPowerShellセッションをすべて閉じます。
- Windowsの [スタート] 画面または[アプリ]画面で、Citrix StoreFrontタイルをクリックします。タイルを右クリックして、[アンインストール] を選択します。
- [プログラムと機能] ダイアログボックスで、[Citrix StoreFront] を選択して [アンインストール] をクリックします。これにより、サーバーからすべてのStoreFrontコンポーネントが削除されます。
- [Citrix StoreFrontのアンインストール] ダイアログボックスで、[はい] をクリックします。アンインストールが完了したら、[OK] をクリックします。