6cf7bd3935
Added some basic (minimalistic) information about the rest of the Telemtry-based services that had no listing prior. Change-Id: Icbb6cde0b3723b00e9bc0121265ba24d8033b77b Closes-Bug: 1371004
95 lines
4.5 KiB
XML
95 lines
4.5 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<section xmlns="http://docbook.org/ns/docbook"
|
|
xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
version="5.0"
|
|
xml:id="metering-service">
|
|
<title>Telemetry module</title>
|
|
<para>The Telemetry module performs the following functions:</para>
|
|
<para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>Efficiently collects the metering data about the CPU
|
|
and network costs.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Collects data by monitoring notifications sent from
|
|
services or by polling the infrastructure.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Configures the type of collected data to meet
|
|
various operating requirements. It accesses and inserts the
|
|
metering data through the REST API.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Expands the framework to collect custom usage data
|
|
by additional plug-ins.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Produces signed metering messages that cannot be
|
|
repudiated.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
<para>The Telemetry module consists of the following
|
|
components:</para>
|
|
<variablelist>
|
|
<varlistentry><term>A compute agent (<systemitem class="service"
|
|
>ceilometer-agent-compute</systemitem>)</term>
|
|
<listitem><para>Runs on each compute node and polls for resource
|
|
utilization statistics. There may be other types of agents in the
|
|
future, but for now our focus is creating the compute agent.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry><term>A central agent (<systemitem class="service"
|
|
>ceilometer-agent-central</systemitem>)</term>
|
|
<listitem><para>Runs on a central management server to poll for
|
|
resource utilization statistics for resources not tied to instances
|
|
or compute nodes.</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry><term>A notification agent (<systemitem class="service"
|
|
>ceilometer-agent-notification</systemitem>)</term>
|
|
<listitem><para>Runs on a central management server to initiate
|
|
alarm actions, such as calling out to a webhook with a description
|
|
of the alarm state transition.</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry><term>A collector (<systemitem class="service"
|
|
>ceilometer-collector</systemitem>)</term>
|
|
<listitem><para>Runs on central management server(s) to monitor the
|
|
message queues (for notifications and for metering data coming from
|
|
the agent). Notification messages are processed and turned into
|
|
metering messages, which are sent to the message bus using the
|
|
appropriate topic. Telemetry messages are written to the data store
|
|
without modification.</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry><term>An alarm evaluator (<systemitem class="service"
|
|
>ceilometer-alarm-evaluator</systemitem>)</term>
|
|
<listitem><para>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.</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry><term>An alarm notifier (<systemitem class="service"
|
|
>ceilometer-alarm-notifier</systemitem>)</term>
|
|
<listitem><para>Runs on one or more central management servers to
|
|
allow alarms to be set based on the threshold evaluation for a
|
|
collection of samples.</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term>A data store</term>
|
|
<listitem><para>A database capable of handling
|
|
concurrent writes (from one or more collector instances)
|
|
and reads (from the API server).</para></listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term>An API server (<systemitem
|
|
class="service">ceilometer-api</systemitem>)</term>
|
|
<listitem><para>Runs on one or more central management servers to
|
|
provide data access from the data store.</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
<para>These services communicate by using the OpenStack messaging bus.
|
|
Only the collector and API server have access
|
|
to the data store.</para>
|
|
</section>
|