Doctor Data Source

https://blueprints.launchpad.net/vitrage/+spec/doctor-datasource

This blueprint describes the datasource that will receive notifications from OPNFV Doctor monitor

Problem description

In order for Vitrage to be accepted as a reference implementation for the OPNFV Doctor Inspector component, it should be able to receive alarm notifications from the Doctor monitor.

Proposed change

The Doctor datasource will receive notifications in the format defined by Doctor SB API (see the reference below):

{
    'event': {
        'time': '2016-04-12T08:00:00',
        'type': 'compute.host.down',
        'details': {
            'hostname': 'compute-1',
            'source': 'sample_monitor',
            'cause': 'link-down',
            'severity': 'critical',
            'status': 'down',
            'monitor_id': 'monitor-1',
            'monitor_event_id': '123',
        }
    }
}

Upon receiving such a notification, the Doctor datasource will create or delete a corresponding alarm in Vitrage, based on the ‘status’ field.

In addition, a new evaluator template will be added in order to:
  • Create deduced alarms on the VMs running on the host

  • Modify the states of the host and the VMs to ERROR

  • Call Nova force-down API to mark that the host is down

REST API impact

The Doctor monitor sends its alarms in REST format. Another blueprint discusses the SB API that should be added to Vitrage in order to support it. See https://blueprints.launchpad.net/vitrage/+spec/support-inspector-sb-api

Implementation

Assignee(s)

Primary assignee:

ifat-afek

Work Items

  • Implement the Doctor datasource

  • Write a template for creating deduced alarms on the VMs and calling Nova mark host down

Testing

The changes will be tested by unit tests, and later on also by Doctor test scripts.

References