Bug 1557368
Summary: | ovirt: Failed to get power state for node <uuid> . Error: invalid arguments to setopt | ||
---|---|---|---|
Product: | Red Hat OpenStack | Reporter: | mlammon |
Component: | openstack-ironic-staging-drivers | Assignee: | Derek Higgins <derekh> |
Status: | CLOSED ERRATA | QA Contact: | mlammon |
Severity: | high | Docs Contact: | |
Priority: | high | ||
Version: | 13.0 (Queens) | CC: | bfournie, derekh, dtantsur, jschluet, mlammon, ohochman |
Target Milestone: | beta | Keywords: | Triaged |
Target Release: | 13.0 (Queens) | Flags: | mlammon:
needinfo-
|
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | openstack-ironic-staging-drivers-0.9.0-3.el7ost | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2018-06-27 13:47:45 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
mlammon
2018-03-16 13:46:01 UTC
This bug is basically about not accepting the credentials provided within the driver_info section of each node imported. The workaround for this bug is to remove: # add the credentials in the ironic.conf [ovirt] address = rhvm.field.lab.eng.rdu.redhat.com user = admin@internal password = redhat insecure = true # restart conductor sudo systemctl restart openstack-ironic-conductor # remove driver_info from nodes from previously failed import source ~/stackrc ironic node-update osp13-controller-$i remove driver_info/ovirt_address; ironic node-update osp13-controller-$i remove driver_info/ovirt_password; ironic node-update osp13-controller-$i remove driver_info/ovirt_username; done # manually bring to manage, provide state for i in {1..3}; do ironic node-set-provision-state osp13-controller$i manage; done for i in {1..3}; do ironic node-set-provision-state osp13-controller$i provide; done > This bug is basically about not accepting the credentials provided within the driver_info section of each node imported.
A small but important clarification: does it just ignore them or fail if they are provided?
also > user = admin@internal this is incorrect, should be 'username' (https://github.com/openstack/ironic-staging-drivers/blob/master/ironic_staging_drivers/ovirt/ovirt.py#L65). are you sure you're providing the right username in the end? see: https://bugs.launchpad.net/ironic-staging-drivers/+bug/1761724 python-pycurl-7.19.0-19.el7.x86_64 >>> c = pycurl.Curl() >>> c.setopt(pycurl.URL, "http://a.com") >>> c.setopt(pycurl.URL, u"http://a.com") Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: invalid arguments to setopt In ./ironic_staging_drivers/ovirt/ovirt.py:_getvm Wrapping url in str(url) fixes the problem assuming the VM name doesn't contain multibyte characters (In reply to Derek Higgins from comment #4) > see: https://bugs.launchpad.net/ironic-staging-drivers/+bug/1761724 > > python-pycurl-7.19.0-19.el7.x86_64 > > >>> c = pycurl.Curl() > >>> c.setopt(pycurl.URL, "http://a.com") > >>> c.setopt(pycurl.URL, u"http://a.com") > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > TypeError: invalid arguments to setopt > > In ./ironic_staging_drivers/ovirt/ovirt.py:_getvm > Wrapping url in str(url) fixes the problem assuming the VM name doesn't > contain multibyte characters I see that on the undercloud latest osp13 puddle we got : [root@undercloud75 ~]# rpm -qa | grep python-pycurl python-pycurl-7.19.0-19.el7.x86_64 Does that mean this Bz should be ON_QA? (In reply to Omri Hochman from comment #6) > Does that mean this Bz should be ON_QA? Nope, the fix for this is in ironic-staging-drivers, the patch has merged upstream[1] but I don't think it has made it into the latest puddle yet Latest installed on RHV env using osp 13 puddle: 2018-04-26.3 Env: (undercloud) [stack@undercloud ~]$ rpm -qa | grep openstack-ironic-staging-drivers openstack-ironic-staging-drivers-0.9.0-4.el7ost.noarch Introspection of 3 controller , 1 compute worked using credentials from instackenv.json I did not have to provide in the /etc/ironic/ironic.conf file. Only one exception with existing ON_QA bug (https://bugzilla.redhat.com/show_bug.cgi?id=1536521) I deleted nodes after seeing bz#1536521 and imported again successfully with no error (undercloud) [stack@undercloud ~]$ openstack overcloud node import /home/stack/instackenv.json --provide Started Mistral Workflow tripleo.baremetal.v1.register_or_update. Execution ID: 79b62d24-dbec-4e68-8246-622de89b0f56 Waiting for messages on queue 'tripleo' with no timeout. 4 node(s) successfully moved to the "manageable" state. Successfully registered node UUID 1c322845-c5c8-4f4f-bec3-0ec9740b9411 Successfully registered node UUID b5bfa465-c510-4857-abcc-986403770f9b Successfully registered node UUID 79eb96db-bf0b-4c38-9c0a-057cac3d67e3 Successfully registered node UUID a927aca9-34ae-46e0-b92f-d36005460b1e Started Mistral Workflow tripleo.baremetal.v1.provide. Execution ID: b5794849-5c18-46e0-8b3a-3f8a20c043e0 Waiting for messages on queue 'tripleo' with no timeout. 4 node(s) successfully moved to the "available" state. This bug now verified 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/RHEA-2018:2086 |