Neutron advanced service vm support

Registered by Isaku Yamahata on 2013-12-18

Support Neutron advanced service vm framework and related features.
https://blueprints.launchpad.net/neutron/+spec/adv-services-in-vms

Blueprint information

Status:
Complete
Approver:
None
Priority:
Undefined
Drafter:
None
Direction:
Needs approval
Assignee:
None
Definition:
Obsolete
Series goal:
None
Implementation:
Blocked
Milestone target:
None
Started by
David Lyle on 2014-11-17
Completed by
Isaku Yamahata on 2015-05-29

Related branches

Sprints

Whiteboard

[amotoki -- Dec 21] Isaku, do you think what milestone should be targeted?
We need to decide the target milestone based on the progress on neutron side. From the past experience of Horizon-Neutron integration, Horizon integration patches to support Neutron new features tend to propose in the last time of development cycle. Horizon team would like not to request feature freeze exception for new features in Neutron. Patches to the corresponding Horizon support should be proposed earlier enough so that horizon reviewers have time to understand and review patches.
(Note that no targeted milestone means the blueprint may be out of radar of the release management.)

[Isaku -- Dec 23] This is for next series, i.e. J-cycle. Neutron part will be completed in Ice house cycle(at least implementation. merge might be done J cycle.)

[malini-k-bhandaru - March 17, 2014]

Please take a look at https://wiki.openstack.org/wiki/Horizon-NFV-configuration#NFV_instances

Horizon and Neutron folks: would this work?

Ideally, the list of service VM types and instances should be discoverable through glance, which is possible by adding meta data to the effect: "service-vm: true, service-type: FWaaS, basic-config: <xml>, advanced-config: <xml>,"

The <xml>, could be pointers to files with xml content, that ideally we could parse and auto generate a Horizon UI page. The XML schema could test for validity of some input, but more difficult to enforce richer input tests, which would need to be carried out by the vendor plugin that supports the NFV.

[Isaku -- March 18, 2014]
Can it be moved to google-doc to be able to comment/discusse on it?

The VM types and instances can be found through servicevm api.
Can you please have a look at API doc?
https://docs.google.com/document/d/1ZWDDTjwhIUedyipkDztM0_nBYgfCEP9Q77hhn1ZduCA/edit?pli=1#

The API provides the way to create/get/delete template for vm to spin up, to spin up/down VM based on template, and to enable/disable service in VM.

The relation of VM instance and services is not 1:1 relationship.
It's 1(VM):N(services) relationship. I.e. many services can be served by VM.
If a sort of clustering or distributed service is suported, it could be M:N relationship.

[malini-k-bhandaru - March 18, 2014]
Thank you Isaku for the link for the service VM registration blueprint and API, templates as you call it. I've updated the horizon UI suggestions to highlight that "Advanced configuration" button links to a service provider provided user interface for additional configuration. This precludes any need to change horizon should a service provider provide a new release of their product.

Additionally, a service provider for each a given service may provide multiple VM images, one could be a free version with either limited usage quota or smaller feature set while another may be a professional edition with unlimited use.

Further, there is no conflict with one to many, one VM image to many different services. All is well as long as the service VM API allows specifying how to launch each type of service in completeness.

Move to google docs .. another day!

[2014-11-17 | david-lyle] This seems to depend on work in Neutron that is not yet merged.

(?)

Work Items