vitrage-specs/specs/newton/heat-datasource.rst
Dan Offek 80238b3535 Implements: blueprint vitrage-heat-datasource
Change-Id: I0513fae7323abcd443f4d846f50cc52c36a49c16
2016-07-21 13:53:34 +00:00

4.2 KiB

Heat Datasource Driver - get_all implementation

launchpad blueprint: https://blueprints.launchpad.net/vitrage/+spec/heat-datasource-get-all

This blueprint describes the Heat driver for Vitrage Datasource, and its implementation for get_all Stacks and Stack Resources.

Problem description

Heat stacks should be added to Vitrage Graph via Vitrage Datasources. This requires writing a Datasource driver for heat.

The driver should support two modes:

  • get_all: query all Heat Stacks.
  • notifications: notify the datasource upon a change in a stack definition or state

This blueprint refers to get_all implementation.

Proposed change

Heat driver will be configured with:

  • Poll interval in seconds (default: 600)

Every poll-interval seconds, Heat Driver will call Heat list all stacks API. The stacks will be converted to Vitrage datasource events and passed to Vitrage Graph queue.

Alternatives

None

Data model impact

Heat event will be sent to Vitrage Graph queue with the following properties:

Field Description Examples
stack_id The stack UUID e47e1be6-3598-46e6-bb63-0cc9a4e35ad7
name The stack name mystack
description The stack description mydescription
user_project_id The ID of the tenant that owns the alarm 5542b27142154f30b32dea6238aa81aa
owner The ID of the user that owns the alarm 5555527142154f30b32dea6238aa81aa
status The stack status in progress / failed
status_reason The stack status reason Stack create started ....

REST API impact

None

Versioning impact

None

Other end user impact

None

Deployer impact

Heat driver should be configured

Developer impact

None

Horizon impact

None

Implementation

Assignee(s)

Primary assignee:

dan-offek

Work Items

None

Dependencies

None

Testing

This blueprint requires unit tests and Tempest tests.

Documentation Impact

None

References

Datasource main blueprint: https://github.com/openstack/vitrage-specs/blob/master/specs/mitaka/vitrage-datasource.rst