[install] remove telemetry chapter

Telemetry chapter has been moved into ceilometer and aodh repos.
* https://review.openstack.org/330051/
* https://review.openstack.org/330048/

Change-Id: I95de15373313f951b787b50c19093b8855262611
Implements: blueprint project-specific-installguides
This commit is contained in:
KATO Tomoyuki 2016-07-05 10:10:32 +09:00
parent 90269eca54
commit 527efb82e8
25 changed files with 2 additions and 1640 deletions

View File

@ -1 +0,0 @@
../../install-guide/source/ceilometer-aodh.rst

View File

@ -1 +0,0 @@
../../install-guide/source/ceilometer-cinder.rst

View File

@ -1 +0,0 @@
../../install-guide/source/ceilometer-glance.rst

View File

@ -1,210 +0,0 @@
Install and configure
~~~~~~~~~~~~~~~~~~~~~
This section describes how to install and configure the Telemetry
service, code-named ceilometer, on the controller node. The Telemetry
service collects measurements from most OpenStack services and
optionally triggers alarms.
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 :ref:`environment-nosql-database` to install and configure
MongoDB before proceeding further.
#. Create the ``ceilometer`` database:
.. code-block:: console
# mongo --host controller --eval '
db = db.getSiblingDB("ceilometer");
db.createUser({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.
#. Source the ``admin`` credentials to gain access to admin-only
CLI commands:
.. code-block:: console
$ . admin-openrc
#. To create the service credentials, complete these steps:
* Create the ``ceilometer`` user:
.. code-block:: console
$ openstack user create --domain default --password-prompt ceilometer
User Password:
Repeat User Password:
+-----------+----------------------------------+
| Field | Value |
+-----------+----------------------------------+
| domain_id | e0353a670a9e496da891347c589539e9 |
| enabled | True |
| id | c859c96f57bd4989a8ea1a0b1d8ff7cd |
| name | ceilometer |
+-----------+----------------------------------+
* Add the ``admin`` role to the ``ceilometer`` user.
.. code-block:: console
$ openstack role add --project service --user ceilometer admin
.. note::
This command provides no output.
* Create the ``ceilometer`` service entity:
.. code-block:: console
$ openstack service create --name ceilometer \
--description "Telemetry" metering
+-------------+----------------------------------+
| Field | Value |
+-------------+----------------------------------+
| description | Telemetry |
| enabled | True |
| id | 5fb7fd1bb2954fddb378d4031c28c0e4 |
| name | ceilometer |
| type | metering |
+-------------+----------------------------------+
#. Create the Telemetry service API endpoints:
.. code-block:: console
$ openstack endpoint create --region RegionOne \
metering public http://controller:8777
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | b808b67b848d443e9eaaa5e5d796970c |
| interface | public |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 5fb7fd1bb2954fddb378d4031c28c0e4 |
| service_name | ceilometer |
| service_type | metering |
| url | http://controller:8777 |
+--------------+----------------------------------+
$ openstack endpoint create --region RegionOne \
metering internal http://controller:8777
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | c7009b1c2ee54b71b771fa3d0ae4f948 |
| interface | internal |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 5fb7fd1bb2954fddb378d4031c28c0e4 |
| service_name | ceilometer |
| service_type | metering |
| url | http://controller:8777 |
+--------------+----------------------------------+
$ openstack endpoint create --region RegionOne \
metering admin http://controller:8777
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | b2c00566d0604551b5fe1540c699db3d |
| interface | admin |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 5fb7fd1bb2954fddb378d4031c28c0e4 |
| service_name | ceilometer |
| service_type | metering |
| url | http://controller:8777 |
+--------------+----------------------------------+
Install and configure components
--------------------------------
#. Install the packages:
.. code-block:: console
# apt-get install ceilometer-api ceilometer-collector \
ceilometer-agent-central ceilometer-agent-notification
python-ceilometerclient
Respond to prompts for
:doc:`Identity service credentials <debconf/debconf-keystone-authtoken>`,
:doc:`service endpoint registration <debconf/debconf-api-endpoints>`,
and :doc:`message broker credentials <debconf/debconf-rabbitmq>`.
#. Edit the ``/etc/ceilometer/ceilometer.conf`` file and complete
the following actions:
* In the ``[database]`` section, configure database access:
.. code-block:: ini
[database]
...
connection = mongodb://ceilometer:CEILOMETER_DBPASS@controller:27017/ceilometer
Replace ``CEILOMETER_DBPASS`` with the password you chose for the
Telemetry service database. You must escape special characters such
as ':', '/', '+', and '@' in the connection string in accordance
with `RFC2396 <https://www.ietf.org/rfc/rfc2396.txt>`_.
* In the ``[service_credentials]`` section, configure service credentials:
.. code-block:: ini
[service_credentials]
...
os_auth_url = http://controller:5000/v2.0
os_username = ceilometer
os_tenant_name = service
os_password = CEILOMETER_PASS
interface = internalURL
region_name = RegionOne
Replace ``CEILOMETER_PASS`` with the password you chose for
the ``ceilometer`` user in the Identity service.
Finalize installation
---------------------
#. Restart the Telemetry services:
.. code-block:: console
# service ceilometer-agent-central restart
# service ceilometer-agent-notification restart
# service ceilometer-api restart
# service ceilometer-collector restart

View File

@ -1 +0,0 @@
../../install-guide/source/ceilometer-next-steps.rst

View File

@ -1 +0,0 @@
../../install-guide/source/ceilometer-nova.rst

View File

@ -1 +0,0 @@
../../install-guide/source/ceilometer-swift.rst

View File

@ -1 +0,0 @@
../../install-guide/source/ceilometer-verify.rst

View File

@ -1 +0,0 @@
../../install-guide/source/ceilometer.rst

View File

@ -101,6 +101,7 @@ exclude_patterns = ['common/cli*', 'common/nova*',
'common/get_started_database_service.rst',
'common/get_started_data_processing.rst',
'common/get_started_orchestration.rst',
'common/get_started_telemetry.rst',
'common/dashboard_customizing.rst',
'shared/note_configuration_vary_by_distribution.rst']

View File

@ -1 +0,0 @@
../../install-guide/source/environment-nosql-database.rst

View File

@ -46,7 +46,6 @@ Contents
cinder.rst
manila.rst
swift.rst
ceilometer.rst
launch-instance.rst
Appendix

View File

@ -1,324 +0,0 @@
.. _aodh-install:
================
Alarming service
================
This section describes how to install and configure the Telemetry Alarming
service, code-named aodh.
Prerequisites
~~~~~~~~~~~~~
Before you install and configure the Alarming service, you must create a
database, service credentials, and API endpoints.
#. To create the database, complete these steps:
* Use the database access client to connect to
the database server as the ``root`` user:
.. code-block:: console
$ mysql -u root -p
* Create the ``aodh`` database:
.. code-block:: console
CREATE DATABASE aodh;
* Grant proper access to the ``aodh`` database:
.. code-block:: console
GRANT ALL PRIVILEGES ON aodh.* TO 'aodh'@'localhost' \
IDENTIFIED BY 'AODH_DBPASS';
GRANT ALL PRIVILEGES ON aodh.* TO 'aodh'@'%' \
IDENTIFIED BY 'AODH_DBPASS';
Replace ``AODH_DBPASS`` with a suitable password.
* Exit the database access client.
#. Source the ``admin`` credentials to gain access to admin-only
CLI commands:
.. code-block:: console
$ . admin-openrc
#. To create the service credentials, complete these steps:
* Create the ``aodh`` user:
.. code-block:: console
$ openstack user create --domain default \
--password-prompt aodh
User Password:
Repeat User Password:
+-----------+----------------------------------+
| Field | Value |
+-----------+----------------------------------+
| domain_id | e0353a670a9e496da891347c589539e9 |
| enabled | True |
| id | b7657c9ea07a4556aef5d34cf70713a3 |
| name | aodh |
+-----------+----------------------------------+
* Add the ``admin`` role to the ``aodh`` user:
.. code-block:: console
$ openstack role add --project service --user aodh admin
.. note::
This command provides no output.
* Create the ``aodh`` service entity:
.. code-block:: console
$ openstack service create --name aodh \
--description "Telemetry" alarming
+-------------+----------------------------------+
| Field | Value |
+-------------+----------------------------------+
| description | Telemetry |
| enabled | True |
| id | 3405453b14da441ebb258edfeba96d83 |
| name | aodh |
| type | alarming |
+-------------+----------------------------------+
#. Create the Alarming service API endpoints:
.. code-block:: console
$ openstack endpoint create --region RegionOne \
alarming public http://controller:8042
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | 340be3625e9b4239a6415d034e98aace |
| interface | public |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 8c2c7f1b9b5049ea9e63757b5533e6d2 |
| service_name | aodh |
| service_type | alarming |
| url | http://controller:8042 |
+--------------+----------------------------------+
$ openstack endpoint create --region RegionOne \
alarming internal http://controller:8042
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | 340be3625e9b4239a6415d034e98aace |
| interface | internal |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 8c2c7f1b9b5049ea9e63757b5533e6d2 |
| service_name | aodh |
| service_type | alarming |
| url | http://controller:8042 |
+--------------+----------------------------------+
$ openstack endpoint create --region RegionOne \
alarming admin http://controller:8042
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | 340be3625e9b4239a6415d034e98aace |
| interface | admin |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 8c2c7f1b9b5049ea9e63757b5533e6d2 |
| service_name | aodh |
| service_type | alarming |
| url | http://controller:8042 |
+--------------+----------------------------------+
Install and configure components
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. note::
Default configuration files vary by distribution. You might need to add
these sections and options rather than modifying existing sections and
options. Also, an ellipsis (...) in the configuration snippets indicates
potential default configuration options that you should retain.
.. only:: obs
1. Install the packages:
.. code-block:: console
# zypper install openstack-aodh-api \
openstack-aodh-evaluator openstack-aodh-notifier \
openstack-aodh-listener openstack-aodh-expirer \
python-aodhclient
.. only:: rdo
1. Install the packages:
.. code-block:: console
# yum install openstack-aodh-api \
openstack-aodh-evaluator openstack-aodh-notifier \
openstack-aodh-listener openstack-aodh-expirer \
python-ceilometerclient
.. only:: ubuntu
1. Install the packages:
.. code-block:: console
# apt-get install aodh-api aodh-evaluator aodh-notifier \
aodh-listener aodh-expirer python-ceilometerclient
2. Edit the ``/etc/aodh/aodh.conf`` file and complete the following actions:
* In the ``[database]`` section, configure database access:
.. code-block:: ini
[database]
...
connection = mysql+pymysql://aodh:AODH_DBPASS@controller/aodh
Replace ``AODH_DBPASS`` with the password you chose for the
Telemetry Alarming module database. You must escape special characters
such as ':', '/', '+', and '@' in the connection string in accordance
with `RFC2396 <https://www.ietf.org/rfc/rfc2396.txt>`_.
* In the ``[DEFAULT]`` and ``[oslo_messaging_rabbit]`` sections,
configure ``RabbitMQ`` message queue access:
.. code-block:: ini
[DEFAULT]
...
rpc_backend = rabbit
[oslo_messaging_rabbit]
...
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = RABBIT_PASS
Replace ``RABBIT_PASS`` with the password you chose for the
``openstack`` account in ``RabbitMQ``.
* In the ``[DEFAULT]`` and ``[keystone_authtoken]`` sections,
configure Identity service access:
.. code-block:: ini
[DEFAULT]
...
auth_strategy = keystone
[keystone_authtoken]
...
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = aodh
password = AODH_PASS
Replace ``AODH_PASS`` with the password you chose for
the ``aodh`` user in the Identity service.
* In the ``[service_credentials]`` section, configure service credentials:
.. code-block:: ini
[service_credentials]
...
auth_type = password
auth_url = http://controller:5000/v3
project_domain_name = default
user_domain_name = default
project_name = service
username = aodh
password = AODH_PASS
interface = internalURL
region_name = RegionOne
Replace ``AODH_PASS`` with the password you chose for
the ``aodh`` user in the Identity service.
.. todo:
Workaround for https://bugs.launchpad.net/ubuntu/+source/aodh/+bug/1513599.
.. only:: ubuntu
3. Edit the ``/etc/aodh/api_paste.ini`` file and modify the
``[filter:authtoken]`` section as follows:
.. code-block:: ini
[filter:authtoken]
...
oslo_config_project = aodh
Finalize installation
~~~~~~~~~~~~~~~~~~~~~
.. only:: obs
#. Start the Telemetry Alarming services and configure them to start
when the system boots:
.. code-block:: console
# systemctl enable openstack-aodh-api.service \
openstack-aodh-evaluator.service \
openstack-aodh-notifier.service \
openstack-aodh-listener.service
# systemctl start openstack-aodh-api.service \
openstack-aodh-evaluator.service \
openstack-aodh-notifier.service \
openstack-aodh-listener.service
.. only:: rdo
* Start the Alarming services and configure them to start when the system
boots:
.. code-block:: console
# systemctl enable openstack-aodh-api.service \
openstack-aodh-evaluator.service \
openstack-aodh-notifier.service \
openstack-aodh-listener.service
# systemctl start openstack-aodh-api.service \
openstack-aodh-evaluator.service \
openstack-aodh-notifier.service \
openstack-aodh-listener.service
.. only:: ubuntu
* Restart the Alarming services:
.. code-block:: console
# service aodh-api restart
# service aodh-evaluator restart
# service aodh-notifier restart
# service aodh-listener restart

View File

@ -1,61 +0,0 @@
Enable Block Storage meters
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Telemetry uses notifications to collect Block Storage service meters.
Perform these steps on the controller and Block Storage nodes.
.. note::
Your environment must include the Block Storage service.
Configure Cinder to use Telemetry
---------------------------------
Edit the ``/etc/cinder/cinder.conf`` file and complete the
following actions:
* In the ``[oslo_messaging_notifications]`` section, configure notifications:
.. code-block:: ini
[oslo_messaging_notifications]
...
driver = messagingv2
Finalize installation
---------------------
.. only:: obs or rdo
#. Restart the Block Storage services on the controller node:
.. code-block:: console
# systemctl restart openstack-cinder-api.service openstack-cinder-scheduler.service
#. Restart the Block Storage services on the storage nodes:
.. code-block:: console
# systemctl restart openstack-cinder-volume.service
.. only:: ubuntu or debian
#. Restart the Block Storage services on the controller node:
.. code-block:: console
# service cinder-api restart
# service cinder-scheduler restart
#. Restart the Block Storage services on the storage nodes:
.. code-block:: console
# service cinder-volume restart
3. Use the ``cinder-volume-usage-audit`` command on Block Storage nodes
to retrieve meters on demand. For more information, see the
`OpenStack Administrator Guide <http://docs.openstack.org/admin-guide/
telemetry-data-collection.html#block-storage-audit-script-setup-to-get-
notifications>`__.

View File

@ -1,55 +0,0 @@
Enable Image service meters
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Telemetry uses notifications to collect Image service meters. Perform
these steps on the controller node.
Configure the Image service to use Telemetry
--------------------------------------------
* Edit the ``/etc/glance/glance-api.conf`` and
``/etc/glance/glance-registry.conf`` files and
complete the following actions:
* In the ``[DEFAULT]``, ``[oslo_messaging_notifications]``, and
``[oslo_messaging_rabbit]`` sections, configure notifications and RabbitMQ
message broker access:
.. code-block:: ini
[DEFAULT]
...
rpc_backend = rabbit
[oslo_messaging_notifications]
...
driver = messagingv2
[oslo_messaging_rabbit]
...
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = RABBIT_PASS
Replace ``RABBIT_PASS`` with the password you chose for
the ``openstack`` account in ``RabbitMQ``.
Finalize installation
---------------------
.. only:: obs or rdo
* Restart the Image service:
.. code-block:: console
# systemctl restart openstack-glance-api.service openstack-glance-registry.service
.. only:: ubuntu or debian
* Restart the Image service:
.. code-block:: console
# service glance-registry restart
# service glance-api restart

View File

@ -1,430 +0,0 @@
Install and configure
~~~~~~~~~~~~~~~~~~~~~
This section describes how to install and configure the Telemetry
service, code-named ceilometer, on the controller node. The Telemetry
service collects measurements from most OpenStack services and
optionally triggers alarms.
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 :ref:`environment-nosql-database` to install and configure
MongoDB before proceeding further.
.. only:: obs or ubuntu or debian
1. Create the ``ceilometer`` database:
.. code-block:: console
# 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.
.. only:: rdo
1. Create the ``ceilometer`` database:
.. code-block:: console
# mongo --host controller --eval '
db = db.getSiblingDB("ceilometer");
db.createUser({user: "ceilometer",
pwd: "CEILOMETER_DBPASS",
roles: [ "readWrite", "dbAdmin" ]})'
MongoDB shell version: 2.6.x
connecting to: controller:27017/test
Successfully added user: { "user" : "ceilometer", "roles" : [ "readWrite", "dbAdmin" ] }
Replace ``CEILOMETER_DBPASS`` with a suitable password.
2. Source the ``admin`` credentials to gain access to admin-only
CLI commands:
.. code-block:: console
$ . admin-openrc
3. To create the service credentials, complete these steps:
* Create the ``ceilometer`` user:
.. code-block:: console
$ openstack user create --domain default --password-prompt ceilometer
User Password:
Repeat User Password:
+-----------+----------------------------------+
| Field | Value |
+-----------+----------------------------------+
| domain_id | e0353a670a9e496da891347c589539e9 |
| enabled | True |
| id | c859c96f57bd4989a8ea1a0b1d8ff7cd |
| name | ceilometer |
+-----------+----------------------------------+
* Add the ``admin`` role to the ``ceilometer`` user.
.. code-block:: console
$ openstack role add --project service --user ceilometer admin
.. note::
This command provides no output.
* Create the ``ceilometer`` service entity:
.. code-block:: console
$ openstack service create --name ceilometer \
--description "Telemetry" metering
+-------------+----------------------------------+
| Field | Value |
+-------------+----------------------------------+
| description | Telemetry |
| enabled | True |
| id | 5fb7fd1bb2954fddb378d4031c28c0e4 |
| name | ceilometer |
| type | metering |
+-------------+----------------------------------+
4. Create the Telemetry service API endpoints:
.. code-block:: console
$ openstack endpoint create --region RegionOne \
metering public http://controller:8777
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | b808b67b848d443e9eaaa5e5d796970c |
| interface | public |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 5fb7fd1bb2954fddb378d4031c28c0e4 |
| service_name | ceilometer |
| service_type | metering |
| url | http://controller:8777 |
+--------------+----------------------------------+
$ openstack endpoint create --region RegionOne \
metering internal http://controller:8777
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | c7009b1c2ee54b71b771fa3d0ae4f948 |
| interface | internal |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 5fb7fd1bb2954fddb378d4031c28c0e4 |
| service_name | ceilometer |
| service_type | metering |
| url | http://controller:8777 |
+--------------+----------------------------------+
$ openstack endpoint create --region RegionOne \
metering admin http://controller:8777
+--------------+----------------------------------+
| Field | Value |
+--------------+----------------------------------+
| enabled | True |
| id | b2c00566d0604551b5fe1540c699db3d |
| interface | admin |
| region | RegionOne |
| region_id | RegionOne |
| service_id | 5fb7fd1bb2954fddb378d4031c28c0e4 |
| service_name | ceilometer |
| service_type | metering |
| url | http://controller:8777 |
+--------------+----------------------------------+
Install and configure components
--------------------------------
.. only:: obs
#. Install the packages:
.. code-block:: console
# zypper install openstack-ceilometer-api \
openstack-ceilometer-collector \
openstack-ceilometer-agent-notification \
openstack-ceilometer-agent-central python-ceilometerclient
.. only:: rdo
#. Install the packages:
.. code-block:: console
# yum install openstack-ceilometer-api \
openstack-ceilometer-collector openstack-ceilometer-notification \
openstack-ceilometer-central python-ceilometerclient
.. only:: ubuntu or debian
#. Install the packages:
.. code-block:: console
# apt-get install ceilometer-api ceilometer-collector \
ceilometer-agent-central ceilometer-agent-notification
python-ceilometerclient
.. only:: debian
Respond to prompts for debconf.
.. :doc:`Identity service credentials <debconf/debconf-keystone-authtoken>`,
:doc:`service endpoint registration <debconf/debconf-api-endpoints>`,
and :doc:`message broker credentials <debconf/debconf-rabbitmq>`.
2. Edit the ``/etc/ceilometer/ceilometer.conf`` file and complete
the following actions:
* In the ``[database]`` section, configure database access:
.. code-block:: ini
[database]
...
connection = mongodb://ceilometer:CEILOMETER_DBPASS@controller:27017/ceilometer
Replace ``CEILOMETER_DBPASS`` with the password you chose for the
Telemetry service database. You must escape special characters such
as ':', '/', '+', and '@' in the connection string in accordance
with `RFC2396 <https://www.ietf.org/rfc/rfc2396.txt>`_.
.. only:: obs or rdo or ubuntu
* In the ``[DEFAULT]`` and ``[oslo_messaging_rabbit]`` sections,
configure ``RabbitMQ`` message queue access:
.. code-block:: ini
[DEFAULT]
...
rpc_backend = rabbit
[oslo_messaging_rabbit]
...
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = RABBIT_PASS
Replace ``RABBIT_PASS`` with the password you chose for the
``openstack`` account in ``RabbitMQ``.
* In the ``[DEFAULT]`` and ``[keystone_authtoken]`` sections,
configure Identity service access:
.. code-block:: ini
[DEFAULT]
...
auth_strategy = keystone
[keystone_authtoken]
...
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = ceilometer
password = CEILOMETER_PASS
Replace ``CEILOMETER_PASS`` with the password you chose for
the ``ceilometer`` user in the Identity service.
* In the ``[service_credentials]`` section, configure service credentials:
.. code-block:: ini
[service_credentials]
...
auth_type = password
auth_url = http://controller:5000/v3
project_domain_name = default
user_domain_name = default
project_name = service
username = ceilometer
password = CEILOMETER_PASS
interface = internalURL
region_name = RegionOne
Replace ``CEILOMETER_PASS`` with the password you chose for
the ``ceilometer`` user in the Identity service.
.. only:: obs
* In the ``[collector]`` section, configure the dispatcher:
.. code-block:: ini
[collector]
...
dispatcher = database
.. only:: obs or rdo or ubuntu
Configure the Apache HTTP server
--------------------------------
.. only:: rdo
* Create the ``/etc/httpd/conf.d/wsgi-ceilometer.conf`` file with
the following content:
.. code-block:: apache
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/httpd/ceilometer_error.log
CustomLog /var/log/httpd/ceilometer_access.log combined
</VirtualHost>
WSGISocketPrefix /var/run/httpd
.. only:: ubuntu
#. Create the ``/etc/apache2/sites-available/wsgi-ceilometer.conf`` file
with the following content:
.. code-block:: apache
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
#. Enable the Telemetry service virtual hosts:
.. code-block:: console
# a2ensite ceilometer
.. only:: obs
* Create the ``/etc/apache2/conf.d/wsgi-ceilometer.conf`` file
with the following content:
.. code-block:: apache
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
---------------------
.. only:: obs
#. Reload the Apache HTTP server:
.. code-block:: console
# systemctl reload apache2.service
#. Start the Telemetry services and configure them to start when the
system boots:
.. code-block:: console
# 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
.. only:: rdo
#. Reload the Apache HTTP server:
.. code-block:: console
# systemctl reload httpd.service
#. Start the Telemetry services and configure them to start when the
system boots:
.. code-block:: console
# systemctl enable openstack-ceilometer-notification.service \
openstack-ceilometer-central.service \
openstack-ceilometer-collector.service
# systemctl start openstack-ceilometer-notification.service \
openstack-ceilometer-central.service \
openstack-ceilometer-collector.service
.. only:: ubuntu
#. Reload the Apache HTTP server:
.. code-block:: console
# service apache2 reload
#. Restart the Telemetry services:
.. code-block:: console
# service ceilometer-agent-central restart
# service ceilometer-agent-notification restart
# service ceilometer-collector restart

View File

@ -1,6 +0,0 @@
==========
Next steps
==========
Your OpenStack environment now includes Telemetry. You can
:ref:`launch-instance` or add more services to your environment.

View File

@ -1,152 +0,0 @@
Enable Compute service meters
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Telemetry uses a combination of notifications and an agent to collect
Compute meters. Perform these steps on each compute node.
Install and configure components
--------------------------------
.. only:: obs
#. Install the packages:
.. code-block:: console
# zypper install openstack-ceilometer-agent-compute
.. only:: rdo
#. Install the packages:
.. code-block:: console
# yum install openstack-ceilometer-compute python-ceilometerclient python-pecan
.. only:: ubuntu or debian
#. Install the packages:
.. code-block:: console
# apt-get install ceilometer-agent-compute
2. Edit the ``/etc/ceilometer/ceilometer.conf`` file and
complete the following actions:
* In the ``[DEFAULT]`` and ``[oslo_messaging_rabbit]`` sections,
configure ``RabbitMQ`` message queue access:
.. code-block:: ini
[DEFAULT]
...
rpc_backend = rabbit
[oslo_messaging_rabbit]
...
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = RABBIT_PASS
Replace ``RABBIT_PASS`` with the password you chose for the
``openstack`` account in ``RabbitMQ``.
* In the ``[DEFAULT]`` and ``[keystone_authtoken]`` sections,
configure Identity service access:
.. code-block:: ini
[DEFAULT]
...
auth_strategy = keystone
[keystone_authtoken]
...
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = ceilometer
password = CEILOMETER_PASS
Replace ``CEILOMETER_PASS`` with the password you chose for the
Telemetry service database.
* In the ``[service_credentials]`` section, configure service
credentials:
.. code-block:: ini
[service_credentials]
...
auth_url = http://controller:5000/v2.0
username = ceilometer
project_name = service
password = CEILOMETER_PASS
interface = internalURL
region_name = RegionOne
Replace ``CEILOMETER_PASS`` with the password you chose for
the ``ceilometer`` user in the Identity service.
Configure Compute to use Telemetry
----------------------------------
* Edit the ``/etc/nova/nova.conf`` file and configure
notifications in the ``[DEFAULT]`` section:
.. code-block:: ini
[DEFAULT]
...
instance_usage_audit = True
instance_usage_audit_period = hour
notify_on_state_change = vm_and_task_state
notification_driver = messagingv2
Finalize installation
---------------------
.. only:: obs
#. Start the agent and configure it to start when the system boots:
.. code-block:: console
# systemctl enable openstack-ceilometer-agent-compute.service
# systemctl start openstack-ceilometer-agent-compute.service
.. only:: rdo
#. Start the agent and configure it to start when the system boots:
.. code-block:: console
# systemctl enable openstack-ceilometer-compute.service
# systemctl start openstack-ceilometer-compute.service
.. only:: obs or rdo
2. Restart the Compute service:
.. code-block:: console
# systemctl restart openstack-nova-compute.service
.. only:: ubuntu or debian
#. Restart the agent:
.. code-block:: console
# service ceilometer-agent-compute restart
#. Restart the Compute service:
.. code-block:: console
# service nova-compute restart

View File

@ -1,129 +0,0 @@
Enable Object Storage meters
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Telemetry uses a combination of polling and notifications to collect
Object Storage meters.
.. note::
Your environment must include the Object Storage service.
Prerequisites
-------------
The Telemetry service requires access to the Object Storage service
using the ``ResellerAdmin`` role. Perform these steps on the controller
node.
#. Source the ``admin`` credentials to gain access to admin-only
CLI commands.
.. code-block:: console
$ . admin-openrc
#. Create the ``ResellerAdmin`` role:
.. code-block:: console
$ openstack role create ResellerAdmin
+-----------+----------------------------------+
| Field | Value |
+-----------+----------------------------------+
| domain_id | None |
| id | 462fa46c13fd4798a95a3bfbe27b5e54 |
| name | ResellerAdmin |
+-----------+----------------------------------+
#. Add the ``ResellerAdmin`` role to the ``ceilometer`` user:
.. code-block:: console
$ openstack role add --project service --user ceilometer ResellerAdmin
.. note::
This command provides no output.
Install components
------------------
* Install the packages:
.. only:: ubuntu or debian
.. code-block:: console
# apt-get install python-ceilometermiddleware
.. only:: rdo
.. code-block:: console
# yum install python-ceilometermiddleware
.. only:: obs
.. code-block:: console
# zypper install python-ceilometermiddleware
Configure Object Storage to use Telemetry
-----------------------------------------
Perform these steps on the controller and any other nodes that
run the Object Storage proxy service.
* Edit the ``/etc/swift/proxy-server.conf`` file
and complete the following actions:
* In the ``[filter:keystoneauth]`` section, add the
``ResellerAdmin`` role:
.. code-block:: ini
[filter:keystoneauth]
...
operator_roles = admin, user, ResellerAdmin
* In the ``[pipeline:main]`` section, add ``ceilometer``:
.. code-block:: ini
[pipeline:main]
pipeline = ceilometer catch_errors gatekeeper healthcheck proxy-logging cache container_sync bulk ratelimit authtoken keystoneauth container-quotas account-quotas slo dlo versioned_writes proxy-logging proxy-server
* In the ``[filter:ceilometer]`` section, configure notifications:
.. code-block:: ini
[filter:ceilometer]
paste.filter_factory = ceilometermiddleware.swift:filter_factory
...
control_exchange = swift
url = rabbit://openstack:RABBIT_PASS@controller:5672/
driver = messagingv2
topic = notifications
log_level = WARN
Replace ``RABBIT_PASS`` with the password you chose for the
``openstack`` account in ``RabbitMQ``.
Finalize installation
---------------------
.. only:: rdo or obs
* Restart the Object Storage proxy service:
.. code-block:: console
# systemctl restart openstack-swift-proxy.service
.. only:: ubuntu or debian
* Restart the Object Storage proxy service:
.. code-block:: console
# service swift-proxy restart

View File

@ -1,68 +0,0 @@
Verify operation
~~~~~~~~~~~~~~~~
Verify operation of the Telemetry service. These steps only include the
Image service meters to reduce clutter. Environments with ceilometer
integration for additional services contain more meters.
.. note::
Perform these steps on the controller node.
#. Source the ``admin`` credentials to gain access to
admin-only CLI commands:
.. code-block:: console
$ . admin-openrc
#. List available meters:
.. code-block:: console
$ ceilometer meter-list
+--------------+-------+-------+--------------------------------------+---------+------------+
| Name | Type | Unit | Resource ID | User ID | Project ID |
+--------------+-------+-------+--------------------------------------+---------+------------+
| image | gauge | image | acafc7c0-40aa-4026-9673-b879898e1fc2 | None | cf12a15... |
| image.size | gauge | B | acafc7c0-40aa-4026-9673-b879898e1fc2 | None | cf12a15... |
+--------------+-------+-------+--------------------------------------+---------+------------+
#. Download the CirrOS image from the Image service:
.. code-block:: console
$ IMAGE_ID=$(glance image-list | grep 'cirros' | awk '{ print $2 }')
$ glance image-download $IMAGE_ID > /tmp/cirros.img
#. List available meters again to validate detection of the image
download:
.. code-block:: console
$ ceilometer meter-list
+----------------+-------+-------+--------------------------------------+---------+------------+
| Name | Type | Unit | Resource ID | User ID | Project ID |
+----------------+-------+-------+--------------------------------------+---------+------------+
| image | gauge | image | acafc7c0-40aa-4026-9673-b879898e1fc2 | None | cf12a15... |
| image.download | delta | B | acafc7c0-40aa-4026-9673-b879898e1fc2 | None | cf12a15... |
| image.serve | delta | B | acafc7c0-40aa-4026-9673-b879898e1fc2 | None | cf12a15... |
| image.size | gauge | B | acafc7c0-40aa-4026-9673-b879898e1fc2 | None | cf12a15... |
+----------------+-------+-------+--------------------------------------+---------+------------+
#. Retrieve usage statistics from the ``image.download`` meter:
.. code-block:: console
$ ceilometer statistics -m image.download -p 60
+--------+---------------------+---------------------+------------+------------+------------+------------+-------+----------+----------------------------+----------------------------+
| Period | Period Start | Period End | Max | Min | Avg | Sum | Count | Duration | Duration Start | Duration End |
+--------+---------------------+---------------------+------------+------------+------------+------------+-------+----------+----------------------------+----------------------------+
| 60 | 2015-04-21T12:21:45 | 2015-04-21T12:22:45 | 13200896.0 | 13200896.0 | 13200896.0 | 13200896.0 | 1 | 0.0 | 2015-04-21T12:22:12.983000 | 2015-04-21T12:22:12.983000 |
+--------+---------------------+---------------------+------------+------------+------------+------------+-------+----------+----------------------------+----------------------------+
#. Remove the previously downloaded image file ``/tmp/cirros.img``:
.. code-block:: console
$ rm /tmp/cirros.img

View File

@ -1,17 +0,0 @@
.. _install_ceilometer:
=================
Telemetry service
=================
.. toctree::
common/get_started_telemetry.rst
ceilometer-install.rst
ceilometer-glance.rst
ceilometer-nova.rst
ceilometer-cinder.rst
ceilometer-swift.rst
ceilometer-aodh.rst
ceilometer-verify.rst
ceilometer-next-steps.rst

View File

@ -101,6 +101,7 @@ exclude_patterns = ['common/cli*', 'common/nova*',
'common/get_started_database_service.rst',
'common/get_started_data_processing.rst',
'common/get_started_orchestration.rst',
'common/get_started_telemetry.rst',
'common/dashboard_customizing.rst',
'shared/note_configuration_vary_by_distribution.rst']

View File

@ -1,176 +0,0 @@
.. _environment-nosql-database:
NoSQL database
~~~~~~~~~~~~~~
The Telemetry service uses a NoSQL database to store information. The database
typically runs on the controller node. The procedures in this guide use
MongoDB.
.. note::
The installation of the NoSQL database server is only necessary when
installing the Telemetry service as documented in :ref:`install_ceilometer`.
Install and configure components
--------------------------------
.. only:: obs
1. Enable the Open Build Service repositories for MongoDB based on
your openSUSE or SLES version:
On openSUSE:
.. code-block:: console
# zypper addrepo -f obs://server:database/openSUSE_Leap_42.1 Database
On SLES:
.. code-block:: console
# zypper addrepo -f obs://server:database/SLE_12_SP1 Database
.. note::
The packages are signed by GPG key ``05905EA8``. You should
verify the fingerprint of the imported GPG key before using it.
.. code-block:: console
Key Name: server:database OBS Project <server:database@build.opensuse.org>
Key Fingerprint: 116EB863 31583E47 E63CDF4D 562111AC 05905EA8
Key Created: Mon 08 Dec 2014 09:54:12 AM UTC
Key Expires: Wed 15 Feb 2017 09:54:12 AM UTC
Install the MongoDB package:
.. code-block:: console
# zypper install mongodb
.. only:: rdo
1. Install the MongoDB packages:
.. code-block:: console
# yum install mongodb-server mongodb
.. only:: ubuntu
1. Install the MongoDB packages:
.. code-block:: console
# apt-get install mongodb-server mongodb-clients python-pymongo
.. only:: obs
2. Edit the ``/etc/mongodb.conf`` file and complete the following
actions:
* Configure the ``bind_ip`` key to use the management interface
IP address of the controller node.
.. code-block:: ini
bind_ip = 10.0.0.11
* By default, MongoDB creates several 1 GB journal files
in the ``/var/lib/mongodb/journal`` directory.
If you want to reduce the size of each journal file to
128 MB and limit total journal space consumption to 512 MB,
assert the ``smallfiles`` key:
.. code-block:: ini
smallfiles = true
You can also disable journaling. For more information, see the
`MongoDB manual <http://docs.mongodb.org/manual/>`__.
.. only:: rdo
2. Edit the ``/etc/mongod.conf`` file and complete the following
actions:
* Configure the ``bind_ip`` key to use the management interface
IP address of the controller node.
.. code-block:: ini
bind_ip = 10.0.0.11
* By default, MongoDB creates several 1 GB journal files
in the ``/var/lib/mongodb/journal`` directory.
If you want to reduce the size of each journal file to
128 MB and limit total journal space consumption to 512 MB,
assert the ``smallfiles`` key:
.. code-block:: ini
smallfiles = true
You can also disable journaling. For more information, see the
`MongoDB manual <http://docs.mongodb.org/manual/>`__.
.. only:: ubuntu
2. Edit the ``/etc/mongodb.conf`` file and complete the following
actions:
* Configure the ``bind_ip`` key to use the management interface
IP address of the controller node.
.. code-block:: ini
bind_ip = 10.0.0.11
* By default, MongoDB creates several 1 GB journal files
in the ``/var/lib/mongodb/journal`` directory.
If you want to reduce the size of each journal file to
128 MB and limit total journal space consumption to 512 MB,
assert the ``smallfiles`` key:
.. code-block:: ini
smallfiles = true
You can also disable journaling. For more information, see the
`MongoDB manual <http://docs.mongodb.org/manual/>`__.
Finalize installation
---------------------
.. only:: ubuntu
* If you change the journaling configuration, stop the MongoDB
service, remove the initial journal files, and start the service:
.. code-block:: console
# service mongodb stop
# rm /var/lib/mongodb/journal/prealloc.*
# service mongodb start
.. only:: rdo
* Start the MongoDB service and configure it to start when
the system boots:
.. code-block:: console
# systemctl enable mongod.service
# systemctl start mongod.service
.. only:: obs
* Start the MongoDB service and configure it to start when
the system boots:
.. code-block:: console
# systemctl enable mongodb.service
# systemctl start mongodb.service

View File

@ -78,6 +78,5 @@ Operations Guide <http://docs.openstack.org/ops/>`_.
environment-ntp.rst
environment-packages.rst
environment-sql-database.rst
environment-nosql-database.rst
environment-messaging.rst
environment-memcached.rst

View File

@ -89,7 +89,6 @@ Contents
cinder.rst
manila.rst
swift.rst
ceilometer.rst
launch-instance.rst
.. Pseudo only directive for each distribution used by the build tool.