
When CloudKitty is collecting data from Gnocchi, it opens many connections to Gnocchi to parallelize the requests; as CloudKitty starts to fetch the responses from Gnocchi, it releases the connections to the pool until it starts to overflow (reaching the default limit of the Requests connection pool). This behavior causes no problems, but prevents the reuse of connections. To mitigate this problem and optimize the use of connections, we propose to add a new configuration in Gnocchi collector and fetcher to set the connection pool maximum size when connecting to Gnocchi. The new configuration is `http_pool_maxsize` and you can configure it in the `cloudkitty.conf` file like: ``` [fetcher_gnocchi] http_pool_maxsize = 50 [collector_gnocchi] http_pool_maxsize = 50 ``` The default value is defined by the `requests` library which is 10. Change-Id: I3ee22984dc87b505924e1711bc723bc1c5f160a5 Story: 2008125 Task: 40847
Team and repository tags
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.