Merge "switch dispatcher references to publisher"

This commit is contained in:
Jenkins 2017-02-27 17:04:44 +00:00 committed by Gerrit Code Review
commit 87432a67c3
4 changed files with 38 additions and 66 deletions

View File

@ -189,7 +189,7 @@ publishers should be the same as the related names of the plugins in
:file:`setup.cfg`. :file:`setup.cfg`.
The default configuration can be found in `pipeline.yaml`_. For more details about The default configuration can be found in `pipeline.yaml`_. For more details about
how to configure dispatchers under publisher in the :ref:`dispatcher-configuration`. how to configure publishers, see :ref:`publisher-configuration`.
.. _pipeline.yaml: https://git.openstack.org/cgit/openstack/ceilometer/tree/ceilometer/pipeline/data/pipeline.yaml .. _pipeline.yaml: https://git.openstack.org/cgit/openstack/ceilometer/tree/ceilometer/pipeline/data/pipeline.yaml

View File

@ -64,50 +64,35 @@ For polling agent using ceilometer-polling.conf, settings like::
Doing this, it's easy to listen/receive data from multiple internal and external services. Doing this, it's easy to listen/receive data from multiple internal and external services.
.. _dispatcher-configuration: .. _publisher-configuration:
Using multiple dispatchers Using multiple publishers
========================== =========================
.. index:: .. index::
double: customizing deployment; multiple dispatchers double: customizing deployment; multiple publishers
Ceilometer allows multiple dispatchers to be configured in pipeline so that Ceilometer allows multiple publishers to be configured in pipeline so that
data can be easily sent to multiple internal and external systems. Dispatchers data can be easily sent to multiple internal and external systems. Ceilometer
are divided between event dispatchers and meter dispatchers which can allows to set two types of pipelines. One is ``pipeline.yaml`` which is for
each be provided with their own set of receiving systems. Ceilometer allows to set two meters, another is ``event_pipeline.yaml`` which is for events.
types of pipelines. One is ``pipeline.yaml`` which is for meters, another is ``event_pipeline.yaml``
which is for events.
By default, Ceilometer only saves event and meter data in a database. If you By default, Ceilometer only saves event and meter data into Gnocchi_. If you
want Ceilometer to send data to other systems, instead of or in addition to want Ceilometer to send data to other systems, instead of or in addition to
the Ceilometer database, multiple dispatchers can be enabled by modifying the the default storage services, multiple publishers can be enabled by modifying
Ceilometer configuration file. the Ceilometer pipeline.
Ceilometer ships multiple dispatchers currently. They are ``database``, Ceilometer ships multiple publishers currently. They are ``database``,
``file``, ``http`` and ``gnocchi`` dispatcher. As the names imply, database ``notifier``, ``file``, ``http`` and ``gnocchi`` publishers.
dispatcher sends metering data to a database, file dispatcher logs meters into
a file, http dispatcher posts the meters onto a http target, gnocchi
dispatcher posts the meters onto Gnocchi_ backend. Each dispatcher can have
its own configuration parameters. Please see available configuration
parameters at the beginning of each dispatcher file.
.. _Gnocchi: http://gnocchi.xyz .. _Gnocchi: http://gnocchi.xyz
To check if any of the dispatchers is available in your system, you can To configure one or multiple publishers for Ceilometer, find the Ceilometer
inspect the Ceilometer ``setup.cfg`` file for the dispatcher parts, or you configuration file ``pipeline.yaml`` and/or ``event_pipeline.yaml`` which is
can scan them using entry_point_inspector:: normally located at /etc/ceilometer directory and make changes accordingly.
Your configuration file can be in a different directory.
$ pip install --user entry_point_inspector To use multiple publishers, add multiple publisher lines in ``pipeline.yaml`` and/or
$ epi group show ceilometer.dispatcher.meter
$ epi group show ceilometer.dispatcher.event
To configure one or multiple dispatchers for Ceilometer, find the Ceilometer
configuration file ``pipeline.yaml`` and/or ``event_pipeline.yaml`` which is normally
located at /etc/ceilometer directory and make changes accordingly. Your
configuration file can be in a different directory.
To use multiple dispatchers, add multiple dispatcher lines in ``pipeline.yaml`` and/or
``event_pipeline.yaml`` file like the following:: ``event_pipeline.yaml`` file like the following::
--- ---
@ -125,15 +110,7 @@ To use multiple dispatchers, add multiple dispatcher lines in ``pipeline.yaml``
- gnocchi:// - gnocchi://
- file:// - file://
``database://`` and ``gnocchi://`` are explicit publishers. You can choose For the Gnocchi publisher, the following configuration settings should be added
dispatchers which you need to be configured under ``publishers`` parameter.
.. note::
If there is no dispatcher present, database dispatcher is used as the
default on condition that you may use ``direct://`` as a publisher. But
direct publisher is deprecated, use an explicit publisher instead.
For Gnocchi dispatcher, the following configuration settings should be added
into /etc/ceilometer/ceilometer.conf:: into /etc/ceilometer/ceilometer.conf::
[dispatcher_gnocchi] [dispatcher_gnocchi]
@ -142,17 +119,13 @@ into /etc/ceilometer/ceilometer.conf::
The value specified for ``archive_policy`` should correspond to the name of an The value specified for ``archive_policy`` should correspond to the name of an
``archive_policy`` configured within Gnocchi. ``archive_policy`` configured within Gnocchi.
For Gnocchi dispatcher backed by Swift storage, the following additional For the Gnocchi publisher backed by Swift storage, the following additional
configuration settings should be added:: configuration settings should be added::
[dispatcher_gnocchi] [dispatcher_gnocchi]
filter_project = gnocchi_swift filter_project = gnocchi_swift
filter_service_activity = True filter_service_activity = True
.. note::
If gnocchi dispatcher is enabled, Ceilometer api calls will return a 410 with
an empty result. The Gnocchi Api should be used instead to access the data.
Custom pipeline Custom pipeline
=============== ===============
@ -177,4 +150,4 @@ Efficient polling
requests in a short time period. requests in a short time period.
- There is an option to stream samples to minimise latency (at the - There is an option to stream samples to minimise latency (at the
expense of load) by setting ``batch_polled_samples`` to ``False`` in expense of load) by setting ``batch_polled_samples`` to ``False`` in
``ceilometer.conf``. ``ceilometer.conf``.

View File

@ -33,16 +33,23 @@ Installation and configuration can be found in :ref:`installing_manually`.
Differences between APIs can be found here_. Differences between APIs can be found here_.
There currently exists no migration tool between the services. To transition There currently exists no migration tool between the services. To transition
to Gnocchi, multiple dispatchers can be enabled in the Collector to capture to Gnocchi, multiple publishers can be enabled in the Collector to capture
data in both the native Ceilometer database and Gnocchi. This will allow you data in both the native Ceilometer database and Gnocchi. This will allow you
to test Gnocchi and transition to it fully when comfortable. The following to test Gnocchi and transition to it fully when comfortable. Edit the
should be included in addition to the required configurations for each ``pipeline.yaml`` and ``event_pipeline.yaml`` to include multiple publishers::
backend::
[DEFAULT] ---
meter_dispatchers=database sources:
meter_dispatchers=gnocchi - name: event_source
event_dispatchers=gnocchi events:
- "*"
sinks:
- event_sink
sinks:
- name: event_sink
publishers:
- gnocchi://
- database://
.. _Gnocchi: http://gnocchi.xyz .. _Gnocchi: http://gnocchi.xyz
.. _Aodh: http://docs.openstack.org/developer/aodh/ .. _Aodh: http://docs.openstack.org/developer/aodh/

View File

@ -24,7 +24,7 @@
Ceilometer collector service is deprecated. Configure dispatchers under publisher Ceilometer collector service is deprecated. Configure dispatchers under publisher
in pipeline to push data instead. For more details about how to configure in pipeline to push data instead. For more details about how to configure
dispatchers in the :ref:`dispatcher-configuration`. publishers in the :ref:`publisher-configuration`.
Storage Backend Installation Storage Backend Installation
============================ ============================
@ -48,10 +48,6 @@ Gnocchi
* With Keystone authentication enabled:: * With Keystone authentication enabled::
[DEFAULT]
meter_dispatchers = gnocchi
event_dispatchers = gnocchi
[dispatcher_gnocchi] [dispatcher_gnocchi]
filter_service_activity = False # Enable if using swift backend filter_service_activity = False # Enable if using swift backend
filter_project = <project name associated with gnocchi user> # if using swift backend filter_project = <project name associated with gnocchi user> # if using swift backend
@ -71,10 +67,6 @@ Gnocchi
authentication doesn't matter. This will increase the performance of authentication doesn't matter. This will increase the performance of
Gnocchi:: Gnocchi::
[DEFAULT]
meter_dispatchers = gnocchi
event_dispatchers = gnocchi
[dispatcher_gnocchi] [dispatcher_gnocchi]
filter_service_activity = False # Enable if using swift backend filter_service_activity = False # Enable if using swift backend
filter_project = <project name associated with gnocchi user> # if using swift backend filter_project = <project name associated with gnocchi user> # if using swift backend