Rating service for OpenStack
Go to file
Justin Ferrieu 46a54ad05f Implement Prometheus fetcher
A Prometheus scope fetcher has been added in order to dynamically discover
scopes from a Prometheus service using a user defined metric and a scope
attribute.
It can also filter out the response from Prometheus using metadata filters
to have a more fine-grained control over scope discovery.
It features HTTP basic auth capabilities and HTTPS configuration options
similar to Prometheus collector.

Change-Id: If3c2da8d7949e0aec08f3699547faf34af4ddee4
Story: 2005427
Task: 30458
2019-04-17 12:18:51 +00:00
cloudkitty Implement Prometheus fetcher 2019-04-17 12:18:51 +00:00
contrib Add a custom JSONEncoder 2019-02-13 15:05:17 +01:00
devstack [devstack] Setting [collect]/wait_periods to 0 by default 2019-03-27 17:05:07 +01:00
doc Merge "Add storage backend documentation" 2019-04-02 11:35:53 +00:00
etc Merge "Update the default metrics.yml file" 2019-04-02 10:43:51 +00:00
releasenotes Implement Prometheus fetcher 2019-04-17 12:18:51 +00:00
.gitignore Switch to stestr 2018-07-18 08:00:06 +07:00
.gitreview Update .gitreview for new namespace 2015-10-17 22:00:44 +00:00
.stestr.conf Switch to stestr 2018-07-18 08:00:06 +07:00
.zuul.yaml Dropping the py35 testing 2019-04-14 19:18:28 +00:00
HACKING.rst Adds doc8 check to pep8 2018-10-22 11:14:57 +02:00
LICENSE Set copyright/license information in .py files 2014-06-07 09:14:06 +02:00
README.rst Changed author email 2018-12-06 09:45:17 +01:00
lower-constraints.txt Make cloudkitty-processor run several workers 2019-04-15 12:45:38 +00:00
requirements.txt Make cloudkitty-processor run several workers 2019-04-15 12:45:38 +00:00
rtd-requirements.txt Bump the openstackdocstheme extension to 1.20 2018-08-21 13:54:06 +00:00
setup.cfg Implement Prometheus fetcher 2019-04-17 12:18:51 +00:00
setup.py Use global-requirements for requirements 2018-10-17 07:29:48 +00:00
test-requirements.txt Bootstrap the v2 API 2019-04-01 13:52:04 +02:00
tox.ini Dropping the py35 testing 2019-04-14 19:18:28 +00:00

README.rst

Team and repository tags

image

CloudKitty

cloudkitty

Rating as a Service component

Goal

CloudKitty aims at filling the gap between metrics collection systems like ceilometer and a billing system.

Every metrics are collected, aggregated and processed through different rating modules. You can then query CloudKitty's storage to retrieve processed data and easily generate reports.

Most parts of CloudKitty are modular so you can easily extend the base code to address your particular use case.

You can find more information on its architecture in the documentation, architecture section.

Status

CloudKitty has been successfully deployed in production on different OpenStack systems.

You can find the latest documentation on readthedocs.

Contributing

We are welcoming new contributors, if you've got new ideas, suggestions or want to contribute contact us.

You can reach us thought IRC (#cloudkitty @freenode.net), or on the official OpenStack mailing list openstack-discuss@lists.openstack.org.

A storyboard is available if you need to report bugs.

Additional components

We're providing an OpenStack dashboard (Horizon) integration, you can find the files in the cloudkitty-dashboard repository.

A CLI is available too in the python-cloudkittyclient repository.

Trying it

CloudKitty can be deployed with devstack, more information can be found in the devstack section of the documentation.

Deploying it in production

CloudKitty can be deployed in production on OpenStack Kilo environments, for more information check the installation section of the documentation. Due to oslo libraries new namespace backward compatibility is not possible. If you want to install it on an older system, use a virtualenv.

Getting release notes

Release notes can be found in the release notes section of the documentation.