レイヤーの作成と管理
レイヤーとは、オペレーティングシステム、プラットフォームツール、アプリケーション、またはユーザーのデータと設定用のソフトウェアを含む仮想ディスクです。
レイヤーを作成すると、アプライアンスは新しいレイヤーをハイパーバイザー環境に仮想ディスクとして保存し、そのディスクをパッケージングマシンに接続します。
作成された各レイヤーは、仮想ディスクとしてリポジトリに保存されます。
レイヤーの種類
次の種類のレイヤーを使用できます。
- ハイパーバイザーで作成し、レイヤー化されたイメージの公開に使用するイメージテンプレートに含めるレイヤー
- イメージテンプレートで有効にし、それによって公開するレイヤー化されたイメージで有効にするレイヤー
イメージテンプレートとレイヤー化されたイメージに含めるレイヤー
OS、プラットフォームツール、およびユーザーに提供するアプリケーション用のレイヤーを作成できます。
-
OSレイヤー: ISOからWindows OSをインストールするレイヤーです。互換性のあるすべてのプラットフォームレイヤーおよびアプリケーションレイヤーで同じOSレイヤーを再利用できます。主要なWindowsバージョンごとに1つのOSレイヤーを作成することをお勧めします。たとえば、Windows 10用に1つ、Windows Server 2016用に1つです。後続のリリースごとにレイヤーの新しいバージョンを追加できます。たとえば、Windows 10バージョン1709のレイヤーがある場合、バージョン1809用にバージョンを追加し、バージョン1903用にも追加します。OSレイヤーを更新しても、アプリケーションレイヤーを更新する必要はありませんが、プラットフォームレイヤーは必ず更新してください。OSレイヤーの作成の詳細については、「OSレイヤーの作成」を参照してください。
-
プラットフォームレイヤー: 特定のオンプレミスまたはクラウド環境用のソフトウェアをインストールおよび構成するレイヤーです。インフラストラクチャソフトウェアをプラットフォームレイヤーに分離すると、複数のハイパーバイザーで同じOSレイヤーとアプリケーションレイヤーを再利用できます。たとえば、複数のハイパーバイザーを使用している場合、インフラストラクチャの各部分にプラットフォームレイヤーを作成できます。
インフラストラクチャで次のいずれかのソフトウェアを使用している場合は、通常、それらをプラットフォームレイヤーにインストールします。
- 接続ブローカーソフトウェア
- プロビジョニングソフトウェア
- System Center Configuration Manager (SCCM)
直感的ではないかもしれませんが、サポートする最初のハイパーバイザー用のソフトウェアをOSレイヤーにインストールすることが重要です。
複数のハイパーバイザーをサポートしている場合は、追加のハイパーバイザー用に別のプラットフォームレイヤーを作成できます。追加のハイパーバイザー用のプラットフォームレイヤーには、ハイパーバイザーソフトウェアと、プロビジョニング、接続ブローカー、およびSCCMソフトウェアを含める必要があります。この追加のプラットフォームレイヤーを作成するときは、サポートする新しいハイパーバイザーのチェックボックスを必ず選択してください。これにより、App LayeringアプライアンスはOSレイヤーから元のハイパーバイザーファイルと設定を削除し、パフォーマンスに干渉しないようにします。
OSレイヤーの作成の詳細については、「プラットフォームレイヤーの作成」を参照してください。
-
アプリケーションレイヤー: アプリケーションをインストールするレイヤーです。通常、1つのレイヤーに1つのアプリケーションをインストールすることをお勧めしますが、複数含めることもできます。メンテナンスを容易にするために、同じ更新スケジュールにあるアプリケーションを含めます。あるアプリケーションが他のアプリケーションを必要とする場合は、必要なアプリケーションのレイヤーを最初に作成します。アプリケーションレイヤーの作成の詳細については、「アプリケーションレイヤーの作成または複製」を参照してください。特定のアプリケーションのレイヤー化に関するヒントについては、「App Layeringレシピ」を参照してください。
エラスティックレイヤーの配信
レイヤー化されたイメージに含めるレイヤーの他に、イメージテンプレートの設定を通じて、エラスティックレイヤーとユーザーレイヤーを有効にできます。
-
エラスティックレイヤー: 特定のユーザーに割り当てられ、ユーザーがログインしたときに配信されるアプリケーションレイヤーです。エラスティックアプリケーションレイヤーはベースイメージには含まれませんが、ベースイメージ上に配信されます。エラスティックアプリケーションはユーザーのデスクトップに表示されます。
重要:
アプリケーションレイヤーは、レイヤー化されたイメージの一部として、またはエラスティックレイヤーとしてユーザーに配信できます。
Microsoft Officeなど、エラスティックレイヤーとして使用できないアプリケーションがいくつかあります。アプリケーションにこの制限があるかどうかを確認するには、App Layeringレシピをこちらで確認してください。アプリケーションに制限が指定されていない場合は、エラスティックレイヤーとして割り当てることができます。レイヤー化されたイメージでエラスティックレイヤーを有効にして割り当てる方法の詳細については、「アプリケーションレイヤーをエラスティックレイヤーとして展開」を参照してください。
-
ユーザーレイヤー: レイヤー化されたイメージでユーザーレイヤーを有効にすると、ユーザーのデータと設定、およびユーザーが自分でインストールしたアプリケーションを永続化できます。有効にすると、ユーザーがイメージに初めてログオンしたときに、各ユーザーに対してユーザーレイヤーが作成されます。この機能を有効にするには、レイヤー化されたイメージの公開に使用するイメージテンプレートでユーザーレイヤー設定を選択します。レイヤー化されたイメージでエラスティックレイヤーを有効にする方法の詳細については、「ユーザーレイヤーの展開」および「イメージテンプレートの作成または複製」を参照してください。
フルユーザーレイヤーを使用しているイメージにユーザーがログインしている場合、ChromeやFirefoxなどのブラウザーを含むアプリケーションレイヤーをユーザーに割り当てないでください。ブラウザーは頻繁に更新されるため、ユーザーの書き込み可能レイヤーと起動可能イメージ上のリビジョンとの間でリビジョン競合が発生する可能性があります。ただし、ユーザーがセッションホストであるイメージにログインしている場合は、それらのレイヤーをユーザーに割り当てることができます。
ローカルユーザーまたは管理者が必要なアプリケーション
OSレイヤーは追加したローカルユーザーまたはグループを保持しますが、アプリケーションレイヤー、プラットフォームレイヤー、およびユーザーレイヤーは保持しません。たとえば、アプリケーションをアプリケーションレイヤー、プラットフォームレイヤー、またはユーザーレイヤーにインストールするときに追加または変更したユーザーとグループは永続化されません。次のいずれかの方法を使用できます。
- アプリケーションをインストールする前に、ローカルユーザーまたは管理者をOSレイヤーに追加します。
- アプリケーションをOSレイヤーにインストールします。
レイヤーの整合性の概要
OS、アプリケーション、またはプラットフォームレイヤーを作成するときは、App Layering管理コンソールでレイヤーの作成を開始し、ハイパーバイザーの指定されたVMにソフトウェアをインストールします。ユーザーがデスクトップを開始したときにレイヤーが目的の状態になったら、マシンをシャットダウンしてレイヤーを確定します。
レイヤーを確定するためにシャットダウンすると、WindowsのNgen.exe操作によって、シャットダウン前に完了する必要がある保留中のタスクに関するメッセージが表示されます。これらのジョブが完了するまで待つ必要がありますが、必要に応じてNgen.exe操作を迅速化できます。Ngen.exeメッセージと操作を迅速化する方法の詳細については、関連する各レイヤー化の記事に含まれています。
- XenServer、Hyper-V、またはvSphereでレイヤー化のためにOSイメージを準備
- Azureでレイヤー化のためにOSイメージを準備
- Nutanixでレイヤー化のためにOSイメージを準備
- プラットフォームレイヤーの作成
- アプリケーションレイヤーの作成または複製
- レイヤーの更新
- レイヤーの整合性問題のトラブルシューティング
レイヤーの優先順位
レイヤーの優先順位は、Windowsファイルシステムとレジストリを作成する際のレイヤーの順序を定義します。レイヤーの優先順位は、次の場合に重要です。
- レイヤー化されたイメージの公開の一部としてのレイヤーの合成
- ファイルおよびレジストリ設定のレイヤーの検索
- ユーザーのデスクトップへのエラスティックレイヤーおよびユーザーレイヤーの配信
App Layeringソフトウェアは、各レイヤーに優先順位を割り当て、最も低い優先順位から最も高い優先順位まで、順序どおりにレイヤーを適用します。
Windowsでは、最も優先順位の高いレイヤーが優先されます。ファイルまたはレジストリエントリが2つのレイヤーに存在する場合、Windowsは最も優先順位の高いレイヤーのファイルまたはレジストリエントリを使用します。
レイヤーの優先順位の決定方法
レイヤーの優先順位は、レイヤーの種類と、アプリケーションレイヤーの場合はレイヤーが作成された順序に基づいています。
ベースイメージ内のレイヤー
レイヤー化されたイメージの一部であるレイヤーは順序どおりに適用され、プラットフォームレイヤーは常に最後に、最も優先順位の高いレイヤーとして適用されます。
次の表に示すように、アプリケーションレイヤーに割り当てられる優先順位は、レイヤーが作成された順序に基づいています。新しいアプリケーションレイヤーは、古いレイヤーよりも高い優先順位が与えられます。
| 優先順位 | レイヤーの種類 |
|---|---|
| 高 | プラットフォームレイヤー |
| 最後に作成されたアプリケーションレイヤー | |
| 中 | 作成日順のアプリケーションレイヤー |
| 最初に作成されたアプリケーションレイヤー | |
| 低 | OSレイヤー |
レイヤーに共通のファイルまたはレジストリエントリがある場合、優先順位の高いレイヤーのファイルまたはレジストリエントリが使用されます。
ベースイメージで有効になっているレイヤー
公開されたイメージが起動すると、レイヤー化されたイメージのイメージテンプレートでレイヤーが有効になっている場合、さらに多くのレイヤーが適用される可能性があります。
- エラスティックレイヤー(エラスティックレイヤーとしてユーザーに割り当てられたアプリケーションレイヤー)
- ユーザーレイヤー
イメージにレイヤーをマージする場合、ユーザーレイヤーは常に最も優先順位が高くなります。次にエラスティックレイヤーが続き、ベースイメージ内のレイヤーが最後になります。
次の表に示すように、エラスティックレイヤーの優先順位は元のアプリケーションレイヤーの優先順位と同じですが、ベースイメージに適用されます。エラスティックレイヤーの優先順位は、レイヤーが公開されたイメージにアタッチされる順序には依存しません。
| 優先順位 | レイヤーの種類 |
|---|---|
| 高 | ユーザーレイヤー |
| エラスティックレイヤー - 最後に作成されたアプリケーションレイヤー | |
| 中 | エラスティックレイヤー - 作成順のアプリケーションレイヤー |
| エラスティックアプリケーション - 最初に作成されたアプリケーションレイヤー | |
| 低 | レイヤー化されたイメージ - ベースイメージ内のすべてのレイヤー |
レイヤーの優先順位の競合
ほとんどのアプリケーションレイヤーは機能しますが、状況によっては、アプリケーションをインストールする順序がデスクトップで競合を引き起こす可能性があります。
あるアプリケーションを別のアプリケーションの前にインストールする必要がある場合は、必要な順序でレイヤーを作成します。App Layeringソフトウェアは、同じ順序でレイヤーを適用します。
2つのレイヤーが競合し、それがイメージに組み込まれる順序が原因であると思われる場合は、次の2つの選択肢があります。
- 最後にインストールしたいレイヤーを再作成し、正しい順序で組み込まれるようにします。
- テクニカルサポートに支援を依頼します。