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
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.
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 usingsystemctl restart mongodb
, and try calling the command again.
Install and configure components
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:8777 Listen <VirtualHost *:8777> =ceilometer group=ceilometer display-name=%{GROUP} WSGIDaemonProcess ceilometer-api processes=2 threads=10 user WSGIProcessGroup ceilometer-api WSGIScriptAlias / "/var/www/cgi-bin/ceilometer/app" WSGIApplicationGroup %{GLOBAL} /var/log/apache2/ceilometer_error.log ErrorLog /var/log/apache2/ceilometer_access.log combined CustomLog</VirtualHost> WSGISocketPrefix /var/run/apache2
Finalize installation
Reload the Apache HTTP server:
# systemctl reload apache2.service
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