Nova virtual machine driver spec
Change-Id: I70bec71d5f41974bd0475016aeb9ce1790a33038 Partially-Implements: blueprint nova-compute-driver
This commit is contained in:
parent
d3abd7de25
commit
0c2de55981
110
specs/version0.5/nova-compute-driver.rst
Normal file
110
specs/version0.5/nova-compute-driver.rst
Normal file
@ -0,0 +1,110 @@
|
||||
..
|
||||
This work is licensed under a Creative Commons Attribution 3.0 Unported
|
||||
License.
|
||||
|
||||
http://creativecommons.org/licenses/by/3.0/legalcode
|
||||
|
||||
===================
|
||||
Nova Compute Driver
|
||||
===================
|
||||
|
||||
Blueprint: https://blueprints.launchpad.net/octavia/+spec/nova-compute-driver
|
||||
|
||||
Octavia needs to interact with nova for creation of VMs for this version. This
|
||||
spec will flesh out all the methods described in the compute-driver-interface
|
||||
with nova VM specific commands.
|
||||
|
||||
Problem description
|
||||
===================
|
||||
This spec details operations for creating, updating, and modifying amphora that
|
||||
will hold the actual load balancer. It will utilize the nova client python api
|
||||
version 3 for the nova specific requests and commands.
|
||||
|
||||
Proposed change
|
||||
===============
|
||||
Expose nova operations
|
||||
|
||||
- Build: Will need to build a virtual machine according to configuration
|
||||
parameters
|
||||
|
||||
- Will leverage the nova client ServerManager method "create" to build a
|
||||
server
|
||||
|
||||
- Get: Will need to retrieve details of the virtual machine from nova
|
||||
|
||||
- Will leverage the nova client ServerManager method "get" to retrieve a
|
||||
server, and return an amphora object
|
||||
|
||||
- Delete: Will need to remove a virtual machine
|
||||
|
||||
- Will leverage the nova client ServerManager method "delete" for removal of
|
||||
server
|
||||
|
||||
- Status: Will need to retrieve the status of the virtual machine
|
||||
|
||||
- Will leverage the aforementioned get call to retrieve status of the server
|
||||
|
||||
Alternatives
|
||||
------------
|
||||
None
|
||||
|
||||
Data model impact
|
||||
-----------------
|
||||
Add fields to existing Amphora object
|
||||
|
||||
REST API impact
|
||||
---------------
|
||||
None
|
||||
|
||||
Security impact
|
||||
---------------
|
||||
None
|
||||
|
||||
Notifications impact
|
||||
--------------------
|
||||
None
|
||||
|
||||
Other end user impact
|
||||
---------------------
|
||||
None
|
||||
|
||||
Performance Impact
|
||||
------------------
|
||||
None
|
||||
|
||||
Other deployer impact
|
||||
---------------------
|
||||
None
|
||||
|
||||
Developer impact
|
||||
----------------
|
||||
Will need a nova service account and necessary credentials stored in config
|
||||
|
||||
Implementation
|
||||
==============
|
||||
|
||||
Assignee(s)
|
||||
-----------
|
||||
trevor-vardeman
|
||||
|
||||
Work Items
|
||||
----------
|
||||
Expose nova operations
|
||||
|
||||
Dependencies
|
||||
============
|
||||
compute-driver-interface
|
||||
|
||||
Testing
|
||||
=======
|
||||
Unit tests
|
||||
Functional tests
|
||||
|
||||
Documentation Impact
|
||||
====================
|
||||
None
|
||||
|
||||
References
|
||||
==========
|
||||
https://blueprints.launchpad.net/octavia/+spec/nova-compute-driver
|
||||
http://docs.openstack.org/developer/python-novaclient/api.html
|
Loading…
Reference in New Issue
Block a user