Spec for generic driver for openstack-cyborg
=======
Cyborg Generic Driver Proposal
=======
https:/
This spec proposes to provide the initial design for Cyborg's generic driver.
Problem description
===================
This blueprint proposes to add a generic driver for openstack-cyborg.
The goal is to provide users & operators with a reliable generic
implementation that is hardware agnostic and provides basic
accelerator functionality.
Use Cases
---------
* As a user, I should be able to identify and discover attached
accelerator backends.
* As a user, I should be able to send API requests to discover services
on each attached backend.
* As a user, I should be able to attach/detach/list accelerators to a
specific instance.
* As a user, I shoud be able to manage connection of the instance to the
accelerator.
Proposed change
===============
* Develop the generic driver implementation that supports CRUD operations for
accelerators for openstack-cyborg.
Alternatives
------------
None
Data model impact
-----------------
TBD
REST API impact
---------------
Documented in the Cyborg API spec.
Security impact
---------------
None
Notifications impact
-------
None
Other end user impact
-------
None
Performance Impact
------------------
None
Other deployer impact
-------
None
Developer impact
----------------
Developers will have access to a reference generic implementation which
can be used to build vendor-specific drivers.
Implementation
==============
Assignee(s)
-----------
Primary assignee:
Rushil Chugh <email address hidden>
Work Items
----------
This change would entail the following:
* Add a feature to identify and discover attached accelerator backends.
* Add a feature to list services running on the backend
* Add a feature to attach accelerators to the generic backend.
* Add a feature to detach accelerators from the generic backend.
* Add a feature to list accelerators attached to the generic backend.
* Add a feature to modify accelerators attached to the generic backend.
* Defining a reference implementation detailing the flow of requests between
the cyborg-api, cyborg-conductor and nova-compute services.
Dependencies
============
Dependent on Cyborg API and Agent implementations.
Testing
=======
* Unit tests will be added test Cyborg generic driver.
Documentation Impact
=======
None
References
==========
None
Blueprint information
- Status:
- Not started
- Approver:
- None
- Priority:
- Essential
- Drafter:
- Rushil Chugh
- Direction:
- Needs approval
- Assignee:
- Rushil Chugh
- Definition:
- New
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by