Change-Id: I70bec71d5f41974bd0475016aeb9ce1790a33038 Partially-Implements: blueprint nova-compute-driver
2.3 KiB
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