Windows展開サービス(WDS)は、Windowsプラットフォームへの便利な追加機能です。 WindowsゲストOSで仮想マシンをデプロイするには、このツールをすぐに使用できます。 そして、いくつかの巧妙な手の動きの後、彼はPreboot eXecution Environment(PXE)ブートメニューを使用してLinuxおよびVMwareサーバーを展開するタスクに非常に対処することができます。
これらの操作の中には、コマンドラインから起動されるコマンドがいくつかあります。 Windowsで使用されているPXEブートローダーをLinuxのブートローダーに切り替えるだけです。 その結果、必要に応じてLinux PXEからWindowsのブートに切り替えることができるメニュー項目が作成され、Linux構成をダウンロードするためのWebインターフェイスの操作にIISが使用されます。
カスタマイズされたWDSを使用して、Windows、CentOS、およびESXiを展開します。これについては、この投稿で説明します。 他のプラットフォームのユーザーは、ここで展開のアイデアを見つけると思います。

この例では、OSの下にC: 60 GBドライブと、WindowsおよびLinuxをインストールするために必要なさまざまなWIMファイル用の300 GB WDSドライブを備えたクリーンなWindowsサーバーを取り上げます。
ステージ1:WDSサーバーの展開
- サーバーにWindows展開サービスとIISをインストールします。 これは、サーバーマネージャーまたはPowerShellを使用して実行できます。
Install-WindowsFeature –name Web-server -includemanagementtools Install-Windowsfeature –name WDS -includemanagementtools
- 次に、DHCPプールに変更を加える必要があります。 特に、別のNICをサーバーに追加して専用ネットワークを構成できますが、通常はそうしませんが、代わりにメインDHCPサーバーを構成します-追加のWDS DHCP属性を指定します。 使用する設定は次のとおりです。
- ブートサーバーのホスト名 -WDSサーバーのIPアドレスを入力します。
- ブートファイル名 -クライアントで実行するWDS実行可能ファイルを指定します。
残りの3つの設定には、DHCPのデフォルト値があります。 - WDSサーバーで、構成ウィザードを実行し、構成を完了します。
- セットアップに加えることをお勧めできるいくつかの変更:
-サーバーをActive Directoryと統合できます。 この時点で、Windows設定を設定しますが、スタンドアロンサーバーの方が好きです。
指定された設定に従って、クライアントマシンからのリクエストに応答し、ADでの「ダンス」を必要としません。
-通常、パスをC:\ RemoteInstallからE:\ RemoteInstallに変更します。ここで、 E:は上記の2番目のディスクで、WIM、Linuxなどを対象としています。
- 次に、PXEメニューに変更を加える必要があります。これを行うには、WDSインストールUIを実行し、サーバーを右クリックし、[ ブート ]タブのプロパティで[ F12キーを押すようにユーザーに要求する ]を変更して、 常にPXEブートを続行します 。
- その後、WDSサーバーに.WIMファイルを追加できます。 boot.wimファイルとinstall.wimファイルをWindows 2016 ISOで取得します。サーバーはWindowsマシンの展開に備えています。
これで、標準のWindows WDSブート画面が表示された後、PXEを使用して仮想マシンをブートできます。 これは、WDSの基本機能を引き続き変更するため、すべてが機能することを確認するために行う価値があります。
ステージ2:Windows展開サービスブートローダーの交換
したがって、WDSサーバーはWindowsイメージを展開する準備ができていますが、Linuxイメージも展開できるようにしたいと考えています。 これを行うには、WDSブートローダーをLinux PXEに変更します。
まず、 sysLinuxのコピーが必要です 。
重要! バージョンは3.86を超えてはなりません。そうしないと、ESXiで動作しません(インストーラーはすでに3.26に基づいているため)。
sysLinux 3.86を解凍します。 一時ディレクトリにzipし、次の手順に従います。
- ファイルの可用性を確認する
コア\ pxeLinux.0
com32 \ menu \ vesamenu.c32
com32 \モジュール\ chain.c32
- pxeLinux.0ファイルの名前をpxeLinux.comに変更します。
- ファイルをディレクトリremoteinstall \ boot \ x64およびremoteinstall \ boot \ x86にコピーします。
- x86およびx64ディレクトリで、 pxeboot.n12の名前をpxeboot.0に変更します。
- 次に、コマンドラインから次のコマンドを実行して、Linux PXEローダーのブートローダーを変更します。
wdsutil /set-server /bootprogram:boot\x86\pxeLinux.com /architecture:x86 wdsutil /set-server /N12bootprogram:boot\x86\pxeLinux.com /architecture:x86 wdsutil /set-server /bootprogram:boot\x64\pxeLinux.com /architecture:x64 wdsutil /set-server /N12bootprogram:boot\x64\pxeLinux.com /architecture:x64
- その後、 x86およびx64ディレクトリにpxeLinux.cfgという名前のサブディレクトリを作成し、その中にdefaultというファイルを作成し、次のファイルをその中にコピーします。
ブートメニューの設定DEFAULT vesamenu.c32
PROMPT 0
NOESCAPE 0
ALLOWOPTIONS 0
# Timeout in units of 1/10 s
TIMEOUT 0
MENU MARGIN 10
MENU ROWS 16
MENU TABMSGROW 21
MENU TIMEOUTROW 26
MENU COLOR BORDER 30;44 #20ffffff #00000000 none
MENU COLOR SCROLLBAR 30;44 #20ffffff #00000000 none
MENU COLOR TITLE 0 #ffffffff #00000000 none
MENU COLOR SEL 30;47 #40000000 #20ffffff
MENU BACKGROUND flow.jpg
MENU TITLE PXE Boot Menu
#---
LABEL wds
MENU LABEL Windows Deployment Services
MENU DEFAULT
KERNEL pxeboot.0
#---
LABEL CentOS68
MENU LABEL CentOS 6.8
KERNEL /web/CentOS/6.8/images/pxeboot/vmlinuz
append initrd=/web/CentOS/6.8/images/pxeboot/initrd.img root=/dev/ram0 init=/Linuxrc ramdisk_size=100000 ks=https://[IP of your WDS server]/CentOS/6.8/centos-base-ks.cfg
#---
LABEL CentOS72
MENU LABEL CentOS 7.2
KERNEL /web/CentOS/7.2/images/pxeboot/vmlinuz
append initrd=/web/CentOS/7.2/images/pxeboot/initrd.img
#---
LABEL VMWare500U3
MENU LABEL VMWare 5.0.0 U3
KERNEL /web/VMWare/5.0.0/U3/mboot.c32
APPEND -c /web/VMWare/5.0.0/U3/boot.cfg
#---
LABEL VMWare553b
MENU LABEL VMWare 5.5 U3b
KERNEL /web/VMWare/5.5.0/U3b/mboot.c32
APPEND -c /web/VMWare/5.5.0/U3b/boot.cfg
#---
LABEL VMWare60
MENU LABEL VMWare 6.0
KERNEL /web/VMWare/6.0/mboot.c32
APPEND -c /web/VMWare/6.0/boot.cfg
#---
LABEL VMWare65
MENU LABEL VMWare 6.5
KERNEL /web/VMWare/6.5/mboot.c32
APPEND -c /web/VMWare/6.5/boot.cfg
#---
LABEL Abort
MENU LABEL AbortPXE
Kernel abortpxe.0
#---
LABEL local
MENU LABEL Boot from Harddisk
LOCALBOOT 0
Type 0x80
ステップ3:IIS設定を編集する
CentOSおよびESXiセットアップファイルにはIISが必要です。 通常、データを使用してVMDK上にWebサーバーのこのファイル構造を作成します。
-E:\ web -IISが指すルートフォルダー
-E:\ web \ centos \ 7.x \ 7.1 -CentOS 7.1インストールファイル
-E:\ web \ vmware \ 6.5 -VMware 6.5インストールファイル
IIS設定で、ファイル構造を表示するオプションを有効にして、LinuxおよびVMwareインストーラーが対応するファイルにアクセスできるようにする必要があります。
これを行うには、IIS管理コンソールを起動し、目的のサーバーを選択し、その既定のサイトを選択し、 Enableコマンドでディレクトリの参照を有効にします。

HTTPSを有効にすることもできます。
ステージ4:Linuxを追加する
これで、Linuxをインストールする機能を追加できます。 私は通常、次の手順に従います。
- CentOSからISOの「最も軽い」バージョンをダウンロードし、ISOをマウントして、その内容をディレクトリE:\ web \ centos \ 7.x \ 7. [version] (または同じフレンドリ名の別のディレクトリ)にコピーします。
- その後、たとえば、自動化を強化するためにキックスタートファイルを追加できます。 たとえば、個人的にこの部分をデフォルトのpxeLinux.cfgファイルに追加します。
LABEL CentOS72 MENU LABEL CentOS 7.2 KERNEL /web/CentOS/7.2/images/pxeboot/vmlinuz append initrd=/web/CentOS/7.2/images/pxeboot/initrd.img inst.repo=[IP of your WDS server]/CentOS/7.2 ks=[IP of your WDS server]/CentOS/7.2/centos-base-ks.cfg
ステップ5:VMwareを追加する
結論として、ESXi 6.5をインストールする機能を追加しましょう。
- 手順4と同様に、すべてのファイルをVMware ISOイメージからWDSサーバーの適切なディレクトリにコピーする必要があります。
- 次に、VMwareディレクトリのboot.cfgファイルを編集し、スペースを削除する必要があります。 ファイルは最終的には次のようになります。
おわりに
おそらく、この手順全体は不要に思えるかもしれませんが、その結果、PXEメニューを使用してWDSに切り替え、WIMファイルをサポートするWindows OSを選択できるようになります。 さらに、LinuxおよびVMwareのインストールにも使用できます。 GPartedやMemtestなど、好みに応じて他のプログラムを使用することもできます。