About the TFTP Server, PXELINUX, and gPXE

Trivial File Transfer Protocol (TFTP) is similar to the FTP service, and is typically used only for network booting systems or loading firmware on network devices such as routers.

You can also acquire a TFTP server from one of the packaged appliances on the VMware Marketplace.

The PXELINUX and gPXE environments allow your target machine to boot the ESXi installer.

If you do not use gPXE, you might experience problems while booting the ESXi installer on a heavily loaded network. TFTP is sometimes unreliable for transferring large amounts of data.

If you use PXELINUX without gPXE, the pxelinux.0 binary file, the configuration file, the kernel, and other files are transferred by TFTP. If you use gPXE, only the gpxelinux.0 binary file and configuration file are transferred by TFTP. With gPXE, you can use a Web server to transfer the kernel and other files required to boot the ESXi installer.

NOTE VMware tests PXE booting with PXELINUX version 3.86


To PXE boot the ESXi installer, the DHCP server must send the address of the TFTP server and a pointer to the pxelinux.0 or gpxelinux.0 directory

image

The DHCP server is used by the target machine to obtain an IP address. The DHCP server must be able to determine whether the target machine is allowed to boot and the location of the PXELINUX binary (which usually resides on a TFTP server). When a machine attempts to PXE boot, the DHCP server provides an IP address and the location of the gpxelinux.0 binary file on the TFTP server.

image

When the target machine first boots, it broadcasts a packet across the network requesting this information to boot itself. The DHCP server responds.

About PXE Configuration Files

The PXE configuration file defines the menu displayed to the target ESXi host as it boots up and contacts the TFTP server. You need a PXE configuration file to PXE boot the ESXi installer. The TFTP server constantly listens for PXE clients on the network. When it detects that a PXE client is requesting PXE services, it sends the client a network package that contains a boot menu.

Required Files

In the PXE configuration file, you must include paths to the following files:

· mboot.c32 is the boot loader.

· boot.cfg is the boot loader configuration file which is shown below

image

192.168.73.168 is IIS Server where ESXi5.0 ISO files are extracted and ks.cfg file is created

At boot time you might need to specify options to access the kickstart file. You can enter boot options by

pressing Shift+O in the boot loader. For a PXE boot installation, you can pass options through the kernelopt line of the boot.cfg file as shown above. A ks=… option must be given, to specify the location of the installation script. Otherwise, a scripted installation or upgrade will not start. If ks=… is omitted, the text installer will proceed.

 

About the boot.cfg File

The boot loader configuration file boot.cfg specifies the kernel, the kernel options, and the boot modules that the mboot.c32 boot loader uses in an ESXi installation. The boot.cfg file is provided in the ESXi installer. You can modify the kernelopt line of the boot.cfg file to specify the location of an installation script or to pass other boot options.

Contents of ks.cfg (answer file)

# Any line preceded with ‘#’ is a comment.

#

# Sample scripted installation file

#

# Accept the VMware End User License Agreement

vmaccepteula

# Set the root password for the DCUI and Tech Support Mode

rootpwmypassword

# Install on the first local disk available on machine

install –firstdisk –overwritevmfs

# Set the network to DHCP on the first network adapater

network –bootproto=dhcp –device=vmnic0

VMFS Partitioning

The ESXi installer creates the initial VMFS volumes on the first blank local disk found. To add disks or modify the original configuration, use the vSphere Client. This practice ensures that the starting sectors of partitions are 64K-aligned, which improves storage performance.

NOTE For SAS-only environments, the installer might not format the disks. For some SAS disks, it is not possible to identify whether the disks are local or remote. After the installation, you can use the vSphere Client to set up VMFS.