Hi Experts,
We are in the process of setting up a PXE boot in our environment and currently creating an implementation plan. This is what I have understood so far (I have a fair bit of understanding of PXE)
A typical TPMFOSD architecture is composed of the following nodes:
i) a DHCP server that works as a PXE client
ii) Tivoli Provisioning Manager for OS Deployment server that can be installed on the same machine as the DHCP or on another machine. This server acts as the PXE server
iii) A Database (MS Access Type) also embedded into the installation - Bare Metal server needs a DB to store information like Client Inventory (for automatic driver injection based on PCI discovery from BIOS) and Deployment Objects (images, drivers, packages, WinPEâŚ).
iv) A WebUI installed on the TPMFOSD server for administration purposes
The network boot sequence goes through the following steps:
i) Remote Computer Boot up either using a startup event or manually
ii) Network Boot: Press F12 to instruct the computer to boot on the network
iii) IP address discovery: The client broadcasts a DHCP request for an IP address. Any DHCP server that knows the target (that is, recognizes its hardware address) or which has a pool of freely distributable dynamic addresses, sends an IP address. The client takes the first answer and confirms it to the server. In addition to the IP address, the server gives some other network parameters to the target and information about the boot procedure to follow.
iv) OS deployment server discovery: In the case of PXE remote-boot, the client machine then proceeds to the discovery of the OS deployment server.
The OS deployment server/PXE Boot Server is responsible for delivering a network boot program to the client.The client responds to the first OS deployment server, which replies and downloads a NBP (Network Boot Program) When the PXE boot server is contacted, it provides:
- complete file path to the Network Bootstrap Program (NBP)
- PXE Boot Server type
The NBP is is transferred via TFTP and loaded into RAM and NBP is executed.
**This file detects the hardware architecture on the machine and this information is later used at the time of boot image download typically from an administrator defined location. (Which location?)
The client machine now downloads the Boot image, bootmgr.exe and BCD store. BootMGR and BCD store are used to initialize the WINPE environment. Boot image downloaded here would be dependent on the result of the architecture detection done earlier by the NBP file.
OS booting: When instructed by the OS configuration, the deployment engine removes itself from memory. The computer starts the operating system as if the target is booting from the hard disk.
Considerations: Use of IP helpers
If the DHCP and TPMOFSD are on different subnets, we can configure the router to use IP helpers.
I would like to know if there are any other considerations for setting up the PXE server, Any design best practices? What settings need to be done on the TPMFOSD server/ PXE server and most importantly which is the default boot file location which is returned after architecture detection and downloaded by the client. Can this be specified by the administrator?
Folks, please help me here with your inputs if you have already set this up in your environment and feel free to correct me if my understanding is incorrect!