Bug 1323130

Summary: Update ipxe-bootimgs package
Product: Red Hat Satellite Reporter: Lukas Zapletal <lzap>
Component: Bootdisk PluginAssignee: Eric Helms <ehelms>
Status: CLOSED ERRATA QA Contact: Sachin Ghai <sghai>
Severity: high Docs Contact:
Priority: unspecified    
Version: 6.2.0CC: bbuckingham, cwelton, lzap, sthirugn
Target Milestone: UnspecifiedKeywords: Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ipxe-bootimgs-20160127-1.git6366fa7a Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-07-27 09:30:03 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Lukas Zapletal 2016-04-01 10:53:08 UTC
We currently ship very old ipxe-bootimgs package. I think we try to match the version which is shipped by RHEL team, which is not good becaue they only ship iPXE for QEMU but we need generic iPXE with all the most up-to-date drivers:

[root@ibm-ls21-04 ~]# rpm -qa | grep ipxe
ipxe-roms-qemu-20130517-8.gitc4bce43.el7_2.1.noarch
ipxe-bootimgs-20130517-7.1fm.gitc4bce43.el7sat.noarch

This package is part of RHEL and it only contains QEMU-related stuff, therefore it's no big deal it's older:

[root@ibm-ls21-04 ~]# rpm -ql ipxe-roms-qemu
/usr/share/doc/ipxe-roms-qemu-20130517
/usr/share/doc/ipxe-roms-qemu-20130517/COPYING
/usr/share/doc/ipxe-roms-qemu-20130517/COPYRIGHTS
/usr/share/ipxe
/usr/share/ipxe/10222000.rom
/usr/share/ipxe/10ec8029.rom
/usr/share/ipxe/10ec8139.rom
/usr/share/ipxe/1af41000.rom
/usr/share/ipxe/8086100e.rom

We ship this package in Satellite 6 repository and as part of this ticket, I propose to rebase it to the latest stable version of iPXE:

[root@ibm-ls21-04 ~]# rpm -ql ipxe-bootimgs
/usr/share/doc/ipxe-bootimgs-20130517
/usr/share/doc/ipxe-bootimgs-20130517/COPYING
/usr/share/doc/ipxe-bootimgs-20130517/COPYRIGHTS
/usr/share/doc/ipxe-bootimgs-20130517/USAGE
/usr/share/ipxe
/usr/share/ipxe/ipxe.dsk
/usr/share/ipxe/ipxe.iso
/usr/share/ipxe/ipxe.lkrn
/usr/share/ipxe/ipxe.usb
/usr/share/ipxe/undionly.kpxe


It looks like there was an attempt to rebuild this package already, but it did not hit the repos (1 - private link). Since there is a have new rebuild for RHEL 7.3 (2 - private) which is a rebase (https://bugzilla.redhat.com/show_bug.cgi?id=1297853) and a good candidate to include for Satellite 6.2, we could simply retag that into Satellite 6.2.

Comment 2 Lukas Zapletal 2016-04-01 11:11:18 UTC
For some reason, ipxe-bootimgs is not part of the main RHEL7 repository, but "optional" one. I asked to move it up. Then we don't need to build it ourselves to avoid the extra repository (only for RHEL6 where ipxe is missing).

https://bugzilla.redhat.com/show_bug.cgi?id=1323135

Comment 5 Lukas Zapletal 2016-04-01 11:24:37 UTC
QA: To verify this bug, create a host or generic bootdisk and provision a host with VMWare keeping the network driver VM option on the default E1000 value.

Comment 9 Lukas Zapletal 2016-04-07 07:17:03 UTC
QA test scenario:

1) Verify version of the package ipxe-bootimgs-20160127-1.git6366fa7a.el7.noarch.rpm

2) Create new host for network-based provisioning

3) Generate Generic and Host image (not Full host image!)

4) Provision with both

Ideally test in libvirt, RHEV and VMWare.

Comment 11 Sachin Ghai 2016-04-25 11:18:43 UTC
Verified with sat6.2 beta snap9.2

I can see following ipxe-bootimgs package installed with snap9.2:

 ~]# rpm -qa | grep ipxe-bootimgs
ipxe-bootimgs-20160127-1.git6366fa7a.el7.noarch


I generated two bootdisks iso's "Generic and Host image" and I can provision hosts on libvirt using these images.

I'll test this on vmware and rhevm and will update my comments.

Comment 12 Sachin Ghai 2016-04-25 13:07:10 UTC
I generated similar bootdisks and this time I provisioned host using host-based image on rhevm CR successfully.

2016-04-25 09:02:12 [app] [I] Processing by HostsController#resources as HTML
2016-04-25 09:02:12 [app] [I]   Parameters: {"range"=>"7", "id"=>"sghaihost.katello-latest.satellite.lab.eng.rdu2.redhat.com"}
2016-04-25 09:02:12 [app] [I]   Rendered hosts/_resources.html.erb (7.0ms)
2016-04-25 09:02:12 [app] [I] Completed 200 OK in 41ms (Views: 7.9ms | ActiveRecord: 6.5ms)
2016-04-25 09:02:25 [app] [I] Started GET "/unattended/iPXE?&mac=00%3A1a%3A4a%3A3e%3Aa6%3A1d" for 10.8.111.37 at 2016-04-25 09:02:25 -0400
2016-04-25 09:02:25 [app] [I] Processing by UnattendedController#host_template as HTML
2016-04-25 09:02:25 [app] [I]   Parameters: {"mac"=>"00:1a:4a:3e:a6:1d", "kind"=>"iPXE"}
2016-04-25 09:02:25 [app] [I] Found sghaihost.katello-latest.satellite.lab.eng.rdu2.redhat.com
2016-04-25 09:02:26 [app] [I]   Rendered inline template (64.1ms)
2016-04-25 09:02:26 [app] [I] Completed 200 OK in 168ms (Views: 62.2ms | ActiveRecord: 27.0ms)
2016-04-25 09:02:37 [app] [I] Started GET "/unattended/provision?token=1c551489-f84d-4341-aab2-7978176e0c27" for 10.8.111.37 at 2016-04-25 09:02:37 -0400
2016-04-25 09:02:37 [app] [I] Processing by UnattendedController#host_template as */*
2016-04-25 09:02:37 [app] [I]   Parameters: {"token"=>"1c551489-f84d-4341-aab2-7978176e0c27", "kind"=>"provision"}
2016-04-25 09:02:37 [app] [I] Found sghaihost.katello-latest.satellite.lab.eng.rdu2.redhat.com
2016-04-25 09:02:40 [app] [I]   Rendered inline template (840.3ms)
2016-04-25 09:02:40 [app] [I] Completed 200 OK in 2982ms (Views: 782.4ms | ActiveRecord: 78.2ms)
201

Comment 13 Sachin Ghai 2016-04-26 10:53:45 UTC
On vmware setup, I generated generic and host based boot disk. and provision host via these successfully.

Please note that in case of generic (dhcp-proxy was associated to subnet, but no tftp) and in case of host-base, neither dhcp nor tftp boot was associated. I used static subnet. 

logs when using generic bootdisk:
===========================
2016-04-26 02:37:40 [app] [I] Started GET "/unattended/iPXE?&mac=00%3A50%3A56%3A96%3A53%3A00" for 192.168.100.13 at 2016-04-26 02:37:40 -0400
2016-04-26 02:37:40 [app] [I] Processing by UnattendedController#host_template as HTML
2016-04-26 02:37:40 [app] [I]   Parameters: {"mac"=>"00:50:56:96:53:00", "kind"=>"iPXE"}
2016-04-26 02:37:40 [app] [I] Found sghaigenboot.cfme.lab.eng.rdu2.redhat.com
2016-04-26 02:37:40 [app] [I]   Rendered inline template (41.1ms)
2016-04-26 02:37:40 [app] [I] Completed 200 OK in 225ms (Views: 38.7ms | ActiveRecord: 24.9ms)
2016-04-26 02:37:57 [app] [I] Started GET "/unattended/provision?token=6041d2c1-0a3d-401e-bb23-6f750ff4e50d" for 192.168.100.13 at 2016-04-26 02:37:57 -0400
2016-04-26 02:37:57 [app] [I] Processing by UnattendedController#host_template as */*
2016-04-26 02:37:57 [app] [I]   Parameters: {"token"=>"6041d2c1-0a3d-401e-bb23-6f750ff4e50d", "kind"=>"provision"}
2016-04-26 02:37:57 [app] [I] Found sghaigenboot.cfme.lab.eng.rdu2.redhat.com
2016-04-26 02:38:01 [app] [I]   Rendered inline template (466.2ms)
2016-04-26 02:38:01 [app] [I] Completed 200 OK in 3746ms (Views: 440.3ms | ActiveRecord: 44.8ms)

logs when using host-based bootdisk.
===================================

2016-04-26 03:53:53 [app] [I] Started GET "/unattended/iPXE?&mac=00%3A50%3A56%3A96%3A4a%3Ada" for 192.168.100.9 at 2016-04-26 03:53:53 -0400
2016-04-26 03:53:53 [app] [I] Processing by UnattendedController#host_template as HTML
2016-04-26 03:53:53 [app] [I]   Parameters: {"mac"=>"00:50:56:96:4a:da", "kind"=>"iPXE"}
2016-04-26 03:53:53 [app] [I] Found sghaihostbootdisk.cfme.lab.eng.rdu2.redhat.com
2016-04-26 03:53:53 [app] [I]   Rendered inline template (35.1ms)
2016-04-26 03:53:53 [app] [I] Completed 200 OK in 137ms (Views: 50.1ms | ActiveRecord: 15.6ms)
2016-04-26 03:54:03 [app] [I] Started GET "/unattended/provision?token=04e3a076-1ed0-42bc-85ec-375a3a73adb5&static=yes" for 192.168.100.9 at 2016-04-26 03:54:03 -0400
2016-04-26 03:54:03 [app] [I] Processing by UnattendedController#host_template as */*
2016-04-26 03:54:03 [app] [I]   Parameters: {"token"=>"04e3a076-1ed0-42bc-85ec-375a3a73adb5", "static"=>"yes", "kind"=>"provision"}
2016-04-26 03:54:03 [app] [I] Found sghaihostbootdisk.cfme.lab.eng.rdu2.redhat.com
2016-04-26 03:54:06 [app] [I]   Rendered inline template (601.8ms)
2016-04-26 03:54:06 [app] [I] Completed 200 OK in 2569ms (Views: 581.5ms | ActiveRecord: 38.3ms)

Comment 14 Sachin Ghai 2016-04-26 13:43:06 UTC
Note: QE tested bootdisk provisioning using following NIC drivers:

vmware:E1000 and VMXNET3
rhev: VirtIO
libvirt: VirtIO, rtl8139, e1000

Bootdisk provisioning via ipxe doesn't work with following two NIC drivers. Getting: "not a valid device model name"

ne2k_pci, pcnet,

Comment 16 Sachin Ghai 2016-04-26 16:29:49 UTC
Thanks Lzap.. I tested with following rpm versions and same updated in article

ipxe-roms-qemu-20130517-8.gitc4bce43.el7_2.1.noarch
ipxe-bootimgs-20160127-1.git6366fa7a.el7.noarch

Comment 18 Sachin Ghai 2016-05-09 06:37:11 UTC
Tested with:

libvirt-1.2.17-13.el7_2.4.x86_64
vmware 5.5

Comment 20 errata-xmlrpc 2016-07-27 09:30:03 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2016:1501