Ceilosca

= DEPRECATION = Ceilosca is DEPRECATED as of the Ussuri OpenStack release.

The functionality of Ceilosca is now found in Ceilometer as the Monasca Publisher option. This closer integration will make it easier to deploy and connect Ceilometer to Monasca. To support older versions and follow OpenStack deprecation policies, this repository will continue to be maintained, but new deployments are encouraged to determine if the metrics required are available directly in Monasca, or use the Monasca Publisher.

= Overview = Ceilosca is a combination of Ceilometer and Monasca. In Ceilosca data collected using the Ceilometer Agents (Notification Agent, Central/Compute Agent) is sent to the Monasca API and retrieved back using the Ceilometer V2 API for backwards compatibility.

Note that the Telemetry project has deprecated the Ceilometer v2 API starting in Newton and the API has been removed in the Queens release of Ceilometer. Ceilosca continues to support the Ceilometer v2 API through Pike, though users are encouraged to switch to using the Monasca API going forward. Data gathered through the Ceilometer agents will still continue to be published and stored in Monasca.

News
(Oct 2019) With the Ussuri OpenStack Release, Ceilosca will be integrated in the Ceilometer codebase as an official publisher. This will make it even easier to deploy and use. Watch commit https://review.opendev.org/#/c/562400/ for the latest status.

= Presentations =
 * Tokyo Summit 2015
 * Ceilometer+Monasca=Ceilosca
 * Video: https://www.openstack.org/summit/tokyo-2015/videos/presentation/ceilometer-monascaceilosca
 * Slides: https://www.slideshare.net/FabioGiannetti/ceilosca

= Features =
 * Makes use of existing Ceilometer sample gathering functionality through OpenStack services
 * Leverages the Monasca monitoring setup, thus reducing overall complexity in cloud deployment
 * Integrated with devstack deployment so you can try it out

= Architecture =

In the Rocky release, Ceilosca consists of a Monasca Publisher component for Ceilometer to send samples to the Monasca API.

Historically, Ceilosca up through the Pike release had two major components:
 * A publisher component that takes samples from the Ceilometer Agent and publishes them to the Monasca API.
 * A storage driver component that works with the Ceilometer V2 API to use the Monasca API to retrieve stored samples.

Another Ceilosca Archiecture diagram

Additionally, the Ceilosca project includes testing resources and a Devstack plugin to allow deployment.

= Deployment and Troubleshooting =

Deploying
For information on how to deploy Ceilosca, see the monasca-ceilometer/README.md and monasca-ceilometer/devstack/README.md.

In brief, Ceilosca may be overlaid on a devstack deployment which has Ceilometer and Monasca services, or you may use the provided Vagrant file to deploy a complete Ceilosca devstack, or you may use the examples and directions provided to include Ceilosca in your own deployment mechanism.

Note that the README.md has information about how to configure which meters are collected (TL;DR whatever is configured in Ceilometer's polling.yml) and available through the Monasca API.

Troubleshooting - Common deployment

 * Check the Ceilometer services are running
 * Check /etc/ceilometer/pipeline.yaml has a proper publishers: -monasca:// entry
 * Check /etc/ceilometer/pipeline.yaml has meters defined that match what you want to gather
 * Check that /etc/ceilometer/ceilometer.conf has an entry in [database] for metering_connection that specifies a monasca://http: address that points to your monasca instance
 * Look in /var/log/ceilometer.log or /opt/stack/logs/ceilometer.log for errors
 * Look in /var/log/monasca/api/monasca-api.log for connection issues from ceilometer

Troubleshooting - Devstack deployment
* export OS_PROJECT_NAME=service * export OS_IDENTITY_API_VERSION=3 * export OS_PASSWORD= * export OS_AUTH_URL=http:///identity/v3/ * export OS_USERNAME=ceilometer * export OS_TENANT_NAME=service
 * Look in /opt/stack/logs/ceilometer.log for errors
 * The Ceilometer command line client needs to have the correct environment variables set. If you have trouble connecting to Monasca, try using the default password from Monasca.
 * Check items in the Common deployment section below

= Repositories = https://git.openstack.org/cgit/openstack/monasca-ceilometer/ https://github.com/openstack/monasca-ceilometer
 * OpenStack Git:
 * Github:

= Coding Standards = All Python code conforms to the OpenStack standards at http://docs.openstack.org/developer/hacking/.

= License =

Copyright (c) 2015-2016 Hewlett-Packard Development Company, L.P.

Copyright (c) 2017 Hewlett Packard Enterprise Development LP

Copyright (c) 2015 Cisco.

Copyright (c) 2018 SUSE LLC

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.