V3 Diagnostics

Registered by Gary Kotton on 2013-12-11

Currently there is no defined format for VM diagnostics. In the review process of the VMware support for diagnostics it was decided that namespaces will be used for the diagnostics. This BP will ensure that all of the drivers that provide VM diagnostics will have a consistent format.
In addition to the predeifned data being returned the driver has the option of also adding in raw data.

https://wiki.openstack.org/wiki/Nova_VM_Diagnostics

Blueprint information

Status:
Complete
Approver:
John Garbutt
Priority:
Low
Drafter:
Gary Kotton
Direction:
Approved
Assignee:
Gary Kotton
Definition:
Approved
Series goal:
Accepted for juno
Implementation:
Implemented
Milestone target:
milestone icon 2014.2
Started by
Gary Kotton on 2013-12-16
Completed by
John Garbutt on 2014-08-27

Related branches

Sprints

Whiteboard

Assuming we just add a new format for v3, and v2 remains in its current "mess", I am good with the scope of this, lets approve this --johnthetubaguy

Deferred to icehouse-3 as the blueprint was not approved by the icehouse-2 blueprint approval deadline. --russellb

Sponsored by: Matt Riedemann

2 stages:
1. API support
2. Driver support

<=============== REST of the data below is old and can and may be deleted ================>

1. add support to xen
2. add support to ibvirt - this will enatil updating the tempest tests too

Gerrit topic: https://review.openstack.org/#q,topic:bp/diagnostics-namespace,n,z

Addressed by: https://review.openstack.org/61525
    xenapi: add namespace for diagnostics

Addressed by: https://review.openstack.org/61753
    libvirt: add namespace for diagnostics

IMHO this is a really very bad idea. It guarantees that all existing users of this API will break come Icehouse. We should accept that this current API is flawed, *not* change it in any way for existing virt drivers. Add brand new APIs for any data where we need consistent cross-driver semantics. -- danpb

@dabpb: the API is backward compatible, that is, the V2 API will work the same was as it did before. The new format will only be relevant for the V3 API. You can see a detailed spec at the following wiki (if you can please look at https://wiki.openstack.org/wiki/Nova_VM_Diagnostics - please let me know what is missing)

Probably good to refer to the ML post on this:

http://lists.openstack.org/pipermail/openstack-dev/2013-October/016385.html

And you could also point out the recent patch to the vmware driver that was merged with namespace support in v2 -- mriedem

Addressed by: https://review.openstack.org/62240
    vmware: add namespace for diagnostics (v3 API only)

The blueprint description should be updated to reflect that this is only starting in the V3 API, V2 remains the same. Could also list the work items:

1. Enable toggling the virt drivers for use_namespace and make it true for the V3 API, false by default otherwise for backwards compatibility.
2. Handle the change in the libvirt driver.
3. Handle the change in the xenapi driver.
4. Handle the change in the vmware driver.
5. We should also work a Tempest V3 API test into this blueprint to validate the distinction between V2 and V3. That should be possible once work item #2 lands.

-- mriedem

http://lists.openstack.org/pipermail/openstack-dev/2013-December/022350.html

Gerrit topic: https://review.openstack.org/#q,topic:bp/v3-diagnostics,n,z

Addressed by: https://review.openstack.org/66338
    XenAPI: VM diagnostics for v3 API

Addressed by: https://review.openstack.org/66890
    libvirt: VM diagnostics (v3 API only)

v3 API patches have been deferred to Juno --russellb

Unapproved - please re-submit via nova-spec --johnthetubagy (20th March 2014)

Removed from next, as next is now reserved for near misses from the last milestone --johnthetubaguyAssuming we just add a new format for v3, and v2 remains in its current "mess", I am good with the scope of this, lets approve this --johnthetubaguy

Deferred to icehouse-3 as the blueprint was not approved by the icehouse-2 blueprint approval deadline. --russellb

Sponsored by: Matt Riedemann

2 stages:
1. API support
2. Driver support

<=============== REST of the data below is old and can and may be deleted ================>

1. add support to xen
2. add support to ibvirt - this will enatil updating the tempest tests too

Gerrit topic: https://review.openstack.org/#q,topic:bp/diagnostics-namespace,n,z

Addressed by: https://review.openstack.org/61525
    xenapi: add namespace for diagnostics

Addressed by: https://review.openstack.org/61753
    libvirt: add namespace for diagnostics

IMHO this is a really very bad idea. It guarantees that all existing users of this API will break come Icehouse. We should accept that this current API is flawed, *not* change it in any way for existing virt drivers. Add brand new APIs for any data where we need consistent cross-driver semantics. -- danpb

@dabpb: the API is backward compatible, that is, the V2 API will work the same was as it did before. The new format will only be relevant for the V3 API. You can see a detailed spec at the following wiki (if you can please look at https://wiki.openstack.org/wiki/Nova_VM_Diagnostics - please let me know what is missing)

Probably good to refer to the ML post on this:

http://lists.openstack.org/pipermail/openstack-dev/2013-October/016385.html

And you could also point out the recent patch to the vmware driver that was merged with namespace support in v2 -- mriedem

Addressed by: https://review.openstack.org/62240
    vmware: add namespace for diagnostics (v3 API only)

The blueprint description should be updated to reflect that this is only starting in the V3 API, V2 remains the same. Could also list the work items:

1. Enable toggling the virt drivers for use_namespace and make it true for the V3 API, false by default otherwise for backwards compatibility.
2. Handle the change in the libvirt driver.
3. Handle the change in the xenapi driver.
4. Handle the change in the vmware driver.
5. We should also work a Tempest V3 API test into this blueprint to validate the distinction between V2 and V3. That should be possible once work item #2 lands.

-- mriedem

http://lists.openstack.org/pipermail/openstack-dev/2013-December/022350.html

Gerrit topic: https://review.openstack.org/#q,topic:bp/v3-diagnostics,n,z

Addressed by: https://review.openstack.org/66338
    XenAPI: VM diagnostics for v3 API

Addressed by: https://review.openstack.org/66890
    libvirt: VM diagnostics (v3 API only)

v3 API patches have been deferred to Juno --russellb

Unapproved - please re-submit via nova-spec --johnthetubagy (20th March 2014)

Removed from next, as next is now reserved for near misses from the last milestone --johnthetubaguy

Marking this blueprint as definition: Drafting. If you are still working on this, please re-submit via nova-specs. If not, please mark as obsolete, and add a quick comment to describe why. --johnthetubaguy (20th April 2014)

Addressed by: https://review.openstack.org/101752
    VM diagnostics: introduce Diagnostics model object

Addressed by: https://review.openstack.org/101836
    VM diagnostics: add serializer to Diagnostics object

Gerrit topic: https://review.openstack.org/#q,topic:diagnostics-extend,n,z

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.