Discover nodes, knowing IP range for their BMCs and the default IPMI credentials

Registered by Dmitry Tantsur

*** Create a new action tripleo.baremetal.validate_bmc

input:
- IP address
- IPMI credentials

Try contacting the node using ipmitool with given credentials.
Return success, if succeeds to fetch power state.

*** Create the following workflow:

inputs:
- network range
- default IPMI credentials
- default driver (= pxe_ipmitool)

workflow:
- fetch IPMI addresses for existing ironic nodes
- loop over the provided network range, excluding existing nodes
-- invoke tripleo.baremetal.validate_bmc
-- if it succeeds, add a node to ironic with ipmi_address and given credentials.

Blueprint information

Status:
Complete
Approver:
Emilien Macchi
Priority:
Medium
Drafter:
Dmitry Tantsur
Direction:
Approved
Assignee:
Dmitry Tantsur
Definition:
Approved
Series goal:
Proposed for pike
Implementation:
Implemented
Milestone target:
milestone icon pike-rc2
Started by
Dmitry Tantsur
Completed by
Emilien Macchi

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/node-discovery-by-range,n,z

Addressed by: https://review.openstack.org/462577
    Add workflow for IPMI nodes discovery

Addressed by: https://review.openstack.org/471767
    [WIP] Add 'overcloud node discover' command

Addressed by: https://review.openstack.org/476909
    Document node auto-discovery

Addressed by: https://review.openstack.org/477514
    Document node auto-enrollment

Addressed by: https://review.openstack.org/488526
    Add 'discover and enroll nodes' workflow

See https://blueprints.launchpad.net/tripleo/+spec/gui-node-discovery-by-range for Queens's work (UI part).

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.