Print

Print



Hi all,



Further to the discussion on PXE booting on 10G cards in this morning's meeting, here's a quick run-down of how we do it:



For the Intel X520 cards, there's a one-time operation to enable their boot BIOSes. This requires running a tool under either Windows or DOS (http://downloadcenter.intel.com/Detail_Desc.aspx?agr=Y&DwnldID=19186). We have a bootable floppy image incorporating it at http://www-pnp.physics.ox.ac.uk/~macmahon/622c-bu.img that you can use with a management card's Virtual Media support to boot the machine and enable PXE on any Intel cards found (you will then need to separately set the main BIOS boot order to actually boot off them). I believe the floppy image will work to enable any X520, regardless of transceiver type, but I've only actually used it on X520-DA2 cards.



When each machine PXE boots it does the (I think) fairly common thing and looks in a directory full of symlinks for one named after its MAC addres in hex, which then points to a pxelinux configuration; ours for installing SL5 looks like this:



default kickstart

prompt 0

ipappend 2



label kickstart

   kernel SL5/vmlinuz

   append initrd=SL5/initrd.img keymap=uk noipv6 ksdevice=bootif ks=http://163.1.136.128/kickstart/SL5/basesystem-64.ks



The important bits are 'ipappend 2' and 'ksdevice=bootif', which together add the MAC address of the interface that PXE booted to the Linux command line, and tell the installer to use that interface to get the kickstart file. The only mention of networking in the kickstart itself is:



network --bootproto dhcp



Which will cause the installer to just use whatever interface is available, in our configuration there will only be one (even in the case of a machine with multiple links connected so that it can use channel bonding, only one will get an address by DHCP; the server only hands out IP addresses to known MAC addresses, and only one MAC per machine is in the config file).



Ewan