deb-ceilometer/install-guide/source/install-base-obs.rst
Ildiko Vancsa b33f32b714 Add install-guide for ceilometer
This adds ceilometer-specific contents of the OpenStack Installation Guide
in the ceilometer repo per [1]. A separate change will remove the
ceilometer contents from the OpenStack Installation Guide for Newton per [2].

The ceilometer install-guide structure is based on Install Guide
Cookiecutter [3].

Also adds tox.ini environment for install-guide and adds
openstackdocs-theme to test-requirements.txt.

[1] http://specs.openstack.org/openstack/docs-specs/specs/newton/project-specific-installguides.html
[2] http://specs.openstack.org/openstack/docs-specs/specs/newton/installguide.html
[3] https://review.openstack.org/#/c/314229/

Partially-Implements: blueprint projectspecificinstallguide
Change-Id: Iffc5d7243e9eeb74c9dd7b559ef3de7123269293
2016-06-24 15:34:51 +02:00

3.5 KiB

Install and configure for openSUSE and SUSE Linux Enterprise

This section describes how to install and configure the Telemetry service, code-named ceilometer, on the controller node.

This section assumes that you already have a working OpenStack environment with at least the following components installed: Compute, Image Service, Identity.

Prerequisites

Before you install and configure the Telemetry service, you must create a database, service credentials, and API endpoints. However, unlike other services, the Telemetry service uses a NoSQL database. See environment-nosql-database-obs to install and configure MongoDB before proceeding further.

  1. Create the ceilometer database:

    # mongo --host controller --eval '
      db = db.getSiblingDB("ceilometer");
      db.addUser({user: "ceilometer",
      pwd: "CEILOMETER_DBPASS",
      roles: [ "readWrite", "dbAdmin" ]})'
    
    MongoDB shell version: 2.4.x
    connecting to: controller:27017/test
    {
     "user" : "ceilometer",
     "pwd" : "72f25aeee7ad4be52437d7cd3fc60f6f",
     "roles" : [
      "readWrite",
      "dbAdmin"
     ],
     "_id" : ObjectId("5489c22270d7fad1ba631dc3")
    }

    Replace CEILOMETER_DBPASS with a suitable password.

    Note

    If the command fails saying you are not authorized to insert a user, you may need to temporarily comment out the auth option in the /etc/mongodb.conf file, restart the MongoDB service using systemctl restart mongodb, and try calling the command again.

Install and configure components

  1. Install the packages:

    # zypper install openstack-ceilometer-api \
      openstack-ceilometer-collector \
      openstack-ceilometer-agent-notification \
      openstack-ceilometer-agent-central python-ceilometerclient
  • In the [collector] section, configure the dispatcher:

    [collector]
    ...
    dispatcher = database

Configure the Apache HTTP server

  • Create the /etc/apache2/conf.d/wsgi-ceilometer.conf file with the following content:

    Listen 8777
    
    <VirtualHost *:8777>
        WSGIDaemonProcess ceilometer-api processes=2 threads=10 user=ceilometer group=ceilometer display-name=%{GROUP}
        WSGIProcessGroup ceilometer-api
        WSGIScriptAlias / "/var/www/cgi-bin/ceilometer/app"
        WSGIApplicationGroup %{GLOBAL}
        ErrorLog /var/log/apache2/ceilometer_error.log
        CustomLog /var/log/apache2/ceilometer_access.log combined
    </VirtualHost>
    
    WSGISocketPrefix /var/run/apache2

Finalize installation

  1. Reload the Apache HTTP server:

    # systemctl reload apache2.service
  2. Start the Telemetry services and configure them to start when the system boots:

    # systemctl enable openstack-ceilometer-agent-notification.service \
      openstack-ceilometer-agent-central.service \
      openstack-ceilometer-collector.service
    # systemctl start openstack-ceilometer-agent-notification.service \
      openstack-ceilometer-agent-central.service \
      openstack-ceilometer-collector.service