removing pipeline from api

Registered by Liusheng

The ceilometer API server allows new samples to be posted via the
API. These are then processed through the pipeline and then
dispatched as required. This means the API server must use the
pipeline code and have a ``pipeline.yaml`` file, raising the
complexity of the code and the testing and install profile of the API.
An alternative would be for the API server to publish notifications
for the meters it receives which would then be processed by the
notification agent (which has a pipeline of its own) and then
dispatched.

Including the transformation pipeline in the API server increases
complexity on at least three dimensions for a single feature in the
API (creating samples) which is not commonly used (most samples are
produced via polling agents and notifications).

The use of the pipeline creates dependencies in code, testing and
installation that could be avoided. In code we must include the
pipeline modules and classes. In testing and installation we must
have a ``pipeline.yaml``.

In the installation case, if there are multiple API servers, the
``pipeline.yaml`` must be kept in sync across the hosts on which
those servers are installed. That's an unnecessary burden.

Blueprint information

Status:
Complete
Approver:
gordon chung
Priority:
Medium
Drafter:
Chris Dent
Direction:
Approved
Assignee:
Liusheng
Definition:
Approved
Series goal:
Accepted for liberty
Implementation:
Implemented
Milestone target:
milestone icon 5.0.0
Started by
gordon chung
Completed by
gordon chung

Related branches

Sprints

Whiteboard

Register a blueprint in launchpad about api-no-pipeline to track this feature (even the spec has been merged in openstack/ceilometer-specs)

The spec patch: https://review.openstack.org/#/c/143103/

----by liusheng 2015.6.23

Gerrit topic: https://review.openstack.org/#q,topic:bp/api-no-pipeline,n,z

Addressed by: https://review.openstack.org/192045
    Add handler of sample creation notification

Addressed by: https://review.openstack.org/193472
    Add support for posting samples to notification-agent via API

Addressed by: https://review.openstack.org/195409
    Add documentation about the usage of api-no-pipline

Addressed by: https://review.openstack.org/195570
    Revert "Add support for posting samples to notification-agent via API"

Addressed by: https://review.openstack.org/196330
    Add support for posting samples to notification-agent via API

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.