You can use a TFTP server to PXE boot the ESXi installer, using PXELINUX and a PXE configuration file.
About this task
Verify that your environment has the following components:
The ESXi installer ISO image downloaded from the VMware Web site.
TFTP server that supports PXE booting with gPXE. See About the TFTP Server, PXELINUX, and gPXE.
DHCP server configured for PXE booting. See Sample DHCP Configuration.
Server with a hardware configuration that is supported with your version of ESXi. See VMware Compatibility Guide at http://www.vmware.com/resources/compatibility/search.php.
Network security policies to allow TFTP traffic (UDP port 69).
(Optional) Installation script, the kickstart file. See About Installation and Upgrade Scripts.
Network adapter with PXE support on the target ESXi host.
IPv4 networking. IPv6 is not supported for PXE booting.
Use a native VLAN in most cases. To specify the VLAN ID to be used with PXE booting, verify that your NIC supports VLAN ID specification.
- Create the /tftpboot/pxelinux.cfg directory on your TFTP server.
- On the Linux machine, install PXELINUX.
PXELINUX is included in the Syslinux package. Extract the files, locate the pxelinux.0 file, and copy it to the /tftpboot directory on your TFTP server.
- Configure the DHCP server to send the following information to each client host:
The name or IP address of your TFTP server
The name of your initial boot file, pxelinux.0
- Copy the contents of the ESXi installer image to the /var/lib/tftpboot directory on the TFTP server.
- (Optional) For a scripted installation, in the boot.cfg file, add the
kerneloptoption to the line after the kernel command, to specify the location of the installation script.
Use the following code as a model, where XXX.XXX.XXX.XXX is the IP address of the server where the installation script resides, and esxi_ksFiles is the directory that contains the ks.cfg file.
- Create a PXE configuration file.
This file defines how the host boots when no operating system is present. The PXE configuration file references the boot files. Use the following code as a model, where
XXXXXXis the build number of the ESXi installer image.
DEFAULT menu.c32 MENU TITLE ESXi-6.x.x-XXXXXX-full Boot Menu NOHALT 1 PROMPT 0 TIMEOUT 80 LABEL install KERNEL mboot.c32 APPEND -c location of boot.cfg MENU LABEL ESXi-6.x.x-XXXXXX-full ^Installer LABEL hddboot LOCALBOOT 0x80 MENU LABEL ^Boot from local disk
- Name the file with the media access control (MAC) address of the target host machine: 01-mac_address_of_target_ESXi_host.
For example, 01-23-45-67-89-0a-bc.
- Save the PXE configuration file in /tftpboot/pxelinux.cfg on the TFTP server.
- Boot the machine with the network adapter.