← Back to team overview

openstack team mailing list archive

Re: Guest PXE Boot

 

Neat!

Have you seen any of the work around nova baremetal (which is
transitioning to be called ironic?) Related to that is a set of "virtual
power drivers" which allow for treating virtual machines like real
machines - so that you can use nova to pxe boot a kvm or a virtualbox or
a vmware instance.

I know it's not exactly the same thing, but I don't know what you're
trying to accomplish. Perhaps what you want is similar enough to work
together?

Monty

On 05/10/2013 12:55 PM, David Hill wrote:
> Hi guys,
> 
>  
> 
>     I was trying to PXE boot a guest for quite some time now and I think
> I’ve found a solution that is kind of hackish but pretty simple.   I’m
> not quite sure it’s good to go in trunk but felt like I’d share it since
> I’ve been messing a while on this.  
> 
> If anybody have a better solution, I would really like to hear/see/try it …
> 
>  
> 
> Here is how I did it:
> 
>  
> 
> First, patch the libvirt/driver.py file:
> 
> --- /usr/lib/python2.6/site-packages/nova/virt/libvirt/driver.py.orig  
> 2013-05-10 16:25:17.787862177 +0000
> 
> +++ /usr/lib/python2.6/site-packages/nova/virt/libvirt/driver.py       
> 2013-05-10 16:26:39.442022870 +0000
> 
> @@ -87,6 +87,9 @@
> 
> LOG = logging.getLogger(__name__)
> 
>  
> 
> libvirt_opts = [
> 
> +    cfg.StrOpt('default_guest_boot_dev',
> 
> +               default='hd',
> 
> +               help='Sets the default guest boot device'),
> 
>      cfg.StrOpt('rescue_image_id',
> 
>                 default=None,
> 
>                 help='Rescue ami image'),
> 
> @@ -1792,7 +1795,7 @@
> 
>                                                     instance['name'],
> 
>                                                     "ramdisk")
> 
>              else:
> 
> -                guest.os_boot_dev = "hd"
> 
> +                guest.os_boot_dev = FLAGS.default_guest_boot_dev
> 
>  
> 
>          if FLAGS.libvirt_type != "lxc" and FLAGS.libvirt_type != "uml":
> 
>              guest.acpi = True
> 
>  
> 
>  
> 
> And add to nova.conf:
> 
> default_guest_boot_dev=network
> 
>  
> 
> And finally add to /etc/dnsmasq.conf
> 
> dhcp-boot=boot\x86\pxelinux.com,host_name,host_ip
> 
> dhcp-no-override
> 
>  
> 
> And restart dnsmasq.conf
> 
>  
> 
> In my actual setup, the guest will PXE boot, show the menu 60 seconds
> and then boot from hard disk after the 60 seconds timeout.
> 
>  
> 
>  
> 
> Thank you very much,
> 
>  
> 
> Dave
> 
> 
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~openstack
> Post to     : openstack@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~openstack
> More help   : https://help.launchpad.net/ListHelp
> 


Follow ups

References