プラットフォームレイヤーの作成
プラットフォームレイヤーには、レイヤーとレイヤー化されたイメージが環境で問題なく実行されるために必要なプラットフォームソフトウェアと設定が含まれています。
プラットフォームレイヤーは、次の2つの目的で作成できます。
-
レイヤーの作成とパッケージ化のため: レイヤーを作成するハイパーバイザーとは異なるハイパーバイザーからOSをインポートした場合は、この種類のプラットフォームレイヤーを使用してアプリレイヤーを作成します。
-
レイヤー化されたイメージの公開のため: この種類のプラットフォームレイヤーをイメージテンプレートで使用して、公開されたレイヤー化されたイメージが環境で問題なく実行されるようにします。
レイヤーのパッケージ化またはレイヤー化されたイメージの公開のためのプラットフォームレイヤー
次の表を使用して、プラットフォームレイヤーが必要かどうかを判断します。この表には、プラットフォームレイヤーが必要な場合にインストールするソフトウェアも示されています。
| レイヤーのパッケージ化 | レイヤー化されたイメージの公開 | |
|---|---|---|
| プラットフォームレイヤーは必要ですか? | OSイメージが別のハイパーバイザーで作成された場合に必要です。アプリがエージェントまたはSSOソフトウェアを必要とする場合は、そのレイヤーの作成と更新のために特別にプラットフォームレイヤーを作成できます。 | プロビジョニングサーバーに公開し、接続ブローカーを使用する場合に必要です。 |
| インストールするもの | OSが別のハイパーバイザーで作成された場合は、ハイパーバイザーツール。アプリレイヤーを作成するために必要な場合は、SSOまたはエージェントソフトウェア。 | プロビジョニングおよび接続ブローカーソフトウェアと設定。OSが作成されたハイパーバイザーとは異なるハイパーバイザーに公開する場合は、ハイパーバイザーツールを含めます。 |
| 選択する値 | ハイパーバイザーを選択します。 | ハイパーバイザー、プロビジョニングソフトウェア、および接続ブローカーを選択します。 |
| 必要なもの | ハイパーバイザーのインストーラー | プロビジョニングソフトウェアと接続ブローカーのインストーラー。 |
プラットフォームレイヤーに含めるその他のソフトウェアと設定
上記のプラットフォームソフトウェアの他に、プラットフォームレイヤーには以下の設定とソフトウェアを含める必要があります。
-
ドメイン参加
-
NVIDIAドライバー(該当する場合)
-
シングルサインオンコンポーネント用のCitrix Receiver™
-
シトリックス ワークスペース™ エンバイロメント マネジメント (WEM) エージェント注:Citrix WEMによって生成されたRSAキーは、展開されたイメージでWEMを使用する際に問題を引き起こします。レイヤーを確定する際にRSAキーが存在する場合、
C:\ProgramData\Microsoft\Crypto\RSA\S-1-5-18\fb8cc9e38d3e60ab60c17cdfd6dd6d99_で始まるRSAキーファイルを削除する必要があることを示すメッセージが表示されます。 -
Citrix® ウーバーエージェント®
-
ログオンスタックに影響を与えるソフトウェア(例:Imprivata)
-
Hyper-V 上の Citrix Provisioning™: PXE ブートにはレガシーネットワークアダプターが必要です
-
使用している場合は、Microsoft System Center Configuration Manager (SCCM) ソフトウェア
プラットフォームレイヤーを作成するプロセス
プラットフォームレイヤーを作成する手順は次のとおりです。
-
管理コンソールでプラットフォームレイヤーを作成します。
-
パッケージングマシンに接続してログインします。
-
プロビジョニングソフトウェアと接続ブローカーソフトウェアをインストールします。
-
アプライアンスは、レイヤーを作成してイメージを公開するハイパーバイザーとは異なるハイパーバイザーで実行されていますか?はいの場合、ハイパーバイザーツールもインストールすることをお勧めします。
-
レイヤーを確認し、パッケージングマシンをシャットダウンします。
-
選択したコネクタ構成が Offload Compositing を使用するように設定されている場合、レイヤーは自動的に確定されます。
-
コネクタ構成が not Offload Compositing に設定されていない場合は、この記事の詳細な手順で説明されているように、レイヤーを手動で確定します。
-
プラットフォームレイヤーを更新するタイミング
プラットフォームレイヤーは最も優先度の高いレイヤーです。これは、特にネットワークデバイスの場合、イメージを展開するために不可欠です。インフラストラクチャソフトウェアを更新するたびに、プラットフォームレイヤーにバージョンを追加します。
OS レイヤーを更新すると、イメージに起動の問題が発生する場合があります。この問題を解決するには、新しい OS レイヤーを使用してプラットフォームレイヤーにバージョンを追加します。パッケージングマシンが起動したら、確定のためにマシンをシャットダウンします。プラットフォームレイヤーは、新しい OS レイヤーバージョンから重要なコンポーネントを収集し、それらをプラットフォームで更新して、OS バージョンと一致させます。
要件
プラットフォームレイヤーを作成する際、ソフトウェアインストーラーはパッケージングマシンがアクセスできる場所に配置されている必要があります。たとえば、プロビジョニングサーバーと接続ブローカーソフトウェアにアクセスできる必要があります。アプライアンスが別のハイパーバイザーで実行されている場合は、ハイパーバイザーツールも含まれている必要があります。
詳細な要件については、レイヤーを作成またはイメージを公開する環境を選択してください。
最適化について一言
プラットフォームレイヤーは最も優先度の高いレイヤーです。最適化を含めるのに最適な場所だと考えるかもしれません。しかし、Windows 10では、Windowsアプリを削除する最適化はOSレイヤーでのみ機能します。WindowsアプリはWindows Storeと統合されており、OSレイヤーでのみ変更できます。
Citrixは、Citrix Optimizerと呼ばれる優れた最適化ユーティリティを提供しています。App Layeringに付属のオプティマイザーではなく、このユーティリティを使用することをお勧めします。Citrix Optimizerは、必要に応じて最適化を元に戻すことができるためです。
ユーザーログインを高速化するには。ネットワークユーザーアカウントを使用してログインし、デスクトップを再起動します。その後、管理者としてログインし、作成されたプロファイルを削除します。最初のネットワークユーザーがログオンすると、一部のシステムファイルが更新され、通常、ログインパフォーマンスが向上します。
新しいプラットフォームレイヤーを開始する
プラットフォームレイヤーを作成するには、次の手順に従います。
-
Create Platform Layerを使用してレイヤーを準備します。
-
環境にパッケージングマシンを展開します。
-
ツールをインストールし、環境の設定を構成します。
-
レイヤーを確定します。
アクションバーから開始して、次の手順に従います。
-
Layers > Platform Layersを選択します。次に、Create Platform Layerを選択します。
-
Layer Detailsタブで、必須値であるLayer NameとVersionを入力します。オプションで、他の値を入力することもできます。
-
Version Detailsタブで、次の操作を行います。
-
(必須) 新しいバージョン名を入力します。たとえば、ソフトウェアのバージョンやその他の識別情報を入力します。
-
既存のレイヤーにバージョンを追加する場合、Base Versionフィールドで開始点として使用するバージョンを選択できます。デフォルトの選択は最新バージョンです。
-
-
OS layerタブで、このPlatform layerに関連付けるOS layerを選択します。
-
Connectorタブで、このレイヤーを作成するプラットフォームのConnector Configurationを選択します。
-
「Platform Types」タブで、「This platform will be used for publishing layered images」または「This platform will be used for packaging」を選択します。次に、レイヤー化されたイメージを公開するハイパーバイザー、プロビジョニングソフトウェア、および接続ブローカーを選択します。 注: プロビジョニングまたは接続ブローカーを使用しない場合は、これらのオプションのそれぞれについて「None」を選択します。
-
Packaging Diskタブで、パッケージングディスクのfile nameを入力します。このディスクは、ツールをインストールするパッケージングマシン(仮想マシン)で使用されます。
-
「アイコンの割り当て」タブで、レイヤーに割り当てるアイコンを選択します。このアイコンは、「レイヤー」モジュールでレイヤーを表します。
-
既存の画像を使用するには、画像ボックスで画像を選択します。
-
新しい画像をインポートするには、**「参照」**をクリックし、PNGまたはJPG形式の画像を選択します。
-
レイヤーが提供されているアイコンのいずれかを使用し、**「コンポジティングのオフロード」**が選択されているコネクタを使用している場合、パッケージングマシンはレイヤーのコンテンツに基づいてアイコンを割り当てます。
-
-
「確認と完了」タブで、Appレイヤーの詳細を確認し、必要に応じてコメントを入力して、**「レイヤーの作成」をクリックします。入力したコメントは、「監査履歴」の「情報」**ビューに表示されます。
-
**「タスク」ページを選択し、「パッケージングディスク」**タスクをクリックします。情報アイコンをクリックして、タスクの完全な説明を表示します。パッケージングディスクが作成されると、タスクバーに環境内のパッケージングディスクの場所が表示されます。
次に、レイヤーのパッケージングマシンを展開できます。
パッケージングマシンの展開
App Layeringシステムは、コネクタ構成で定義された場所にパッケージングマシンを作成します。パッケージングマシンは、レイヤーのソフトウェアをインストールする一時的なVMです。レイヤーを確定すると、パッケージングマシンは削除されます。
Hyper-V 用 Citrix Provisioning: 2 つのネットワークカードの構成
デュアルネットワークカードを使用し、Hyper-V 用 Citrix Provisioning を実行している場合は、Platform レイヤーの新しいバージョンごとに、次のようにカードを構成する必要があります。
プロビジョニングソフトウェアがインストールされ、必要な再起動が完了したら、次の手順を実行します。
-
パッケージングマシンで管理者コマンドプロンプトを開きます。
-
コマンドを実行します:
ipconfig /all -
ストリーミングNIC (Hyper-V のレガシーネットワークアダプター) の IP アドレスを正しいアダプター名と一致させます。
-
ストリーミング NIC の DHCP リースを更新します。
-
管理者コマンドプロンプトで、再度
ipconfig /release *adapter-name*の後にipconfig /renew *adapter-name*を実行します。このコマンドにより、App Layering ドライバーはこのアダプターを「プライマリ NIC」として強制的に選択します。 -
シャットダウンして最終処理を実行し、通常どおりレイヤーを最終処理します。
重要:
「シャットダウンして最終処理」を選択した後、何らかの理由でマシンを再度オンにする必要がある場合は、release コマンドと renew コマンドを再実行する必要があります。
パッケージングマシンにプラットフォームツールをインストールする
次に、レイヤー化されたイメージを公開するプラットフォーム用のソフトウェアをインストールします。プラットフォームツールには、ターゲット環境でレイヤー化されたイメージが必要とするプロビジョニングソフトウェアと接続ブローカーソフトウェアが含まれます。レイヤーを最終処理するときのソフトウェアの状態が、イメージが使用する状態になることに注意してください。
-
パッケージングマシンにリモートでログインします。OS の作成に使用したユーザーアカウントを使用してログインしてください。
-
レイヤー化されたイメージが実行するように構成されているツールをインストールします。たとえば、プロビジョニング、接続ブローカー、ハイパーバイザーのツールを含めます。ドライバー、ブートレベルのアプリケーション、および必要なファイルを忘れないでください。
-
インストールにシステム再起動が必要な場合は、手動で再起動します。パッケージングマシンは自動的に再起動しません。
-
イメージが起動したときに、パッケージングマシンが目的の状態になっていることを確認します。
-
インストールしたツールにインストール後のセットアップまたは登録が必要な場合は、今すぐそれらの手順を完了してください。
-
パッケージングマシンに含めたくない設定、構成、ファイル、マップされたドライブ、またはアプリケーションを削除します。
-
-
(オプション) MCS への展開前に ELM から展開されたイメージをカスタマイズするには、次の手順に従います。
-
OSリビジョン2308以降でマスターツールをアップグレードします。
-
次に、ファイルを作成します。
c:\windows\setup\scripts\kmsdir\Admin_Controlled_Shutdown.txt注:ファイルの内容は重要ではありません。 -
ELMからイメージが展開されると、起動されたイメージは実行状態を維持するため、カスタマイズを行うことができます。再起動してもマシンの状態には影響しません。
-
カスタマイズが完了したら、次のコマンドを実行します。
c:\windows\setup\scripts\kmsdir\CompleteDeployment.cmd.この時点で、マシンはシャットダウンし、展開タスクが完了します。これにより、マシンをMCSに展開できます。
-
レイヤーを確認し、パッケージングマシンをシャットダウンする
ツールがパッケージングマシンにインストールされたら、レイヤーが最終処理の準備ができていることを確認できます。必要なインストール後の処理を完了する必要があります。たとえば、再起動やMicrosoft
ngen プロセスが完了する必要がある場合があります。
未処理のプロセスが完了していることを確認するには、Shutdown For Finalize ツールを実行します。パッケージングマシンのデスクトップで Shutdown For Finalize アイコンを探します。
レイヤーを最終処理できるようにパッケージングマシンをシャットダウンする
-
パッケージングマシンにログインしていない場合は、OSレイヤー作成時に設定したアカウントを使用してリモートログインします。
-
Shutdown For Finalize アイコンをダブルクリックします。コマンドラインウィンドウに、レイヤー検証プロセスの詳細を示すメッセージが表示されます。
-
未処理の操作がある場合は、プロセスを完了するように求められます。たとえば、Microsoft
ngen操作を完了する必要がある場合は、「最終処理プロセス中のレイヤー整合性メッセージ」セクションで詳述されているように、ngen操作を迅速化できます。 -
保留中の操作が完了したら、Shutdown For Finalize アイコンをもう一度ダブルクリックします。
レイヤーは最終処理の準備ができました。
-
選択されたコネクタ構成が Offload Compositing に設定されている場合、レイヤーは自動的にファイナライズされます。
-
Offload Compositing を使用していない場合は、レイヤーを手動でファイナライズします(/ja-jp/citrix-app-layering/4/layering/create-and-manage-layers/create-platform-layer.html#finalize-the-layer-manually)。
ファイナライズ処理中のレイヤー整合性メッセージ
次のレイヤー整合性メッセージは、レイヤーがファイナライズ可能になる前に完了する必要があるキューに入れられた操作を示します。
-
A RunOnce script is outstanding - check and reboot the packaging machine.. -
A post-installation reboot is pending - check and reboot the packaging machine.. -
A Microsoft ngen operation is in progress in the background. - An MSI install operation is in progress - check the packaging machine.. -
A reboot is pending to update drivers on the boot disk - check and reboot the packaging machine.. -
A Microsoft ngen operation is needed.. -
Software Center Client is configured to run, but the SMSCFG.INI is still present.仮想環境でのSCCMの展開について詳しくは、Microsoft TechNetの記事「XenDesktop VDI環境でのSCCMの実装」を参照してください。
レイヤー整合性メッセージの意味とデバッグ方法の詳細については、Citrix App Layering 4.x以降でのレイヤー整合性問題のデバッグ を参照してください。
マシンをシャットダウンしても、レイヤー整合性メッセージをバイパスすることはできません。App Layeringソフトウェアは、プロセスが完了するまでパッケージングマシンに戻します。
Microsoft
ngen 操作が進行中の場合は、次のセクションで説明するように、それを早めることができます。
必要に応じてMicrosoft Ngen.exe 操作を早める
すべてのソフトウェアアップデートがインストールされたら、
Ngen.exe が実質的に .NET バイトコードをネイティブイメージに再コンパイルし、それらを管理するためのレジストリエントリを構築できるようにする必要があります。
「
Ngen.exe」実行可能ファイルは、Microsoft Native Image Generator であり、.NET システムの一部です。Windows は、インストールされているソフトウェアと、Windows が構成で検出するものに基づいて、Ngen.exe をいつ実行するかを決定します。
重要:
Ngen.exe が実行中の場合は、完了するまで待つ必要があります。中断された Ngen.exe 操作は、機能しない .NET アセンブリや、.NET システムにおけるその他の問題を引き起こす可能性があります。
通常、
Ngen.exe はバックグラウンド操作であり、フォアグラウンドアクティビティがある場合は一時停止します。Ngen.exe 操作を迅速化するには、タスクをフォアグラウンドに移動して完了させます。
タスクをフォアグラウンドに移動するには:
-
コマンドプロンプトを管理者として開きます。
-
現在使用中のバージョンの
Microsoft.NET\Frameworkディレクトリに移動します:cd C:\Windows\Microsoft.NET\FrameworkNN\vX.X.XXXXX -
次の
Ngen.exeコマンドを入力して、キュー内のすべての項目を実行します。このコマンドは、アセンブリをビルドする前に、キューに入れられたコンポーネントのインストールを処理します。ngen eqi 3Ngen.exeタスクはコマンドプロンプトでフォアグラウンドに移動し、コンパイルされているアセンブリを一覧表示します。コンパイルメッセージが表示されても問題ありません。タスクマネージャーを使用して、MSCORSVW.EXEのインスタンスが実行されているかどうかを確認できます。実行されている場合は、完了するまで待つか、ngen eqi 3を実行してください。注意: タスクを停止するために再起動しないでください。タスクが完了するまで待ってください! -
すべての
Ngen.exeプロセスが完了したことを確認してください。 -
完了したら、デスクトップにある Shutdown For Finalize ショートカットを使用して仮想マシンをシャットダウンします。
レイヤーを手動で確定する
レイヤーが検証されシャットダウンされたので、最終処理の準備ができました。
注:
オフロードコンポジティングが有効になっているコネクタを使用している場合、この最終処理プロセスは自動化されており、これらの手動手順を実行する必要はありません。
-
管理コンソールに戻ります。
-
レイヤー > プラットフォームレイヤーを選択し、準備したバージョン情報タブのレイヤーバージョンを選択します。
-
レイヤーの作成を完了するには、最終処理をクリックします。
-
タスクバーを監視して、アクションが正常に完了したことを確認します。
レイヤーが検証されると、使用されるストレージスペースを最小限に抑えるために、パッケージングマシンは削除されます。