Merge "Add install instructions for Aodh"
This commit is contained in:
commit
475da950bb
|
@ -2,7 +2,10 @@
|
|||
OpenStack Telemetry service
|
||||
===========================
|
||||
|
||||
The Telemetry service performs the following functions:
|
||||
Telemetry Data Collection service
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The Telemetry Data Collection services provide the following functions:
|
||||
|
||||
* Efficiently polls metering data related to OpenStack services.
|
||||
|
||||
|
@ -12,8 +15,6 @@ The Telemetry service performs the following functions:
|
|||
* Publishes collected data to various targets including data stores and
|
||||
message queues.
|
||||
|
||||
* Creates alarms when collected data breaks defined rules.
|
||||
|
||||
The Telemetry service consists of the following components:
|
||||
|
||||
A compute agent (``ceilometer-agent-compute``)
|
||||
|
@ -35,18 +36,35 @@ A collector (``ceilometer-collector``)
|
|||
telemetry data to a data store or external consumer without
|
||||
modification.
|
||||
|
||||
An alarm evaluator (``ceilometer-alarm-evaluator``)
|
||||
Runs on one or more central management servers to determine when
|
||||
alarms fire due to the associated statistic trend crossing a
|
||||
threshold over a sliding time window.
|
||||
|
||||
An alarm notifier (``ceilometer-alarm-notifier``)
|
||||
Runs on one or more central management servers to allow alarms to be
|
||||
set based on the threshold evaluation for a collection of samples.
|
||||
|
||||
An API server (``ceilometer-api``)
|
||||
Runs on one or more central management servers to provide data
|
||||
access from the data store.
|
||||
|
||||
Telemetry Alarming service
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The Telemetry Alarming services trigger alarms when the collected metering
|
||||
or event data break the defined rules.
|
||||
|
||||
The Telemetry Alarming service consists of the following components:
|
||||
|
||||
An API server (``aodh-api``)
|
||||
Runs on one or more central management servers to provide access
|
||||
to the alarm information stored in the data store.
|
||||
|
||||
An alarm evaluator (``aodh-evaluator``)
|
||||
Runs on one or more central management servers to determine when
|
||||
alarms fire due to the associated statistic trend crossing a
|
||||
threshold over a sliding time window.
|
||||
|
||||
A notification listener (``aodh-listener``)
|
||||
Runs on a central management server and determines when to fire alarms.
|
||||
The alarms are generated based on defined rules against events, which are
|
||||
captured by the Telemetry Data Collection service's notification agents.
|
||||
|
||||
An alarm notifier (``aodh-notifier``)
|
||||
Runs on one or more central management servers to allow alarms to be
|
||||
set based on the threshold evaluation for a collection of samples.
|
||||
|
||||
These services communicate by using the OpenStack messaging bus. Only
|
||||
the collector and API server have access to the data store.
|
||||
|
|
|
@ -0,0 +1,329 @@
|
|||
.. _aodh-install:
|
||||
|
||||
==========================================
|
||||
Install and configure the alarming service
|
||||
==========================================
|
||||
|
||||
The Telemetry module contains a stand-alone alarming service,
|
||||
code-named Aodh. This chapter guides you through the installation
|
||||
steps of this alarm management module that will work together with
|
||||
the other services of Telemetry.
|
||||
|
||||
.. only:: ubuntu
|
||||
|
||||
.. warning::
|
||||
|
||||
In the Liberty release of OpenStack, the services of the new Telemetry
|
||||
Alarming module are not officially supported on Ubuntu-based
|
||||
deployments.
|
||||
|
||||
Configure prerequisites
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The alarming service requires database access to store alarm definitions and
|
||||
history. You must install a database back end and create a database
|
||||
for Aodh. You also need to create service credentials, and API endpoint. If
|
||||
you already installed a database back end for the base services of the
|
||||
Telemetry module, you can choose to use that for the alarming service also.
|
||||
If you need to install a back end, see :ref:`environment-nosql-database` to
|
||||
install and configure MongoDB before proceeding further.
|
||||
|
||||
.. only:: ubuntu
|
||||
|
||||
#. Create the ``aodh`` database:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# mongo --host controller --eval '
|
||||
db = db.getSiblingDB("aodh");
|
||||
db.addUser({user: "aodh",
|
||||
pwd: "AODH_DBPASS",
|
||||
roles: [ "readWrite", "dbAdmin" ]})'
|
||||
|
||||
MongoDB shell version: 2.4.x
|
||||
connecting to: controller:27017/test
|
||||
{
|
||||
"user" : "aodh",
|
||||
"pwd" : "72f25aeee7ad4be52437d7cd3fc60f6f",
|
||||
"roles" : [
|
||||
"readWrite",
|
||||
"dbAdmin"
|
||||
],
|
||||
"_id" : ObjectId("5489c22270d7fad1ba631dc3")
|
||||
}
|
||||
|
||||
|
||||
Replace ``AODH_DBPASS`` with a suitable password.
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
#. Create the ``aodh`` database:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# mongo --host controller --eval '
|
||||
db = db.getSiblingDB("aodh");
|
||||
db.createUser({user: "aodh",
|
||||
pwd: "AODH_DBPASS",
|
||||
roles: [ "readWrite", "dbAdmin" ]})'
|
||||
|
||||
MongoDB shell version: 2.6.x
|
||||
connecting to: controller:27017/test
|
||||
Successfully added user: { "user" : "aodh", "roles" : [ "readWrite", "dbAdmin" ] }
|
||||
|
||||
Replace ``AODH_DBPASS`` with a suitable password.
|
||||
|
||||
|
||||
#. Source the ``admin`` credentials to gain access to admin-only
|
||||
CLI commands:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ source admin-openrc.sh
|
||||
|
||||
#. Create the service credentials:
|
||||
|
||||
* Create the ``aodh`` user:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
$ openstack user create --password-prompt aodh
|
||||
User Password:
|
||||
Repeat User Password:
|
||||
+----------+----------------------------------+
|
||||
| Field | Value |
|
||||
+----------+----------------------------------+
|
||||
| email | None |
|
||||
| enabled | True |
|
||||
| id | b7657c9ea07a4556aef5d34cf70713a3 |
|
||||
| name | aodh |
|
||||
| username | 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 Telemetry 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 the Telemetry Alarming service 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:: rdo
|
||||
|
||||
#. 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
|
||||
|
||||
#. Install the packages:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# apt-get install aodh-api aodh-evaluator aodh-notifier \
|
||||
aodh-listener aodh-expirer python-ceilometerclient
|
||||
|
||||
#. Edit the ``/etc/aodh/aodh.conf`` file and perform these steps:
|
||||
|
||||
* In the ``[database]`` section, configure database access:
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[database]
|
||||
...
|
||||
connection = mongodb://aodh:AODH_DBPASS@controller:27017/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. For further
|
||||
information see the Reserved Characters section of
|
||||
:ref:`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/v2.0
|
||||
identity_uri = http://controller:35357
|
||||
admin_tenant_name = service
|
||||
admin_user = aodh
|
||||
admin_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]
|
||||
...
|
||||
os_auth_url = http://controller:5000/v2.0
|
||||
os_username = aodh
|
||||
os_tenant_name = service
|
||||
os_password = AODH_PASS
|
||||
os_endpoint_type = internalURL
|
||||
os_region_name = RegionOne
|
||||
|
||||
Replace ``AODH_PASS`` with the password you chose for
|
||||
the ``aodh`` user in the Identity service.
|
||||
|
||||
* (Optional) To assist with troubleshooting, enable verbose
|
||||
logging in the ``[DEFAULT]`` section:
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[DEFAULT]
|
||||
...
|
||||
verbose = True
|
||||
|
||||
.. only:: ubuntu
|
||||
|
||||
#. Edit the api_paste.ini file and add or modify the
|
||||
``[filter:authtoken]`` section:
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[filter:authtoken]
|
||||
...
|
||||
oslo_config_project = aodh
|
||||
|
||||
Finalize installation
|
||||
~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
#. 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:: ubuntu
|
||||
|
||||
#. Restart the Telemetry Alarming services:
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
# service aodh-api restart
|
||||
# service aodh-evaluator restart
|
||||
# service aodh-notifier restart
|
||||
# service aodh-listener restart
|
|
@ -174,9 +174,7 @@ Install and configure components
|
|||
# zypper install openstack-ceilometer-api \
|
||||
openstack-ceilometer-collector \
|
||||
openstack-ceilometer-agent-notification \
|
||||
openstack-ceilometer-agent-central python-ceilometerclient \
|
||||
openstack-ceilometer-alarm-evaluator \
|
||||
openstack-ceilometer-alarm-notifier
|
||||
openstack-ceilometer-agent-central python-ceilometerclient
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
|
@ -186,8 +184,7 @@ Install and configure components
|
|||
|
||||
# yum install openstack-ceilometer-api \
|
||||
openstack-ceilometer-collector openstack-ceilometer-notification \
|
||||
openstack-ceilometer-central openstack-ceilometer-alarm \
|
||||
python-ceilometerclient
|
||||
openstack-ceilometer-central python-ceilometerclient
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
|
@ -196,8 +193,7 @@ Install and configure components
|
|||
.. code-block:: console
|
||||
|
||||
# apt-get install ceilometer-api ceilometer-collector \
|
||||
ceilometer-agent-central ceilometer-agent-notification \
|
||||
ceilometer-alarm-evaluator ceilometer-alarm-notifier \
|
||||
ceilometer-agent-central ceilometer-agent-notification
|
||||
python-ceilometerclient
|
||||
|
||||
.. only:: debian
|
||||
|
@ -314,15 +310,11 @@ Finalize installation
|
|||
# systemctl enable openstack-ceilometer-api.service \
|
||||
openstack-ceilometer-agent-notification.service \
|
||||
openstack-ceilometer-agent-central.service \
|
||||
openstack-ceilometer-collector.service \
|
||||
openstack-ceilometer-alarm-evaluator.service \
|
||||
openstack-ceilometer-alarm-notifier.service
|
||||
openstack-ceilometer-collector.service
|
||||
# systemctl start openstack-ceilometer-api.service \
|
||||
openstack-ceilometer-agent-notification.service \
|
||||
openstack-ceilometer-agent-central.service \
|
||||
openstack-ceilometer-collector.service \
|
||||
openstack-ceilometer-alarm-evaluator.service \
|
||||
openstack-ceilometer-alarm-notifier.service
|
||||
openstack-ceilometer-collector.service
|
||||
|
||||
.. only:: rdo
|
||||
|
||||
|
@ -334,15 +326,11 @@ Finalize installation
|
|||
# systemctl enable openstack-ceilometer-api.service \
|
||||
openstack-ceilometer-notification.service \
|
||||
openstack-ceilometer-central.service \
|
||||
openstack-ceilometer-collector.service \
|
||||
openstack-ceilometer-alarm-evaluator.service \
|
||||
openstack-ceilometer-alarm-notifier.service
|
||||
openstack-ceilometer-collector.service
|
||||
# systemctl start openstack-ceilometer-api.service \
|
||||
openstack-ceilometer-notification.service \
|
||||
openstack-ceilometer-central.service \
|
||||
openstack-ceilometer-collector.service \
|
||||
openstack-ceilometer-alarm-evaluator.service \
|
||||
openstack-ceilometer-alarm-notifier.service
|
||||
openstack-ceilometer-collector.service
|
||||
|
||||
.. only:: ubuntu or debian
|
||||
|
||||
|
@ -354,5 +342,3 @@ Finalize installation
|
|||
# service ceilometer-agent-notification restart
|
||||
# service ceilometer-api restart
|
||||
# service ceilometer-collector restart
|
||||
# service ceilometer-alarm-evaluator restart
|
||||
# service ceilometer-alarm-notifier restart
|
||||
|
|
|
@ -12,5 +12,6 @@ Telemetry service
|
|||
ceilometer-nova.rst
|
||||
ceilometer-cinder.rst
|
||||
ceilometer-swift.rst
|
||||
ceilometer-aodh.rst
|
||||
ceilometer-verify.rst
|
||||
ceilometer-next-steps.rst
|
||||
|
|
Loading…
Reference in New Issue