インストール前の作業
Provisioning Servicesをインストールして構成する前に、以下のタスクを完了しておく必要があります。
Microsoft SQLデータベースの選択と構成
1つのファームに複数のデータベースを関連付けることはできません。次のどちらかにProvisioning Servicesデータベースをインストールできます:
- 既存のSQL Serverデータベースマシン:ファーム内のすべてのProvisioningサーバーと通信できる必要があります。
- 新しいSQL Server Expressデータベースマシン:Microsoftが無償で提供する、SQL Server Expressを使用してインストールします。
実稼働環境では、負荷分散のパフォーマンス低下を回避するため、データベースとProvisioning Serverソフトウェアを異なるサーバーにインストールすることをお勧めします。
データベース管理者がProvisioning Servicesデータベースを作成する可能性があります。この場合は、Microsoft SQL Serverのデータベース管理者にDbScript.exeユーティリティで作成するファイルを提供します。このユーティリティはProvisioning Servicesソフトウェアと共にインストールされます。
データベースのサイズ評価
データベースのサイズ見積もりについて詳しくは、「Estimate the Size of a Database」を参照してください。
データベースの作成時には、初期サイズとして20MB、拡張サイズとして10MBが設定されます。データベースログの初期サイズは10MBで拡張サイズは10%です。
基本データに必要な容量は112KBで、このサイズは変更されません。基本データには、以下のレコードが含まれます。
- データベース バージョンのレコード。約32KBが必要です。
- Farmレコード。約8KBが必要です。
- ディスク作成のレコード。約16KBが必要です。
- Notifications。約40KBが必要です。
- サーバーマップ済みのレコード。約16KBが必要です。
オブジェクトに基づいて必要な容量は次のようになります。
- アクセスとグループ
- システムにアクセス権を持つ各ユーザーグループに約50KBが必要です。
- 各Siteレコードに約4KBが必要です。
- 各コレクションに約10KBが必要です。
- ファームビュー
- 各ファームビューに約4KBが必要です。
- 各FarmView/Deviceリレーションシップに約5KBが必要です。
- サイトビュー
- 各サイトビューに約4KBが必要です。
- 各SiteView/Deviceリレーションシップに約5KBが必要です。
- ターゲットデバイス
- 各ターゲットデバイスに約2KBが必要です。
- 各デバイスブートストラップに約10KBが必要です。
- 各デバイスディスクのリレーションシップに約35KBが必要です。
- 各デバイスプリンターのリレーションシップに約1KBが必要です。
- 各デバイスのパーソナリティに約1KBが必要です。
- デバイスの起動時の各デバイス ステータスに約1KBが必要です。
- 各DeviceCustomPropertyに約2KBが必要です。
- ディスク
- 各一意のディスクに約1KBが必要です。
- 各DiskVersionに約3KBが必要です。
- 各ディスクロケーターに約10KBが必要です。
- 各DiskLocatorCustomPropertyに約2KBが必要です。
- Provisioningサーバー
- 各サーバーに約5KBが必要です。
- 各ServerIPに約2KBが必要です。
- サーバーの起動時の各サーバーステータスに約1KBが必要です。
- 各ServerCustomPropertyに約2KBが必要です。
- ストア
- 各Storeに約8KBが必要です。
- 各Store:Serverリレーションシップに約4KBが必要です。
- ディスク更新
- 各VirtualHostingPoolに約4KBが必要です。
- 各UpdateTaskに約10KBが必要です。
- 各DiskUpdateDeviceに約2KBが必要です。
- 各DiskUpdateDevice:Diskリレーションシップに約35KBが必要です。
- 各Disk:UpdateTaskリレーションシップに約1KBが必要です。
変更が発生するにつれて大きくなるレコードは以下のとおりです。
- 各タスク処理(例:vDiskバージョンのマージ)に約2KBが必要です。
- 監査機能が有効な場合、コンソール、MCLI、またはPowerShellのProvisioning Servicesインターフェイスで管理者が加える変更ごとに、約1KBが必要です。
データベースのミラーリング
Provisioning ServicesでMicrosoft SQL Serverのデータベースミラーリングをサポートするには、データベースを監視付きの高い安全性モード(同期)で構成する必要があります。
データベースミラーリング機能を使用する場合は、サーバーにSQL Native Clientが必要です。これが存在しない場合は、SQLのインストール時にSQLネイティブクライアントx64またはx86のインストールオプションが表示されます。
データベースのミラーリングの構成および使用方法について詳しくは、「データベースのミラーリング」を参照してください。
データベースのクラスター化
データベースのクラスター化を実装するには、Microsoft社の手順に従い、さらにProvisioning Services構成ウィザードを実行します。クラスター化したサーバーはウィザードにより単一のSQL Serverとして認識されるため、これ以上の手順は不要です。
認証の構成
Provisioning Servicesでは、データベースへのアクセスにWindows認証が使用されます。構成ウィザードの実行時を除き、Microsoft SQL Server認証はサポートされません。
-
構成ウィザードのユーザーアクセス許可
構成ウィザードを実行するユーザーには、Microsoft SQL Serverの次のアクセス許可が必要です。
- dbcreator:データベースの作成に必要です。
- security admin:Stream ServiceとSOAP ServerのSQLログインの作成に必要です。
テスト環境でMicrosoft SQL Expressを使用する場合は、構成ウィザードを実行するユーザーにsysadmin特権(最高のデータベース権限)を与えることを選択できます。
データベース管理者により空のデータベースが提供される場合は、構成ウィザードを実行するユーザーはそのデータベースの所有者であり、 VIEW ANY DEFINITION権限を持っている必要があります。これらの設定は、データベース管理者が空のデータベースを作成するときに設定します。
サービスアカウントの権限
Stream ServiceとSOAP Serverのユーザーコンテキストには次のデータベースアクセス許可が必要です。
- db_datareader
- db_datawriter
- ストアドプロシージャのEXECUTE権限
構成ウィザードでは、Stream ServiceとSOAP ServerのユーザーアカウントにDatareaderおよびDatawriterのデータベース役割が自動的に構成されます。ユーザーがsecurity adminアクセス許可を持っている場合は、構成ウィザードによりこれらのアクセス許可が割り当てられます。さらに、サービスユーザーには次のシステム特権が必要です。
- サービスとして実行する
- レジストリの読み取りアクセス
- Program Files\Citrix\Provisioning Servicesへのアクセス
- すべてのvDiskの場所への読み取りおよび書き込みアクセス
Stream ProcessおよびSOAP Serverを実行するアカウントを、以下のアカウントから選択します。
-
Network Serviceアカウント
最小限の特権を持つローカルアカウントで、ドメインコンピューターアカウントとしてネットワーク上で認証を受けるアカウントです。
-
指定ユーザーアカウント(Windows共有を使用する場合に必要)で、ワークグループまたはドメインのユーザーアカウントにできます。
Provisioning ServicesでKMSライセンスをサポートするには、SOAP ServerのユーザーアカウントがローカルのAdministratorsグループのメンバーである必要があります。
ワークグループ環境では認証はあまり使用されないため、最小限の特権を持つユーザーアカウントを各サーバーに作成し、各インスタンスで資格情報を同一にする必要があります。
このファームで使用する適切なセキュリティオプションを決定します(ファームごとに選択できるオプションは1つのみであり、ここで選択したオプションは役割に基づく管理機能に反映されます)。
- セキュリティ保護にActive Directoryグループを使用する(デフォルト):Active Directoryが動作するWindowsドメインにインストールする場合はこのオプションをクリックします。このオプションでは、Provisioning Servicesの管理役割の割り当てにActive Directoryを利用できます。 注:Windows 2,000のドメインはサポートされません。
- セキュリティ保護にWindowsグループを使用する。単一のサーバーまたはワークグループにインストールする場合はこのオプションをクリックします。このオプションでは、Provisioning Servicesの管理役割の割り当てに特定サーバー上のローカルユーザー/グループを利用できます。
コンソールユーザーは直接データベースにアクセスしません。
Provisioning Servicesのそのほかの機能に必要な最小限のアクセス許可は、次のとおりです:
- Provisioning Services XenDesktopセットアップウィザード、ストリーム配信仮想マシンセットアップウィザード、およびImageUpdateサービス
- vCenter、SCVMM、およびXenServerの最小限の権限
- 既存のXenDesktop Controllerの現在のユーザーの権限
- Provisioning ServicesコンソールのユーザーアカウントがXenDesktop管理者として構成されていて、PVS Site Adminまたはそれより上位のグループに追加されている
- コンソールでアカウントを作成するActive Directory作成アカウント権限。既存のアカウントを使用するには、選択する既知の組織単位にActive Directoryアカウントが存在している必要があります。
- Personal vDiskをXenDesktopと共に使用する場合、SOAP ServerのユーザーアカウントはXenDesktopに対して完全な権限を持つ管理者アカウントである必要があります。
- ADアカウント同期:作成、リセット、および削除のアクセス許可
- vDisk:ボリュームの保守タスクを実行する特権
Kerberosセキュリティ
Active Directory環境でProvisioning ServicesのSOAP Serverと通信するとき、Provisioning Servicesコンソール、イメージ作成ウィザード、PowerShellスナップイン、およびMCLIでは、デフォルトでKerberos認証が使用されます。Kerberosアーキテクチャの一部として、サービスはドメインコントローラー(Kerberosキー配布センター)に登録される、つまりSPN(Service Principal Name:サービスプリンシパル名)が作成されます。この登録処理によりProvisioning ServicesのSOAP Serverを実行するアカウントをActive Directoryで識別できるようになるため、この処理は不可欠です。登録処理を実行しないとKerberos認証に失敗し、Provisioning ServicesはNTLM認証にフォールバックします。
Provisioning ServicesのSOAP Serverはサービスを開始するたびに登録され、サービスを停止するたびに登録が解除されます。ただし、SOAP Serverのユーザーアカウントに権限がない場合、登録に失敗します。デフォルトでは、Network Serviceアカウントとドメイン管理者にはアクセス許可がありますが、通常のドメインユーザーアカウントにはありません。
この権限の問題の発生を防ぐには、次のいずれかを実行します。
- アクセス許可を持つ別のアカウントを使用してSPNを作成します。
- サービスを実行するアカウントに権限を割り当てます。 | | | | —————- | ———————— | | アカウントの種類 | 権限 | | コンピューターアカウント | サービスプリンシパル名への検証された書き込み | | ユーザーアカウント | パブリックインフォメーションの書き込み |