summaryrefslogtreecommitdiff
path: root/doc/source/install/dbreco.rst
blob: cace89313d3ffab0ea9cff3c5bc3436985f14a59 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
..
      Copyright 2013 Nicolas Barcet for eNovance

      Licensed under the Apache License, Version 2.0 (the "License"); you may
      not use this file except in compliance with the License. You may obtain
      a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
      WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
      License for the specific language governing permissions and limitations
      under the License.

.. _choosing_db_backend:

============================
 Choosing a database backend
============================

Moving from Ceilometer to Gnocchi
=================================

Gnocchi represents a fundamental change in how data is represented and stored.
Installation and configuration can be found in :ref:`installing_manually`.
Differences between APIs can be found here_.

There currently exists no migration tool between the services. To transition
to Gnocchi, multiple dispatchers can be enabled in the Collector to capture
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
should be included in addition to the required configurations for each
backend::

  [DEFAULT]
  meter_dispatchers=database
  meter_dispatchers=gnocchi
  event_dispatchers=gnocchi

Disable Keystone Authentification for Gnocchi
=============================================

In somes cases, it is possible to disable keystone authentication for
Gnocchi to remove the overhead of token creation/verification when request
authentication doesn't matter. This will increase the performance of Gnocchi.

Example of configuration::

    [dispatcher_gnocchi]
    auth_section=service_credentials_gnocchi

    [service_credentials_gnocchi]
    auth_type=gnocchi-noauth
    roles = admin
    user_id = <ceilometer_user_id>
    project_id = <ceilometer_project_id>
    endpoint = <gnocchi_endpoint>

.. _Gnocchi: http://gnocchi.xyz
.. _here: https://docs.google.com/presentation/d/1PefouoeMVd27p2OGDfNQpx18mY-Wk5l0P1Ke2Vt5LwA/edit?usp=sharing

Legacy Storage
==============

.. note::

   Ceilometer's native database capabilities is intended for post processing
   and auditing purposes where responsiveness is not a requirement. It
   captures the full fidelity of each datapoint and thus is not designed
   for low latency use cases. For more responsive use cases, it's recommended
   to store data in an alternative source such as Gnocchi_. Please see
   `Moving from Ceilometer to Gnocchi`_ to find more information.

.. note::

   As of Liberty, alarming support, and subsequently its database, is handled
   by Aodh_.

.. note::

   As of Newton, event storage support is handled by Panko_.

.. _Aodh: http://docs.openstack.org/developer/aodh/
.. _Panko: http://docs.openstack.org/developer/panko

The following is a table indicating the status of each database drivers:

================== ============================= ===========================================
Driver             API querying                  API statistics
================== ============================= ===========================================
MongoDB            Yes                           Yes
MySQL              Yes                           Yes
PostgreSQL         Yes                           Yes
HBase              Yes                           Yes, except groupby & selectable aggregates
================== ============================= ===========================================