Implement a management service

Registered by aeva black

Implement a management service for Ironic. It needs to support functionality similar to other services and service managers within OpenStack, eg.:

* interact with other OpenStack services via client APIs (eg, quantum, cinder, glance)

* periodic tasks, eg,
-- poll hw status and update in-memory/in-db state
-- track long running processes, and terminate after timeouts

* RPC from ironic-api instances

* entrypoint-based loading of plugins per instance (heterogeneous hw may require different drivers in one manager)

* maintain state in DB, and re-sync state on resume

Blueprint information

Status:
Complete
Approver:
aeva black
Priority:
Essential
Drafter:
aeva black
Direction:
Approved
Assignee:
aeva black
Definition:
Approved
Series goal:
Accepted for havana
Implementation:
Implemented
Milestone target:
milestone icon havana-3
Started by
aeva black
Completed by
aeva black

Related branches

Sprints

Whiteboard

Addressed by: https://review.openstack.org/29804
    Implement ResourceTrackers and TaskTrackers.

Addressed by: https://review.openstack.org/30038
    Update manager and driver names.

Addressed by: https://review.openstack.org/30039
    Change 'nodes' to use more driver-specific JSON.

Addressed by: https://review.openstack.org/30040
    Rename the 'ifaces' table to 'ports'.

Addressed by: https://review.openstack.org/30041
    Reimplement reserve_nodes and release_nodes.

Addressed by: https://review.openstack.org/30551
    Initial skeleton for an RPC layer.

(?)

Work Items

Work items:
Load drivers via entrypoints: DONE
Create a basic resource manager: DONE
Add RPC between the API and Manager: DONE

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.