Bug 1396270

Summary: [RFE][Ironic]Ironic driver for Redfish API
Product: Red Hat OpenStack Reporter: Sirius Rayner-Karlsson <akarlsso>
Component: openstack-ironicAssignee: Lucas Alvares Gomes <lmartins>
Status: CLOSED ERRATA QA Contact: Dan Yasny <dyasny>
Severity: medium Docs Contact:
Priority: medium    
Version: 12.0 (Pike)CC: achernet, akarlsso, dtantsur, dyasny, ietingof, jdonohue, jjung, mburns, nyechiel, racedoro, sasha, sgordon, smerrow, srevivo, tvvcox
Target Milestone: Upstream M2Keywords: FutureFeature, Triaged
Target Release: 12.0 (Pike)   
Hardware: All   
OS: Linux   
URL: https://github.com/hafe/ironic-hds
Whiteboard:
Fixed In Version: openstack-ironic-8.0.1-0.20170521082039.bd7143f.el7ost Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-12-13 20:52:28 UTC Type: Feature Request
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1281573, 1389435, 1396159, 1442136, 1458798, 1474453    

Description Sirius Rayner-Karlsson 2016-11-17 20:06:58 UTC
1. Description:

Feature request to include the Redfish API Ironic driver in OSP11/Ocata

2. Details
  a. Bugzilla dependencies (if any):

Unknown

  b. Hardware dependencies (if any):

Unknown

  c. Upstream information
     i. Date it will be upstream:

It's being upstreamed, https://github.com/hafe/ironic-hds, but require review, pointers and tips from Red Hat

    ii. Version:

Unknown

  d.     External links:

https://github.com/hafe/ironic-hds

  e.      Severity (U/H/M/L):

High

  f.       Business Priority (Must/High Want/Want):

Must

3. Business Justification
  a. Why is this needed:

The HDS-8000 hardware require an Ironic driver for bare-metal bring-up, and that requires leveraging the Redfish API.

  b.  What hardware is required (if any):

Unknown

  c.  Business impact:

Unknown

4. Primary Red Hat contact:

 * Jean-Philippe Jung, jjung, +14387960257 x8160257, +19494364606
 * Anders Rayner-Karlsson, akarlsso, +46850575634 x8265034, +46768052173 

5. Primary “Partner” contact:

 * Hans Feldt, hans.feldt

Comment 1 Sirius Rayner-Karlsson 2016-11-17 20:07:18 UTC
Some links:
	- Upstream bare metal to tenant feature overview (video)[1].
	- Ironic ML2 integration[2]
	- Deva’s python RedFish library (old)[3].
	- Ironic RedFish blueprint[4]
	- Ironic Python Agent[5]

[1] - https://www.openstack.org/summit/tokyo-2015/videos/presentation/tenant-network-isolation-for-bare-metal-deployments-with-neutron
[2] - https://blueprints.launchpad.net/ironic/+spec/ironic-ml2-integration
[3] - https://github.com/devananda/python-redfish
[4] - https://blueprints.launchpad.net/ironic/+spec/ironic-redfish
[5] - http://docs.openstack.org/developer/ironic-python-agent/

Comment 2 Sirius Rayner-Karlsson 2016-12-16 15:22:13 UTC
*** Bug 1369078 has been marked as a duplicate of this bug. ***

Comment 7 Dmitry Tantsur 2017-04-11 15:09:34 UTC
Do we know if the driver proposed upstream is going work for this case?

Also, are we going to get hardware to test it or should it be OtherQA?

Comment 9 Dmitry Tantsur 2017-04-13 16:41:02 UTC
Moving to Pike-2. The underlying library was released, the ironic patches are in good shape and undergo review right now.

Comment 10 Ramon Acedo 2017-05-22 17:49:15 UTC
Just to be clear this BZ tracks specifically the upstream redfish development with Sushy: https://github.com/openstack/sushy not https://github.com/hafe/ironic-hds as in the description.

Comment 11 Dmitry Tantsur 2017-05-22 17:58:33 UTC
Thanks for clarification. If so, the Ironic part is already available, and the TripleO bits are on review. We're well on track with it even for Pike-2.

Comment 12 Dmitry Tantsur 2017-05-23 14:48:34 UTC
With the TripleO patch merged, I think we can move it to POST.

Comment 15 Ilya Etingof 2017-11-13 14:20:57 UTC
With the great help from dyasny I have been able to pass through all the test cases [A].

I have configured two nodes via the instackenv.json [B] at Dan's test bench [C]. One node is ipmi-managed while the other works over redfish.

The redfish simulator [C] is installed on the Infrared undercloud and ran in parallel with the vbmc. So you can manage both libvirt-based instances (compute & controller) via either of the tools.

The only quirk I run into when importing instackenv is that you can't leave out pm_username  and pm_password JSON fields even if they are not actually used by the redfish driver.

You can play with the setup while it lasts.

A. http://file.rdu.redhat.com/~dyasny/RHELOpenStackPlatform_Ironic-RHOS12_Ironic_driver_for_Redfish_API.pdf
B. http://paste.openstack.org/show/626162/
C. sealusa25.mobius.lab.eng.rdu2.redhat.com:/root/venv/infrared/.workspaces/workspace_2017-11-10_21-49-45
D. https://github.com/openstack/sushy-tools

Comment 19 errata-xmlrpc 2017-12-13 20:52:28 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/RHEA-2017:3462