152 lines
4.1 KiB
Markdown
152 lines
4.1 KiB
Markdown
InfluxDB-Grafana Plugin for Fuel
|
|
================================
|
|
|
|
InfluxDB-Grafana plugin
|
|
-----------------------
|
|
|
|
Overview
|
|
--------
|
|
|
|
[InfluxDB](http://influxdb.com/) provides an open source time series database.
|
|
[Grafana](http://grafana.org/) is a rich dashboard and graph editor for InfluxDB.
|
|
|
|
Requirements
|
|
------------
|
|
|
|
| Requirement | Version/Comment |
|
|
|----------------------------------|-----------------|
|
|
| Mirantis OpenStack compatibility | 6.1 or higher |
|
|
|
|
Recommendations
|
|
---------------
|
|
|
|
None.
|
|
|
|
Limitations
|
|
-----------
|
|
|
|
None.
|
|
|
|
Installation Guide
|
|
==================
|
|
|
|
**InfluxDB-Grafana** plugin installation
|
|
----------------------------------------
|
|
|
|
|
|
To install the InfluxDB-Grafana plugin, follow these steps:
|
|
|
|
1. Download the plugin from the [Fuel Plugins
|
|
Catalog](https://software.mirantis.com/download-mirantis-openstack-fuel-plug-ins/).
|
|
|
|
2. Copy the plugin file to the Fuel Master node. Follow the [Quick start
|
|
guide](https://software.mirantis.com/quick-start/) if you don't have a running
|
|
Fuel Master node yet.
|
|
|
|
```
|
|
scp influxdb_grafana-0.7-0.7.0-0.noarch.rpm root@<the Fuel Master node IP address>:
|
|
```
|
|
|
|
3. Install the plugin using the `fuel` command line:
|
|
|
|
```
|
|
fuel plugins --install influxdb_grafana-0.7-0.7.0-0.noarch.rpm
|
|
```
|
|
|
|
4. Verify that the plugin is installed correctly:
|
|
|
|
```
|
|
fuel plugins
|
|
```
|
|
|
|
Please refer to the [Fuel Plugins wiki](https://wiki.openstack.org/wiki/Fuel/Plugins)
|
|
if you want to build the plugin by yourself, version 2.0.0 (or higher) of the Fuel
|
|
Plugin Builder is required.
|
|
|
|
User Guide
|
|
==========
|
|
|
|
**InfluxDB-Grafana** plugin configuration
|
|
---------------------------------------------
|
|
|
|
1. Create a new environment with the Fuel UI wizard.
|
|
2. Add a node with the "Operating System" role.
|
|
3. Before applying changes or once changes applied, edit the name of the node by
|
|
clicking on "Untitled (xx:yy)" and modify it for "influxdb".
|
|
4. Click on the Settings tab of the Fuel web UI.
|
|
5. Scroll down the page, select the "InfluxDB-Grafana Server plugin" checkbox
|
|
and fill-in the required fields.
|
|
- The name of the node where the plugin is deployed.
|
|
- The password for the root user.
|
|
- The name of the database where you want to store your metrics.
|
|
- The username and the password for this specific database.
|
|
|
|
You can select up to 3 physical disks that will be mounted as a single logical
|
|
volume to store the InfluxDB data. If you specify no disk, the data will
|
|
be stored on the root filesystem. In all cases, InfluxDB data will be
|
|
located in the */opt/influxdb* directory.
|
|
|
|
For each disk, you can also specify the allocated size (in GB). If you don't
|
|
specify a value, the plugin will use all the free space of the disk.
|
|
|
|
Here is a screenshot of the fields
|
|
|
|
![InfluxDB-Grafana fields](./figures/influxdb-grafana-plugin.png "InfluxDB-Grafana fields")
|
|
|
|
Testing
|
|
-------
|
|
|
|
### InfluxDB
|
|
|
|
Once installed, you can check that InfluxDB is working using `curl`:
|
|
|
|
```
|
|
curl -G 'http://<HOST>:8086/db/lma/series?u=lma&p=<yourpassword>' --data-urlencode "q=list series"
|
|
```
|
|
|
|
Where `HOST` is the IP address or the name of the node that runs the server and
|
|
`yourpassword` is the password provided in the Fuel UI for the user of InfluxDB.
|
|
|
|
The curl command should return a valid JSON object similar to:
|
|
|
|
```
|
|
[{"name":"list_series_result","columns":["time","sequence_number","name"],"points":[...]}]
|
|
```
|
|
|
|
### Grafana
|
|
|
|
To check that Grafana is running, you need to make sure that *nginx* is listening
|
|
on port 80. The user interface is available at:
|
|
|
|
```
|
|
http://$HOST/
|
|
```
|
|
|
|
**Note**: if you deploy this plugin on a node that is also running the
|
|
[Elasticsearch-Kibana plugin](https://github.com/stackforge/fuel-plugin-elasticsearch-kibana)
|
|
then *nginx* will use the port 8000 instead of 80. So in that case the user interface
|
|
is available at:
|
|
|
|
```
|
|
http://$HOST:8000/
|
|
```
|
|
|
|
Known issues
|
|
------------
|
|
|
|
None.
|
|
|
|
Release Notes
|
|
-------------
|
|
|
|
**0.7.0**
|
|
|
|
* Initial release of the plugin. This is a beta version.
|
|
|
|
Contributors
|
|
------------
|
|
|
|
* Guillaume Thouvenin <gthouvenin@mirantis.com>
|
|
* Simon Pasquier <spasquier@mirantis.com>
|
|
* Swann Croiset <scroiset@mirantis.com>
|