Note
See http://docs.openstack.org/developer/ceilometer/ for updated versions of this documentation.
Ceilometer has four daemons. The compute agent runs on the Nova compute node(s) while the central agent and collector run on the cloud’s management node(s). In a development environment created by devstack, these two are typically the same server. They do not have to be, though, so some of the instructions below are duplicated. Skip the steps you have already done.
This example localrc file shows all of the settings required for ceilometer:
# Configure the notifier to talk to the message queue
# and turn on usage audit events
EXTRA_OPTS=(notification_driver=nova.openstack.common.notifier.rabbit_notifier,ceilometer.compute.nova_notifier)
# Enable the ceilometer services
enable_service ceilometer-acompute,ceilometer-acentral,ceilometer-collector,ceilometer-api
Install and configure nova.
The collector daemon imports code from nova, so it needs to be run on a server where nova has already been installed.
Note
Ceilometer makes extensive use of the messaging bus, but has not yet been tested with ZeroMQ. We recommend using Rabbit or qpid for now.
Install MongoDB.
Follow the instructions to install the MongoDB package for your operating system, then start the service.
Clone the ceilometer git repository to the management server:
$ cd /opt/stack
$ git clone https://github.com/stackforge/ceilometer.git
As a user with root permissions or sudo privileges, run the ceilometer installer:
$ cd ceilometer
$ sudo python setup.py install
Configure ceilometer.
Ceilometer needs to know about some of the nova configuration options, so the simplest way to start is copying /etc/nova/nova.conf to /etc/ceilometer-collector.conf. Some of the logging settings used in nova break ceilometer, so they need to be removed. For example, as a user with root permissions:
$ grep -v format_string /etc/nova/nova.conf > /etc/ceilometer-collector.conf
Refer to Configuration Options for details about any other options you might want to modify before starting the service.
Start the collector.
$ ./bin/ceilometer-collector
Note
The default development configuration of the collector logs to stderr, so you may want to run this step using a screen session or other tool for maintaining a long-running program in the background.
Note
The compute agent must be installed on each nova compute node.
Install and configure nova.
The collector daemon imports code from nova, so it needs to be run on a server where nova has already been installed.
Note
Ceilometer makes extensive use of the messaging bus, but has not yet been tested with ZeroMQ. We recommend using Rabbit or qpid for now.
Clone the ceilometer git repository to the server:
$ cd /opt/stack
$ git clone https://github.com/stackforge/ceilometer.git
As a user with root permissions or sudo privileges, run the ceilometer installer:
$ cd ceilometer
$ sudo python setup.py install
Configure ceilometer.
Ceilometer needs to know about some of the nova configuration options, so the simplest way to start is copying /etc/nova/nova.conf to /etc/ceilometer-agent.conf. Some of the logging settings used in nova break ceilometer, so they need to be removed. For example, as a user with root permissions:
$ grep -v format_string /etc/nova/nova.conf > /etc/ceilometer-agent.conf
Refer to Configuration Options for details about any other options you might want to modify before starting the service.
Start the agent.
$ ./bin/ceilometer-agent
Note
The default development configuration of the agent logs to stderr, so you may want to run this step using a screen session or other tool for maintaining a long-running program in the background.
Note
The API server needs to be able to talk to keystone and ceilometer’s database.
Install and configure nova.
The the ceilometer api server imports code from nova, so it needs to be run on a server where nova has already been installed.
Clone the ceilometer git repository to the server:
$ cd /opt/stack
$ git clone https://github.com/stackforge/ceilometer.git
As a user with root permissions or sudo privileges, run the ceilometer installer:
$ cd ceilometer
$ sudo python setup.py install
Configure ceilometer.
Ceilometer needs to know about some of the nova configuration options, so the simplest way to start is copying /etc/nova/nova.conf to /etc/ceilometer-agent.conf. Some of the logging settings used in nova break ceilometer, so they need to be removed. For example, as a user with root permissions:
$ grep -v format_string /etc/nova/nova.conf > /etc/ceilometer-agent.conf
Refer to Configuration Options for details about any other options you might want to modify before starting the service.
Start the agent.
$ ./bin/ceilometer-api
Note
The development version of the API server logs to stderr, so you may want to run this step using a screen session or other tool for maintaining a long-running program in the background.