I have set up Autodeploy in my home lab. It uses a physical box installed with the latest ESXi 5.0 build that runs a virtual vCenter server and some virtual ESXi 5.0 instances (also running the latest build). A virtual Linux box serves as DHCP and TFTP server. All virtual boxes are on the same private subnet (192.168.33.0/255 in this example).
When I PXE-boot the virtual ESXi servers they fail to retrieve the /tramp file from the TFTP server. Instead of loading it from the TFTP server that is configured in the DHCP options they try to load it from tftp://0.0.0.0 (see screen shot below) which fails of course.
I checked the config and went through the Troubleshooting vSphere Auto Deploy KB article. Everything is properly set up. If I interrupt the gPXE boot process and enter manual mode by pressing Ctrl-B then I am able to successfully boot the machine by using the commands
So, I believe this is a problem with gPXE boot that probably only occurs with nested ESXi hosts. A very similar bug exists with Redhat based virtualized servers (see https://bugzilla.redhat.com/show_bug.cgi?id=632716). The workaround/solution given there is specific to KVM and not applicable to VMware, so I'm stuck here.
Has anyone else had this problem? Any solution for that?
Thanks for any hints
Found it out myself ... a stupid, but non-obvious error:
In the options of the DHCP server I specified an "option tftp-server-name" for the tftpboot server (looked obvious to me). However, you need to specify "next-server" instead of this. Then everything works fine.
So, no bug in gPXE ... the Redhat bug report on this is misleading.