Bug 1464523

Summary: Unable to introspect/provision UEFI enabled KVM machines with Ironic
Product: Red Hat OpenStack Reporter: Dan Yasny <dyasny>
Component: ipxeAssignee: RHOS Maint <rhos-maint>
Status: CLOSED DUPLICATE QA Contact: Shai Revivo <srevivo>
Severity: low Docs Contact:
Priority: unspecified    
Version: 12.0 (Pike)CC: apevec, bfournie, dyasny, lhh, mburns, slinaber, srevivo, tvignaud
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-09-19 18:22:41 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:
Embargoed:

Description Dan Yasny 2017-06-23 16:12:01 UTC
Description of problem:
When trying to introspect or provision KVM VMs with UEFI enabled, Ironic times out.

The VM console looks like it's looping over the NICs, trying to pxeboot each of them. I can see DHCP being picked up, then ipxe.efi, and then it just hops to the next NIC, until the introspection times out for the node.

Version-Release number of selected component (if applicable):

puppet-ironic-11.2.0-0.20170611220351.0fa87ae.el7ost.noarch
openstack-ironic-conductor-8.0.1-0.20170610002959.adf3461.el7ost.noarch
python-ironic-lib-2.7.0-0.20170331023537.8d899bd.el7ost.noarch
openstack-ironic-inspector-5.1.1-0.20170608115120.a46e708.el7ost.noarch
python-ironicclient-1.13.0-0.20170512184144.7cceefe.el7ost.noarch
openstack-ironic-api-8.0.1-0.20170610002959.adf3461.el7ost.noarch
python-ironic-inspector-client-1.12.0-0.20170331023022.045fd9e.el7ost.noarch
openstack-ironic-common-8.0.1-0.20170610002959.adf3461.el7ost.noarch
dnsmasq-2.76-2.el7.x86_64
dnsmasq-utils-2.66-21.el7.x86_64
ipxe-roms-qemu-20170123-1.git4e85b27.el7.noarch
ipxe-bootimgs-20170123-1.git4e85b27.el7.noarch

How reproducible:
always

Steps to Reproduce:
1. deploy undercloud
2. create some UEFI enabled VMs[1] and register them
3. try to run introspection

Actual results:
as described above

Expected results:
introspection successful

Additional info:
please see https://bugzilla.redhat.com/show_bug.cgi?id=1462351 for the details about how KVM/libvirt were set up to ensure UEFI works and does PXEboot.

Comment 1 Dmitry Tantsur 2017-06-26 15:10:11 UTC
Could you please provide details on how exactly you've set your KVM VMs with UEFI?

Comment 2 Dmitry Tantsur 2017-06-26 15:11:47 UTC
Also please try tcpdump-ing br-ctlplane to catch the DHCP traffic.

Comment 3 Dan Yasny 2017-06-27 14:50:35 UTC
The domxml for the VM in use is at https://bugzilla.redhat.com/show_bug.cgi?id=1462351#c4

You can simply generate a VM with proper configs by installing RHEL7.4, OVMF and running virt-install --boot uefi

I don't have a reproducer handy to get the dumps atm, but I'll have something set up when some more urgent stuff is finished

Comment 4 Bob Fournier 2017-08-24 20:22:52 UTC
Dan - any luck in reproducing this?

Comment 5 Dan Yasny 2017-08-24 20:27:30 UTC
(In reply to Bob Fournier from comment #4)
> Dan - any luck in reproducing this?

every single time I tried.

Comment 6 Bob Fournier 2017-08-31 21:36:58 UTC
Dan - can you try the workaround here to dnsmasq.conf?https://bugzilla.redhat.com/show_bug.cgi?id=1479386

Comment 7 Bob Fournier 2017-09-19 18:22:41 UTC
Dan - I'm marking this is as a dup of 1479386 which fixes an introspection UEFI issue. From the description this sounds very similar - DHCP works and the ipxe.efi is downloaded but it never proceeds past that as the dnsmasq.conf will keep providing ipxe.efi if EFI is set.

If the problem still occurs even with the fix for 1479386 or a workaround to change the settings in /etc/ironic/dnsmasq.conf. then please reopen this.

*** This bug has been marked as a duplicate of bug 1479386 ***

Comment 8 Bob Fournier 2017-09-19 18:24:47 UTC

*** This bug has been marked as a duplicate of bug 1489192 ***