UPDATED after fixing problem --
I have a kickstart installation that works fine for our RHEL kickstart installations, and I'm trying to get fully working for ESXi installs. I have a working DHCP and TFTP service that works properly, and the images are served out via HTTP. I have PXE boot menu where I choose what configuration and OS I want, where for ESXi 6.0, I have:
LABEL ESXi 6.0 (VSAN - VMware ISO)
KERNEL /vsan/6.0_vmw/mboot.c32
APPEND -c /vsan/6.0_vmw/boot.cfg
MENU LABEL ESXi 6 install (VSAN)
where VMware-Esxi-6.0.0.iso is the ISO I downloaded from the Dell site, that has the Dell storage drivers. The esxi_default.cfg is as follows:
# Accept the VMware End User License Agreement
vmaccepteula
# Set the root password for the DCUI and Tech Support Mode
rootpw password-is-here
# Choose the first discovered disk to install onto
clearpart --alldrives --overwritevmfs
# The installation media is in the CD-ROM drive
install --firstdisk=usb --overwritevmfs
# Changes (i.e. prompting user) will occur after modules loaded, but before installation starts.
%pre --interpreter=busybox
#Redirects the output to /dev/ttyl and changes to tty1 virtual console.
exec < /dev/tty1 > /dev/tty1 2>&1
chvt 1
I put this together based on the Vsphere install doc at http://pubs.vmware.com/vsphere-60/index.jsp#com.vmware.vsphere.install.doc/GUID-870A07BC-F8B4-47AF-9476-D542BA53F1F5.html. Note that I put firstdisk=usb because I want to install on the SD card.
======================================================================================================
ISSUE #1:
I have tried kickstarting (i.e. rebooting the server, so there's no caching) changing the line in the PXE menu mentioned earlier:
1. append iso initrd=VMware-Esxi-6.0.0.iso raw ks=http://10.26.113.10/ks/vmware/esxi_default.cfg
2. append initrd=VMware-Esxi-6.0.0.iso raw ks=http://10.26.113.10/ks/vmware/esxi_default.cfg
3. append iso initrd=VMware-Esxi-6.0.0.iso raw
4. ks=http://10.26.113.10/ks/vmware/esxi_default.cfg
Of these,
#4 doesn't work (got an error that I didn't supply a disk image)
#1, 2, 3 all seem to result in the same thing, i.e. I get "Welcome to the VMware ESXi 6.0.0 Installation" screen, and get prompted to accept the EULA, etc., i.e. that the parameters above aren't working, and are getting ignored. Any thoughts as to why?
----------------------
UPDATE: Per my update above, this wasn't needed. However, I did need to specify the following in the boot.cfg for the ESXi files. Specifically, I had to copy the ESXi files from the ISO, then modify boot.cfg to: a) modify the path of the files, since I have a vsan directory, b) append the ks= parameter:
kernel=/vsan/6.0_vmw/tboot.b00
kernelopt=runweasel ks=http://10.26.113.10/ks/vmware/esxi_default.cfg
build=
modules=/vsan/6.0_vmw/b.b00 --- /vsan/6.0_vmw/jumpstrt.gz --- /vsan/6.0_vmw/useropts.gz --- /vsan/6.0_vmw/k.b00 --- /vsan/6.0_vmw/chardevs.b00 --- /vsan/6.0_vmw/a.b00 --- <snip>
This is part of PXE chaining required, since ESXi requires a different version of pxelinux; I had to install a separate instance of pxelinux, and have a menu choice in my original pxelinux install to redirect to the new pxelinux instance.
======================================================================================================
ISSUE #2:
I'd like to use a script I have now that, as part of the %post installation for RHEL installs, the kickstart process will query a URL, which will cause the user to be prompted for a hostname, and the script at the URL returns the netmask, gateway, etc., and fills in the appropriate values to configure the network on the new server. I'd like to do the same for ESXi.
- Is that possible with either the busybox of python shell? I think they're pretty barebones install; not sure if it has full functionality.
- Would this be possible in the %post section of the .cfg file, or would I have to put it in %firstboot section?
-----------------
UPDATE: I got this to work per http://www.virtuallyghetto.com/2015/10/how-to-prompt-for-user-input-during-an-interactive-or-scripted-install-of-esxi.ht…