Add support for Ironic nodes to boot from Cinder volume

Registered by Ramakrishnan G (rameshg87)

This feature is about adding support for Ironic nodes to boot from Cinder volume. This includes

* Querying Ironic bare metal node to check the types of Cinder volume it can boot from.
* Using the above information for scheduling
* In spawn(), passing down the information about Cinder volume to Ironic node.

This depends on the following ironic spec:
https://review.openstack.org/#/c/200496/

Blueprint information

Status:
Complete
Approver:
Matt Riedemann
Priority:
Low
Drafter:
Ramakrishnan G (rameshg87)
Direction:
Approved
Assignee:
Hironori Shiina
Definition:
Approved
Series goal:
Accepted for pike
Implementation:
Implemented
Milestone target:
milestone icon pike-3
Started by
Matt Riedemann
Completed by
Matt Riedemann

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/ironic-boot-from-volume,n,z

Addressed by: https://review.openstack.org/215385
    Ironic: Support boot from Cinder volume

Addressed by: https://review.openstack.org/211101
    Add support for booting bare metals from Cinder volume

Addressed by: https://review.openstack.org/311696
    Add support booting baremetals from Cinder volume

Is https://review.openstack.org/#/c/311696/ the spec for this since this blueprint was brought up in the 20160602 nova meeting and said it was a specless change. -- mriedem

This blueprint won't be approved until the Ironic blueprint is approved. Note that the non-priority feature proposal freeze for Nova in the Newton release is today, 20160602, so this likely won't make the Newton release for Nova. -- mriedem

Ironic spec was merged - 20161110 hshiina
- https://review.openstack.org/#/c/200496/ Volume connection information for Ironic nodes
- https://review.openstack.org/#/c/294995/ Boot from Volume - Reference Drivers

The Ironic spec is merged which is what we said in previous nova meetings was the dependency for getting this blueprint approved, so that's all done now and this is approved for Pike. -- mriedem 20170210

Can someone please provide an update on the status of this change and whether or not the Ironic side changes are all implemented? -- mriedem 20170424

Ironic work is in progress. -- hshiina 20170425
- https://review.openstack.org/#/q/topic:bug/1526231
- https://review.openstack.org/#/q/topic:bug/1559691

Addressed by: https://review.openstack.org/468353
    Ironic: Get IP address for volume connector

Depended patches have been merged and python-ironicclient 1.14.0 supporting the volume feature has been released. The Nova patch is ready for review. -- hshiina 2017/07/11

While https://review.openstack.org/#/c/468353/ is still open for this blueprint, I'm told that is a nice to have feature and not required for the boot from volume functionality in Pike, so I'm going to mark this blueprint as complete and we should open a new blueprint in Queens for supporting boot from volume with Ironic using network-managed storage. -- mriedem 20170725

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.