TFTP サーバを使用して ESXi インストーラを PXE ブートすることができます。このプロセスは、UEFI を使用するか、レガシー BIOS から起動するかによって多少異なります。ほとんどの環境には、UEFI ブートをサポートする ESXi ホストと、レガシーの BIOS のみをサポートするホストが含まれています。このトピックでは、両方のタイプのホストにおける PXE ブートの前提条件と手順について説明します。
- レガシー BIOS マシンの場合、すべてのターゲット マシンに対して同じ pxelinux.0 の初期ブート ローダーを使用して複数の異なるバージョンの ESXi インストーラを起動することができますが、PXELINUX 構成ファイルはターゲット マシンの MAC アドレスに応じて異なる場合があります。
- UEFI マシンの場合、すべてのターゲット マシンに対して同じ mboot.efi の初期ブート ローダーを使用して複数の異なるバージョンの ESXi インストーラを起動することができますが、boot.cfg ファイルはターゲットマシンの MAC アドレスに応じて異なる場合があります。
前提条件
環境が次の前提条件を満たしていることを確認します。
- VMware Web サイトからダウンロードした ESXi インストーラの ISO イメージ。
- 使用している ESXi のバージョンでサポートされるハードウェア構成を備えたターゲット ホスト。『VMware の互換性ガイド』を参照してください。
- ターゲット ESXi ホストに、PXE をサポートするネットワーク アダプタ。
- PXE ブート向けに構成できる DHCP サーバ。DHCP の構成例を参照してください。
- TFTP サーバ。
- TFTP トラフィックを許可するネットワーク セキュリティ ポリシー(UDP ポート 69)。
- レガシー BIOS の場合は、IPv4 ネットワークのみを使用できます。UEFI の PXE ブートの場合は、IPv4 または IPv6 ネットワークを使用できます。
- (オプション)インストール スクリプト(キックスタート ファイル)。
- ほとんどの場合、ネイティブ VLAN を使用します。PXE ブートで使用する VLAN ID を指定する場合は、NIC が VLAN ID 仕様をサポートしていることを確認します。
レガシー BIOS システムの場合は、バージョン 3.86 の SYSLINUX パッケージを取得します。詳細については、『
ネットワーク ブートの背景情報』を参照してください。
手順
- ESXi ホストでレガシー BIOS ファームウェアのみが実行されている場合は、PXELINUX を取得して、構成します。
- SYSLINUX バージョン 3.86 を取得し、解凍した pxelinux.0 ファイルを TFTP サーバの最上位の /tftpboot ディレクトリにコピーします。
- 次のコード モデルを使用して、PXELINUX 構成ファイルを作成します。
ESXi-7.x.x-XXXXXX は、
ESXi インストーラ ファイルが含まれる TFTP サブディレクトリの名前です。
DEFAULT install
NOHALT 1
LABEL install
KERNEL ESXi-7.x.x-XXXXXX/mboot.c32
APPEND -c ESXi-7.x.x-XXXXXX/boot.cfg
IPAPPEND 2
- PXELINUX ファイルを TFTP サーバの /tftpboot/pxelinux.cfg ディレクトリに保存します。ファイルには、すべてのホストがデフォルトでこのインストーラを起動するかを指定したファイル名を使用します。
オプション |
説明 |
同じインストーラ |
すべてのホストがデフォルトでこの ESXi インストーラを起動するには、ファイルに default という名前を付けます。 |
異なるインストーラ |
このファイルを使用して起動するホストを限定するには、ファイル名にインストール先ホスト マシンの MAC アドレス (01-mac_address_of_target_ESXi_host) を使用します。たとえば 01-23-45-67-89-0a-bc のようになります。 |
- ESXi ホストで UEFI ファームウェアが実行されている場合は、ESXi インストーラ ISO イメージから TFTP サーバ上の /tftpboot フォルダに efi/boot/bootx64.efi ファイルをコピーし、ファイル名を mboot.efi に変更します。7.0 Update 3 以降の場合は、efi/boot/crypto64.efi ファイルも /tftpboot フォルダにコピーします。
注: 通常、
mboot.efi の新しいバージョンは、
ESXi の前のバージョンを起動できますが、
mboot.efi の前のバージョンは、
ESXi の新しいバージョンを起動できない場合があります。異なるホストを構成して異なるバージョンの
ESXi インストーラを起動する場合は、最新バージョンの
mboot.efi を使用します。
- DHCP サーバを構成します。
- TFTP サーバの最上位 /tftpboot ディレクトリの下にサブディレクトリを作成し、格納される ESXi のバージョンの名前を付けます。たとえば /tftpboot/ESXi-7.x.x-xxxxx のようになります。
- ESXi インストーラ イメージのコンテンツを、新しく作成したディレクトリにコピーします。
- boot.cfg ファイルを修正します。
- 次の行を追加します。
prefix=ESXi-7.x.x-xxxxxx
ESXi-7.x.x-xxxxxx
は、TFTP サーバのルート ディレクトリに対して相対的なインストーラ ファイルのパス名です。
-
kernel=
と modules=
の行のファイル名がスラッシュ (/) で始まる場合は、このスラッシュを削除します。
- kernelopt= の行に文字列 cdromBoot が含まれている場合は、その文字列のみを削除します。
- (オプション) スクリプトを使用したインストールの場合は、boot.cfg ファイルの kernel コマンドの後の行に
kernelopt
オプションを追加して、インストール スクリプトの場所を指定します。
次のコードをモデルとして使用します。
XXX.XXX.XXX.XXX には、インストール スクリプトが置かれたサーバの IP アドレスを指定します。
esxi_ksFiles は、
ks.cfg ファイルが格納されているディレクトリです。
kernelopt=ks=http://XXX.XXX.XXX.XXX/esxi_ksFiles/ks.cfg
- ESXi ホストで UEFI ファームウェアが実行されている場合は、すべての UEFI ホストで同じインストーラを起動するかどうかを指定します。
オプション |
説明 |
同じインストーラ |
/tftpboot/boot.cfg に boot.cfg ファイルをコピーまたはリンクします。 |
異なるインストーラ |
- /tftpboot のサブディレクトリを作成します。名前には、たとえば 01-23-45-67-89-0a-bc のようにターゲットのホストマシンの MAC アドレス (01-mac_address_of_target_ESXi_host) を使用します。
- このディレクトリ(たとえば /tftpboot/01-23-45-67-89-0a-bc/boot.cfg)に、ホストの boot.cfg ファイルをコピー(またはリンク)します。
|