summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ceilometer/collector.py5
-rw-r--r--devstack/plugin.sh7
-rw-r--r--devstack/settings2
-rw-r--r--doc/source/configuration.rst3
-rw-r--r--doc/source/install/custom.rst1
-rw-r--r--doc/source/install/manual.rst5
-rw-r--r--etc/ceilometer/event_pipeline.yaml2
-rw-r--r--etc/ceilometer/pipeline.yaml10
-rw-r--r--releasenotes/notes/deprecate-ceilometer-collector-b793b91cd28b9e7f.yaml12
9 files changed, 38 insertions, 9 deletions
diff --git a/ceilometer/collector.py b/ceilometer/collector.py
index 6ac2cab1..df4beff7 100644
--- a/ceilometer/collector.py
+++ b/ceilometer/collector.py
@@ -70,6 +70,11 @@ class CollectorService(cotyledon.Service):
self.event_listener = None
self.udp_thread = None
+ import debtcollector
+ debtcollector.deprecate("Ceilometer collector service is deprecated."
+ "Use publishers to push data instead",
+ version="9.0", removal_version="10.0")
+
def run(self):
if self.conf.collector.udp_address:
self.udp_thread = utils.spawn_thread(self.start_udp)
diff --git a/devstack/plugin.sh b/devstack/plugin.sh
index dbeb60c1..25cce1e4 100644
--- a/devstack/plugin.sh
+++ b/devstack/plugin.sh
@@ -267,9 +267,16 @@ function _ceilometer_configure_storage_backend {
die $LINENO "Unable to configure unknown CEILOMETER_BACKEND $CEILOMETER_BACKEND"
fi
+ if [ "$CEILOMETER_BACKEND" = 'mysql' ] || [ "$CEILOMETER_BACKEND" = 'postgresql' ] || [ "$CEILOMETER_BACKEND" = 'mongodb' ]; then
+ sed -i 's/gnocchi:\/\//database:\/\//g' $CEILOMETER_CONF_DIR/event_pipeline.yaml $CEILOMETER_CONF_DIR/pipeline.yaml
+ fi
+
# configure panko
if is_service_enabled panko-api; then
iniadd $CEILOMETER_CONF DEFAULT event_dispatchers panko
+ if ! grep -q 'panko' $CEILOMETER_CONF_DIR/event_pipeline.yaml ; then
+ echo ' - direct://?dispatcher=panko' >> $CEILOMETER_CONF_DIR/event_pipeline.yaml
+ fi
fi
_ceilometer_drop_database
diff --git a/devstack/settings b/devstack/settings
index d8ad97d5..f82513f2 100644
--- a/devstack/settings
+++ b/devstack/settings
@@ -3,8 +3,6 @@
enable_service ceilometer-acompute ceilometer-acentral
# Notification Agent
enable_service ceilometer-anotification
-# Data Collector
-enable_service ceilometer-collector
# Default directories
CEILOMETER_DIR=$DEST/ceilometer
diff --git a/doc/source/configuration.rst b/doc/source/configuration.rst
index b5b9de6d..157db4fc 100644
--- a/doc/source/configuration.rst
+++ b/doc/source/configuration.rst
@@ -188,7 +188,8 @@ data should be sent after the possible transformations. The names of the
publishers should be the same as the related names of the plugins in
:file:`setup.cfg`.
-The default configuration can be found in `pipeline.yaml`_.
+The default configuration can be found in `pipeline.yaml`_. For more details about
+how to configure dispatchers under publisher in the :ref:`dispatcher-configuration`.
.. _pipeline.yaml: https://git.openstack.org/cgit/openstack/ceilometer/tree/etc/ceilometer/pipeline.yaml
diff --git a/doc/source/install/custom.rst b/doc/source/install/custom.rst
index 3f48a9ed..f5e5e6cc 100644
--- a/doc/source/install/custom.rst
+++ b/doc/source/install/custom.rst
@@ -64,6 +64,7 @@ For polling agent using ceilometer-polling.conf, settings like::
Doing this, it's easy to listen/receive data from multiple internal and external services.
+.. _dispatcher-configuration:
Using multiple dispatchers
==========================
diff --git a/doc/source/install/manual.rst b/doc/source/install/manual.rst
index d59fd13c..8987dcab 100644
--- a/doc/source/install/manual.rst
+++ b/doc/source/install/manual.rst
@@ -20,6 +20,11 @@
Installing Manually
=====================
+.. note::
+
+ Ceilometer collector service is deprecated. Configure dispatchers under publisher
+ in pipeline to push data instead. For more details about how to configure
+ dispatchers in the :ref:`dispatcher-configuration`.
Storage Backend Installation
============================
diff --git a/etc/ceilometer/event_pipeline.yaml b/etc/ceilometer/event_pipeline.yaml
index a91c46a1..6482f4f2 100644
--- a/etc/ceilometer/event_pipeline.yaml
+++ b/etc/ceilometer/event_pipeline.yaml
@@ -9,4 +9,4 @@ sinks:
- name: event_sink
transformers:
publishers:
- - notifier://
+ - gnocchi://
diff --git a/etc/ceilometer/pipeline.yaml b/etc/ceilometer/pipeline.yaml
index 59e6f8fc..53106399 100644
--- a/etc/ceilometer/pipeline.yaml
+++ b/etc/ceilometer/pipeline.yaml
@@ -35,7 +35,7 @@ sinks:
- name: meter_sink
transformers:
publishers:
- - notifier://
+ - gnocchi://
- name: cpu_sink
transformers:
- name: "rate_of_change"
@@ -46,7 +46,7 @@ sinks:
type: "gauge"
scale: "100.0 / (10**9 * (resource_metadata.cpu_number or 1))"
publishers:
- - notifier://
+ - gnocchi://
- name: cpu_delta_sink
transformers:
- name: "delta"
@@ -55,7 +55,7 @@ sinks:
name: "cpu.delta"
growth_only: True
publishers:
- - notifier://
+ - gnocchi://
- name: disk_sink
transformers:
- name: "rate_of_change"
@@ -70,7 +70,7 @@ sinks:
unit: "\\1/s"
type: "gauge"
publishers:
- - notifier://
+ - gnocchi://
- name: network_sink
transformers:
- name: "rate_of_change"
@@ -85,4 +85,4 @@ sinks:
unit: "\\1/s"
type: "gauge"
publishers:
- - notifier://
+ - gnocchi://
diff --git a/releasenotes/notes/deprecate-ceilometer-collector-b793b91cd28b9e7f.yaml b/releasenotes/notes/deprecate-ceilometer-collector-b793b91cd28b9e7f.yaml
new file mode 100644
index 00000000..beec9167
--- /dev/null
+++ b/releasenotes/notes/deprecate-ceilometer-collector-b793b91cd28b9e7f.yaml
@@ -0,0 +1,12 @@
+---
+features:
+ - |
+ Because of deprecating the collector, the default publishers in
+ pipeline.yaml and event_pipeline.yaml are now changed using database
+ instead of notifier.
+deprecations:
+ - |
+ Collector is no longer supported in this release. The collector
+ introduces lags in pushing data to backend. To optimize the
+ architecture, Ceilometer push data through dispatchers using
+ publishers in notification agent directly.