Files
aodh/doc/source/install.rst
Doug Hellmann 2eebd4a8bd Skeleton for API server
This changeset introduces a framework for the API service,
including the dependency list, a couple of simple API methods,
a test suite, and documentation for starting the development
server.

Change-Id: I4a496c600b7e6a0a8c70113b1d099614febd899d
Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>
2012-07-27 10:34:36 -04:00

178 lines
5.2 KiB
ReStructuredText

..
Copyright 2012 Nicolas Barcet for Canonical
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.
.. _install:
================================================
Installing and Running the Development Version
================================================
Ceilometer has three daemons. The :term:`agent` runs on the Nova
compute node(s). The :term:`collector` and API server 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.
.. _devstack: http://www.devstack.org/
Installing the Collector
========================
.. index::
double: installing; collector
1. 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.
2. Install MongoDB.
Follow the instructions to install the MongoDB_ package for your
operating system, then start the service.
3. Clone the ceilometer git repository to the management server::
$ cd /opt/stack
$ git clone https://github.com/stackforge/ceilometer.git
4. As a user with ``root`` permissions or ``sudo`` privileges, run the
ceilometer installer::
$ cd ceilometer
$ sudo python setup.py install
5. 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 :doc:`configuration` for details about any other options
you might want to modify before starting the service.
6. 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.
.. _MongoDB: http://www.mongodb.org/
Installing the Compute Agent
============================
.. index::
double: installing; compute agent
.. note:: The compute agent must be installed on each nova compute node.
1. 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.
2. Clone the ceilometer git repository to the server::
$ cd /opt/stack
$ git clone https://github.com/stackforge/ceilometer.git
4. As a user with ``root`` permissions or ``sudo`` privileges, run the
ceilometer installer::
$ cd ceilometer
$ sudo python setup.py install
5. 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 :doc:`configuration` for details about any other options
you might want to modify before starting the service.
6. 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.
Installing the API Server
=========================
.. index::
double: installing; API
1. Clone the ceilometer git repository to the server::
$ cd /opt/stack
$ git clone https://github.com/stackforge/ceilometer.git
2. As a user with ``root`` permissions or ``sudo`` privileges, run the
ceilometer installer::
$ cd ceilometer
$ sudo python setup.py install
3. Start the API server.
::
$ python -m 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.