I notice when creating buildiso for systems using a static IP setup, the code attempts to pull in the IP info for the boot line e.g. from the buildiso code
# add network info to avoid DHCP only if it is available
if data.has_key("bonding_master_eth0") and data["bonding_master_eth0"] != "": primary_interface = data["bonding_master_eth0"] else: primary_interface = "eth0"
......
The issue with above is that for large systems with multiple NIC's its very common (in our environment) for eth0 not to be the boot interface, we also have a vmware vpshere server build working with cobbler and here the interfaces are called vmnic0,1,2 ... so there is never a eth0
I know were not happy with adding extra options to cobbler but something like --bootinf=<interface> would help change the code above, this could be a check button in the webui. When set we could also add ksdevice=mac else ksdevice=<nic> if a mac was not supplied (or relevant code for o/s being installed).
Or is there another way to get cobbler to populate the correct data, for the boot line ? If I add this via the kernel_options things just get duplicated.
Cheers, Simon
On 07/21/2009 08:28 AM, Simon Woolsgrove wrote:
I notice when creating buildiso for systems using a static IP setup, the code attempts to pull in the IP info for the boot line e.g. from the buildiso code
# add network info to avoid DHCP only if it is available
if data.has_key("bonding_master_eth0") and data["bonding_master_eth0"] != "": primary_interface = data["bonding_master_eth0"] else: primary_interface = "eth0" ......
The issue with above is that for large systems with multiple NIC's its very common (in our environment) for eth0 not to be the boot interface, we also have a vmware vpshere server build working with cobbler and here the interfaces are called vmnic0,1,2 ... so there is never a eth0
I know were not happy with adding extra options to cobbler but something like --bootinf=<interface> would help change the code above, this could be a check button in the webui. When set we could also add ksdevice=mac else ksdevice=<nic> if a mac was not supplied (or relevant code for o/s being installed).
Well, the boot interface is already controlled using the kernel argument ksdevice for "regular" installs...
Or is there another way to get cobbler to populate the correct data, for the boot line ? If I add this via the kernel_options things just get duplicated.
Yeah, not sure ATM. There is definitely a way, just not sure how we do that without adding an option that is specific to static buildiso.
I am thinking we could possibly have the code add on static interface information from eth0 unless the kernel options for the blended series indicates ksdevice=eth1 or so forth, in which case we could get it from eth1.
This is a bit of niche handling, but makes buildiso work just like regular PXE or reinstalls, which I think is a good thing.
For koan, when doing static reinstalls, you have to specify the boot interface with --static-interface=eth1, which I would like it if this were all streamlined and not different between buildiso and koan, though koan's method won't work for buildiso because the buildiso would include multiple systems.
I think I'm ok with buildiso looking for ksdevice and using it where it has it.
Cheers, Simon _______________________________________________ cobbler mailing list cobbler@lists.fedorahosted.org https://fedorahosted.org/mailman/listinfo/cobbler
On Tue, 21 Jul 2009 09:55:05 -0400, Michael DeHaan mdehaan@redhat.com wrote:
On 07/21/2009 08:28 AM, Simon Woolsgrove wrote:
I notice when creating buildiso for systems using a static IP setup, the code attempts to pull in the IP info for the boot line e.g. from the buildiso code
# add network info to avoid DHCP only if it is available
if data.has_key("bonding_master_eth0") and data["bonding_master_eth0"] != "": primary_interface = data["bonding_master_eth0"] else: primary_interface = "eth0" ......
The issue with above is that for large systems with multiple NIC's its very common (in our environment) for eth0 not to be the boot interface, we also have a vmware vpshere server build working with cobbler and here the interfaces are called vmnic0,1,2 ... so there is never a eth0
On a separate note, I run into this question all the time. The solution is to come up with a cabling standard and force whomever is running your network cables to use that. The easiest thing to do is always use the first onboard for your management network, and to pxe/kickstart off of.
In addition to this, there are many scripts out there that reorder network cards during %pre so you get a consistent build every time, I'd really recommend looking into using one of those.
cobbler@lists.fedorahosted.org