[openstack-dev] [ironic] reducing tftp usage and separating boot control from dhcp config

Jay Pipes jaypipes at gmail.com
Thu May 9 15:13:25 UTC 2013


On 05/09/2013 09:39 AM, Jarrod B Johnson wrote:
> Hello, wanted to measure the relative interest in two related efforts I
> could work on.  In general, I'm considering bringing over much of the
> capability of xCAT's deployment facility over to Ironic, but wanted to
> highlight a couple to start with.
> 
> -An openstack tailored proxydhcp server.  This would mean the boot
> control aspect would be cleanly split from network identity control.
>  This would allow the bootstrap program to be more adaptive to UEFI and
> BIOS style boot.  Given the limitations of python, I'd probably
> implement this as a moderately standalone C program (e.g. the ability to
> get at IP_PKTINFO afaict isn't cleanly possible until python 3.3).  I
> can only be confident with x86, ARM I think would work with some
> different logic, POWER would not work.
> -If a system does a PXE request, then send down a second stage
> bootloader.  Then that bootloader would download third stage bootloader
> (pxelinux.0/elilo/grub2/efibootmgfw.efi/pxeboot.n12/esxboot.c32/esxboot.efi)
> and would provide/download kernel/initrd/wim/multboot modules over https
> or http.  This would be iPXE based (perhaps the xNBA branch that I
> established for xCAT).  A patched esxboot would also be relevant.  On
> EFI Linux, elilo could work with patch (as it does for xCAT), but I
> might see about grub2 depending on whether it will do something with
> Simple filesystem or not.  The impetus for not elilo would be figuring
> out the most straightforward path to target-side initrd concatenation.
>  I presume there is a desire to ultimately not have many copies of the
> same initrd data, but I plan to also take advantage of initrd injection
> for other features.  I can do server side injection into initrds, but it
> would mean unique initrds per target.

Hi Jarrod, I have a few starter questions for you.

1) What benefit would xCAT bring to OpenStack deployments that do not
use IBM hardware?

2) How is xCAT different from IPMI + Cobbler/PXE/tftp?

3) Given that neither the above proposed solutions is Python-based, what
plans are you thinking about for how to make the eventual solution
packagable and installation via the methods that most folks use for
deployment (Chef/Puppet/etc)

Thanks!
-jay



More information about the OpenStack-dev mailing list