The primary advantage is the ability to do everything through httpd. This gives you the ability to bypass the layer 2 restriction of DHCP without having to resort to tricks like Cisco's ip-helper. This isn't the only advantage - gpxe lets you boot remotely over a LOT of different medium (AoE, iscsi, etc.). The newer versions of kvm/libvirt have built-in gpxe support for their virtual NIC drivers, so chain loading for a KVM guest isn't even required.
Thanks... that makes sense.
Seems like we *would* always be using httpd, though, in our case?. So I guess, to userland, the advantage is "it's faster and probably can boot more nodes at once". This follows.
I guess what I'm curious about is *IF* it will work on all legacy hardware, do we still need the old path around as a default? i.e. maybe normal PXE becomes the weird fallback option? Or does that not make sense?
Maybe there's not a good reason though, and we suspect gpxe will not work everywhere? Not sure what is offered in terms of boot menus, etc. Keeping those available would be important if we tried to do that.
(I'm also a bit curious why VMware ESX won't boot from pxelinux.0, but that's just for my info and unrelated)
- ks_mirror_name = string.join(distro.kernel.split('/')[-2:-1],'')
862
FYI -- This seems to imply the distro must be mirrored by Cobbler. It seems like the code needs to anticipate this this possibility?
Yes and no - there's no reason the http server in question has to be cobbler. Covering that case would be a todo, but I didn't give it priority since I believe the number of people who use the --available-as option are relatively small. I'm pretty sure that option doesn't work with esxi4 either (since at least 6 files need to be copied to the tftp directory), so I figured the people who'd use this feature right now for esxi5 wouldn't care about that limitation
IIRC, --available-as isan option to import.
I was thinking about the manual "cobbler distro add" case, where you might not even have a "tree" parameter at all, and the files might live on NFS somewhere.
I'd probably attempt to make sure the path *looked* like a cobbler path, and if not, maybe raise an error or something.
Maybe this is just the way I percieved it, but I basically view import as a shortcut path around distro add/profile add/etc, not the path you always have to go down.
Anyway, some way to yell at you if you're doing it wrong seemed to be my point.
if distro.kernel.find("ks_mirror") != -1: raise Exception("...")
or something like that
--Michael