App Layering

Nutanixでレイヤー化するためのOSイメージの準備

このトピックでは、新しい OS レイヤーにインポートするためのクリーンな OS イメージを準備する方法について説明します。開始する前に、を満たしていることを確認してください 要件. イメージを準備しながら、時間がかかりすぎていると思うなら 必要に応じて、Microsoft Ngen.exe の操作を迅速化できます。、できます。

Windows 10 を使用しており、PVS、マシンの作成、または View を実行していない場合は 、でデスクトップの開始時間を短縮できます 削除, Windows 10 組み込みアプリケーション。ただし、OS イメージ自体ではなく新しいバージョンの OS レイヤーでアプリを削除することをお勧めします。

注:

Nutanix では無人セットアップファイルを使用しないでください 。App Layering ソフトウェアは、無人セットアップファイルが存在する場合、無人セットアップファイルを削除します。これは、Nutanix では不要または推奨されないためです。

仮想マシンへの OS のインストール

この手順の一部として、キー管理サービス (KMS) のライセンス認証を設定できます。

注: KMS と Active Directory ベースのライセンス認証 (ADBA) の両方が同時に使用されている環境にイメージを公開すると、ライセンス認証で問題が発生します。

  1. Prism コンソールにログインします。
  2. [ タスク] > [VM] を選択し、[ テーブルビュー] に切り替えて、既存の仮想マシンを表示します。
  3. 右上隅の [ + Create VM ] をクリックし、新しい仮想マシンの詳細を入力します。
    1. [ 名前 ] を入力し、[ 説明] を追加します。
    2. 仮想CPUの数を選択します
    3. CPUあたりのコアを設定します
    4. メモリを設定します
    5. [ ディスク] を選択し、3 つのディスクを持つ仮想マシンを作成します。最初のCD-ROMは、OS用のISOです。2 つ目の CD-ROM は、Nutanix VIRTIO ドライバ用です。これにより、Nutanix 仮想マシンが OS をインストールするディスクにアクセスできるようになります。最初に 1 つの CD-ROM が割り当てられます。
      1. 割り当てられた CD-ROMの値を編集します。
      2. [操作] で、[ ADSF ファイルからクローンを作成] を選択します。
      3. [バスの種類] で、[ IDE] を選択します。
      4. Windows ISO へのパスを入力します。パスは、ストレージコンテナと ISO 名の組み合わせです。例:

        /ISOStore/en_windows_10_enterprise_version_1511_x64_dvd_7224901.iso

      5. [更新] をクリックします。
    6. [ + 新しいディスクの追加] ボタンをクリックして、別のディスクを追加します
      1. [タイプ] を [ CDROM] に設定します。
      2. [操作] を [ ADSF ファイルからクローン作成] に設定します。
      3. [バスの種類] を [ IDE] に設定します。
      4. Windows VIRTIO ドライバへのパスを入力します。例:

        /ISOStore/virtio-win-0.1.102.iso

      5. [追加] をクリックします。
    7. [ + 新しいディスクを追加 ] ボタンをクリックします。
      1. [ タイプ ] を [ ディスク] に設定します。
      2. オペレーションをコンテナに配分する」に設定します。
      3. [ バスタイプ ] を [ SCSI] に設定します。
      4. 使用するコンテナを選択します
      5. [ サイズ] を入力します。
      6. [追加] をクリックします。
    8. [ + 新しいNICの追加] をクリックし、 VLAN名を入力します
    9. [保存] をクリックします。
  4. 仮想マシンをパワーオンします
    1. [ タスク] > [VM]を選択します。
    2. テーブルビューに切り替えて 、既存の仮想マシンを表示します。
    3. 表で仮想マシンを選択し、[ パワーオン] をクリックします。
  5. 仮想マシンを選択し、[コンソールの起動] をクリックして、コンソールを起動します。VM が起動すると、ISO ディスクから Windows OS のインストールが開始されます。VM が起動すると、ISO ディスクから Windows OS のインストールが開始されます。
    1. 「Windows のインストール先はどこにありますか?「仮想マシン作成ウィザードでディスクを追加しても、ディスクがないことに注意してください。
    2. [ ドライバのロード ] オプションを選択し、[ 参照] を選択します。
    3. virtio-win-0.1.1 ドライバがインストールされている CD を選択します。
    4. vioscsi フォルダを選択し、Windows OS のフォルダを選択します。
  6. OS を手動でインストールしたら、VirtIO ドライバをインストールします。
    1. デバイスマネージャを起動します
    2. [ その他のデバイス] を選択し、[ イーサネットコントローラ ] を右クリックし、[ ドライバソフトウェアの更新] を選択します。
    3. [ マイコンピュータ] を参照し、 VirtIO CDを選択します。イーサネットドライバは NetKVM フォルダに格納されます。
  7. サーバーOS: セッションホスト機能が必要な場合:
    1. [ 役割と機能の追加] を選択します。
    2. [インストールの種類] で、[ 機能ベースのインストール] を選択します。
    3. [サーバーの役割] で、[ リモートデスクトップサービス] > [リモートデスクトップセッションホスト] を選択します。
    4. サーバーの役割を追加するプロセスを完了します。
  8. すべての重要な更新プログラムをインストールします。システムを再起動し、さらにアップデートがないか確認します。一部の更新プログラムは、他の更新プログラムをインストールした後にのみ利用可能になります。
  9. 必要なサービスパックをすべてインストールします。
  10. 必要なすべてのホットフィックスをインストールします: Windows Server 2008 R @ SP1 および Windows 7: PVS用にKB2550978 をインストールする
  11. Windows システムの復元とWindows 自動更新を無効にします
  12. 組み込み管理者を有効にし、[ パスワードの有効期限なし] をオンにします。
  13. キー管理サービス (KMS) ライセンスを使用する場合は、管理者としてコマンドウィンドウを実行し、次のコマンドを入力します。

    slmgr /skms <kmsserverhost>
    slmgr /rearm
    reboot
    slmgr /ipk XXXX-YOUR-KMS-KEY-XXXX
    slmgr /ato
    <!--NeedCopy-->
    
  14. サーバーOS: サーバーOSのリモート設定にドメインユーザーを追加します。
  15. デッド(ゴースト)NICがあるかどうかを確認し、存在する場合は削除します。次のコマンドを入力します。

    set devmgr_show_nonpresent_devices=1
    devmgmt.msc
    <!--NeedCopy-->
    
  16. デッド(ゴースト)NICをすべてアンインストールします。
  17. これがサーバーOSの場合は、PowerShellで次のコマンドを実行します。

    Set-ExecutionPolicy Unrestricted
    Enable-PSRemoting
    <!--NeedCopy-->
    

OSイメージ上でOSマシンツールを実行する

レイヤーで実行する OS イメージを準備するには、イメージ上で OS Machine Tools ファイルを実行します。この実行可能ファイルは、GPO セットアップスクリプト (gposetup.cmd) と KMS バージョンのセットスクリプト (SetKMSVersion.hta) を実行します。

  1. 次の実行可能ファイルを OS イメージにダウンロードします。

    Citrix_App_Layering_OS_Machine_Tools_20.x.x.exe

  2. 実行可能ファイルを実行します。ファイルの保存先:

    c:\windows\setup\scripts

    注:

    ファイルは、 c:\windows\setup\scripts ディレクトリに抽出する必要があります。ディレクトリを変更しないでください。

キー管理サービス (KMS) を使用している場合は、ライセンスのアクティベーションを構成する

スクリプトが抽出されると、SetKMSVersion ユーティリティは、KMS ライセンスを使用するかどうかを選択するように要求します。

注: KMS と Active Directory ベースのライセンス認証 (ADBA) の両方が同時に使用されている環境にイメージを公開すると、ライセンス認証で問題が発生します。

  1. 次のダイアログボックスで、キー管理サービス (KMS) ライセンスを使用するかどうかを選択します。

    KMS バージョンイメージの設定

KMS 用のスクリプトを構成するには、次の手順を実行します。

  1. 次の場所に移動します。

    c:\windows\setup\scripts

  2. SetKMSVersion.exe を管理者として実行します 。これにより、 c:\windows\setup\scripts\kmsdir フォルダにスクリプトファイルが作成されます。

オペレーティングシステムが起動すると、適切な KMS ライセンス認証スクリプトが実行されます。

.NET Framework の正しいバージョンがインストールされていることを確認します (Windows 7、Windows 10、Windows Server 2016)

.NET Framework(.NET Framework)は、Microsoftが提供するソフトウェアフレームワークである。多くのサードパーティ製アプリケーションを実行するために必要とされる。

  • /.NET フレームワーク 4.5: Windows 7 では必須です。
  • /.NET Framework 3.5: Windows 10 および Windows Server 2016 で必要となる。

.NET フレームワークをインストールするには、次の手順に従います。

  1. [スタート] メニューで、[ コントロールパネル]、[プログラムと機能] の順に選択します
  2. 左側のパネルで、[ Windows の機能を有効または無効にする] を選択します。ウィンドウが開きます。
  3. 正しいバージョンの.NET Frameworkを選択し、 [OK]をクリックし、インストールが完了するまで待ちます。

    重要:

    .NET がすでにインストールされていても、以降の手順を続行します。

  4. コントロールパネルを終了します。
  5. タスクバーの右側にある [通知] で [ すべての設定] をクリックし、[Windows 10 の設定] アプリを開きます。
  6. [ 設定] > [更新とセキュリティ] の順に選択します。
  7. 更新プログラムを確認し、利用可能なすべての更新プログラムをインストールします。
  8. [設定] を終了します。

App Layering サービスをインストールする

  1. c:\windows\setup\scripts フォルダーで、 setup_x86.exe (32 ビット) または setup_x64.exe (64 ビット)を実行します。

  2. インストールにより、 unattend ファイルの場所の入力が求められます。Nutanix unattend でファイルを使用しないでください。

MS Officeを使用している場合は、最適化スクリプトを実行します

Microsoft Office をレイヤー化するには、App Layering インストールパッケージに含まれる最適化スクリプトが必要です。このスクリプトを使用すると、不要なサービスを無効にし、必要なサービスを有効にし、インストール固有のドライバーと設定を削除することで、メモリと CPU を節約できます。

Optimization スクリプトは OS レイヤー上で実行でき、必要に応じて、イメージテンプレートに含まれるアプリレイヤー内のスクリプトの新しいバージョンで置き換えることができます。アプリケーションレイヤーはOSレイヤーの後にイメージに適用されるため、アプリケーションレイヤーのスクリプトはOSレイヤー内の元のバージョンを上書きします。

  1. c:\windows\setup\scripts フォルダで、 optimizations.cmd ファイルを実行して、イメージの作成時に実行するファイルを作成します。

  2. 指示に従って、OS イメージで optimization.cmd を実行します。

必要に応じて、Microsoft Ngen.exe の操作を迅速化できます

すべてのソフトウェア更新プログラムをインストールしたら、 .NET ネイティブイメージにバイトコードを本質的に再コンパイルし、それらを管理するレジストリエントリを構築する必要があります。 Ngen.exe

Ngen.exe は、 .NET システムの一部である Microsoft ネイティブイメージジェネレータです。Windows は、インストールされるソフトウェアと、 Ngen.exe 構成内で検出されるソフトウェアに基づいて、いつ実行するかを決定します。

重要: Ngen.exe が実行されているときは、完了する必要があります。Ngen.exe 中断された操作は、 .NET アセンブリが機能しないか、 .NET システム内の他の問題を引き起こす可能性があります。

通常、 Ngen.exe は、フォアグラウンドアクティビティがあるときに一時停止するバックグラウンド操作です。Ngen.exe 操作を迅速に実行する場合は、タスクをフォアグラウンドに表示して、できるだけ早く完了することができます。

タスクをフォアグラウンドにする手順は、次のとおりです。

  1. 管理者としてコマンドプロンプトを開きます。
  2. Microsoft.NET\Framework 現在使用中のバージョンのディレクトリに移動します。

    cd C:\Windows\Microsoft.NET\FrameworkNN\vX.X.XXXXX <!--NeedCopy-->

  3. Ngen.exe 次のコマンドを入力して、キューに入れられたすべての項目を実行します。このコマンドは、アセンブリを構築する前に、キューに入れられたコンポーネントのインストールを処理します。

    ngen eqi 3 <!--NeedCopy-->

    Ngen.exe タスクがコマンドプロンプトでフォアグラウンドに移動し、コンパイルされているアセンブリの一覧が表示されます。コンパイルメッセージが表示されていれば問題ありません。

    タスクマネージャを使用してMSCORSVW.EXE のインスタンスが実行されているかどうかを確認できます。その場合は、完了するか、 ngen update eqi 3実行することを許可します。

    注意: タスクを停止するために再起動しないでください。タスクの完了を許可します。

  4. Ngen.exe すべてのプロセスが完了するまで実行されていることを確認します。