diff --git a/doc/source/_static/images/architecture.png b/doc/source/_static/images/architecture.png new file mode 100644 index 000000000..b5dd78a06 Binary files /dev/null and b/doc/source/_static/images/architecture.png differ diff --git a/doc/source/_static/images/architecture.svg b/doc/source/_static/images/architecture.svg new file mode 100644 index 000000000..b22a677e5 --- /dev/null +++ b/doc/source/_static/images/architecture.svg @@ -0,0 +1,2 @@ + +

<div><br></div>

<div><br></div>
Monasca Client (CLI)
Monasca Client (CLI)
Horizon,
Monitoring Dashboard
Horizon,<div>Monitoring Dashboard</div>
system being
monitored
[Not supported by viewer]
Monasca Agent
Monasca Agent
Notification Engine
Notification Engine
Threshold Engine
Threshold Engine
Persister
Persister


Config
Database
[Not supported by viewer]
Message Queue
<<Kafka>>
[Not supported by viewer]


Measurements Database
[Not supported by viewer]
Monasca API
[Not supported by viewer]
Transform Engine
[Not supported by viewer]
\ No newline at end of file diff --git a/doc/source/index.rst b/doc/source/index.rst index 5d4035f59..5c176112a 100644 --- a/doc/source/index.rst +++ b/doc/source/index.rst @@ -35,6 +35,65 @@ repositories. Each module is designed to provide a discrete service in the overall monitoring solution and can be deployed or omitted according to operators/customers needs. +Architecture +============ + +The following illustration provides an overview of Monasca's metrics pipeline +and the interaction of the involved components. For information on Monasca's +log pipeline, refer to +`this wiki page `_. + +.. image:: /_static/images/architecture.png + :width: 900 px + +Repositories +------------ + +* `monasca-api `_: + RESTful API for metrics, alarms, and notifications. +* `monasca-agent `_: + Agent for retrieving metrics data. +* `monasca-persister `_: + Writes metrics and alarm state transitions to a time-series database. +* `monasca-thresh `_: + Thresholding engine for computing thresholds on metrics and determining alarm + states. +* `monasca-notification `_: + Pluggable notification engine for consuming alarm state transitions and + sending notifications for alarms. +* `monasca-transform `_: + Aggregation engine based on Apache Spark. +* `monasca-aggregator `_: + Light-weight metrics aggregator. + +Apart from sending requests directly to the API, the following tools are +available for interacting with Monasca: + +* `Monasca Client `_: + CLI and Python client. +* `Horizon plugin `_: + Plugin adding the monitoring panel to Horizon. +* `Grafana app `_: + Plugin for Grafana to view and configure alarm definitions, alarms, and + notifications. + +Libraries: + +* `monasca-common `_: + Common code used in the Monasca components. +* `monasca-statsd `_: + StatsD-compatible library for sending metrics from instrumented applications. + +Grafana__ integration: + +* `monasca-grafana-datasource + `_: + Multi-tenant Monasca data source for Grafana. +* `grafana `_: + Forked version of Grafana 4.1.2 with Keystone authentication added. + +__ https://grafana.com/ + For Contributors ================