StackLight 0.10.0 documentation updates
Change-Id: I3eea90c3d38f2b850db6dcc5242be4cf4518339c
(cherry picked from commit 23925e5de9
)
33
README.md
@ -1,24 +1,21 @@
|
||||
The InfluxDB-Grafana Plugin for Fuel
|
||||
====================================
|
||||
The StackLight InfluxDB-Grafana Plugin for Fuel
|
||||
===============================================
|
||||
|
||||
Overview
|
||||
--------
|
||||
|
||||
The InfluxDB-Grafana Plugin for Fuel is used to install and configure
|
||||
The StackLight InfluxDB-Grafana Plugin for Fuel is used to install and configure
|
||||
[InfluxDB](http://influxdb.com/) and
|
||||
[Grafana](http://grafana.org/) which collectively provide access to
|
||||
OpenStack analytics for the metrics collected and processed by the
|
||||
[LMA Collector](http://fuel-plugin-lma-collector.readthedocs.org/en/latest/index.html)
|
||||
Plugin.
|
||||
metrics analytics of Mirantis OpenStack. The metrics are collected and
|
||||
processed by the [StackLight Collector]
|
||||
(http://fuel-plugin-lma-collector.readthedocs.org/en/latest/index.html).
|
||||
|
||||
Please check the [InfluxDB-Grafana Plugin Overview](
|
||||
Please go to the [InfluxDB-Grafana Plugin Overview](
|
||||
http://fuel-plugin-influxdb-grafana.readthedocs.org/en/latest/overview.html)
|
||||
section of the plugin documentation for additional information.
|
||||
to getting started.
|
||||
|
||||
Release Notes
|
||||
-------------
|
||||
|
||||
The release notes of the InfluxDB-Grafana Plugin are provided in the
|
||||
A summary description of the new features are provided in the
|
||||
[Release Notes](
|
||||
http://fuel-plugin-influxdb-grafana.readthedocs.org/en/latest/releases.html)
|
||||
section of the plugin documentation.
|
||||
@ -26,36 +23,34 @@ section of the plugin documentation.
|
||||
Requirements
|
||||
------------
|
||||
|
||||
The InfluxDB-Grafana Plugin requirements are defined in the [Requirements](
|
||||
The requirements are defined in the [Requirements](
|
||||
http://fuel-plugin-influxdb-grafana.readthedocs.org/en/latest/overview.html#requirements)
|
||||
section of the plugin documentation.
|
||||
|
||||
Known issues
|
||||
------------
|
||||
|
||||
The LMA Toolchain's related issues are listed on [Launchpad](
|
||||
All known issues are listed on [Launchpad](
|
||||
https://bugs.launchpad.net/lma-toolchain).
|
||||
|
||||
Limitations
|
||||
-----------
|
||||
|
||||
The InfluxDB-Grafana Plugin limitations are described in the [Limitations](
|
||||
All known limitations are described in the [Limitations](
|
||||
http://fuel-plugin-influxdb-grafana.readthedocs.org/en/latest/overview.html#limitations)
|
||||
section of the plugin documentation.
|
||||
|
||||
Installation
|
||||
------------
|
||||
|
||||
The installation instructions of the InfluxDB-Grafana Plugin are provided
|
||||
in the [Installation](
|
||||
The installation instructions are provided in the [Installation](
|
||||
http://fuel-plugin-influxdb-grafana.readthedocs.org/en/latest/installation.html)
|
||||
section of the plugin documentation.
|
||||
|
||||
User Guide
|
||||
----------
|
||||
|
||||
Instructions for how to configure and use the InfluxDB-Grafana Plugin
|
||||
are provided in the [User Guide](
|
||||
Instructions for how to configure and use the InfluxDB-Grafana Plugin are provided in the [User Guide](
|
||||
http://fuel-plugin-influxdb-grafana.readthedocs.org/en/latest/user.html)
|
||||
section of the plugin documentation.
|
||||
|
||||
|
Before Width: | Height: | Size: 122 KiB After Width: | Height: | Size: 304 KiB |
Before Width: | Height: | Size: 69 KiB After Width: | Height: | Size: 151 KiB |
Before Width: | Height: | Size: 142 KiB After Width: | Height: | Size: 180 KiB |
BIN
doc/images/ldap_auth.png
Normal file
After Width: | Height: | Size: 270 KiB |
BIN
doc/images/tls_settings.png
Normal file
After Width: | Height: | Size: 65 KiB |
Before Width: | Height: | Size: 115 KiB After Width: | Height: | Size: 1.1 MiB |
@ -5,7 +5,7 @@ source_suffix = '.rst'
|
||||
|
||||
master_doc = 'index'
|
||||
|
||||
project = u'The InfluxDB-Grafana plugin for Fuel'
|
||||
project = u'The StackLight InfluxDB-Grafana plugin for Fuel'
|
||||
copyright = u'2015, Mirantis Inc.'
|
||||
|
||||
version = '0.10'
|
||||
@ -19,7 +19,7 @@ html_theme = 'default'
|
||||
html_static_path = ['_static']
|
||||
|
||||
latex_documents = [
|
||||
('index', 'InfluxDBGrafana.tex', u'The InfluxDB-Grafana plugin for Fuel Documentation',
|
||||
('index', 'InfluxDBGrafana.tex', u'The StackLight InfluxDB-Grafana plugin for Fuel Documentation',
|
||||
u'Mirantis Inc.', 'manual'),
|
||||
]
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
========================================================================
|
||||
Welcome to the Mirantis OpenStack InfluxDB-Grafana Plugin Documentation!
|
||||
========================================================================
|
||||
================================================================
|
||||
Welcome to the StackLight InfluxDB-Grafana Plugin Documentation!
|
||||
================================================================
|
||||
|
||||
User documentation
|
||||
==================
|
||||
|
@ -6,17 +6,20 @@ Installation Guide
|
||||
InfluxDB-Grafana Fuel Plugin installation using the RPM file of the Fuel Plugins Catalog
|
||||
----------------------------------------------------------------------------------------
|
||||
|
||||
To install the InfluxDB-Grafana Fuel Plugin using the RPM file of the Fuel Plugins
|
||||
To install the StackLight InfluxDB-Grafana Fuel Plugin using the RPM file of the Fuel Plugins
|
||||
Catalog, you need to follow these steps:
|
||||
|
||||
1. Download the RPM file from the `Fuel Plugins Catalog <https://software.mirantis.com/download-mirantis-openstack-fuel-plug-ins/>`_.
|
||||
1. Select, using the MONITORING category and the Mirantis OpenStack version you are using,
|
||||
the RPM file you want to download from the `Fuel Plugins Catalog
|
||||
<https://www.mirantis.com/validated-solution-integrations/fuel-plugins>`_.
|
||||
|
||||
2. Copy the RPM file to the Fuel Master node::
|
||||
|
||||
[root@home ~]# scp influxdb_grafana-0.10-0.10.0-1.noarch.rpm \
|
||||
root@<Fuel Master node IP address>:
|
||||
|
||||
3. Install the plugin using the `Fuel CLI <http://docs.mirantis.com/openstack/fuel/fuel-8.0/user-guide.html#using-fuel-cli>`_::
|
||||
3. Install the plugin using the `Fuel CLI
|
||||
<http://docs.mirantis.com/openstack/fuel/fuel-8.0/user-guide.html#using-fuel-cli>`_::
|
||||
|
||||
[root@fuel ~]# fuel plugins --install influxdb_grafana-0.10-0.10.0-1.noarch.rpm
|
||||
|
||||
@ -27,16 +30,17 @@ Catalog, you need to follow these steps:
|
||||
---|----------------------|----------|----------------
|
||||
1 | influxdb_grafana | 0.10.0 | 4.0.0
|
||||
|
||||
InfluxDB-Grafana Fuel Plugin installtion from source
|
||||
----------------------------------------------------
|
||||
StackLight InfluxDB-Grafana Fuel Plugin installtion from source
|
||||
---------------------------------------------------------------
|
||||
|
||||
Alternatively, you may want to build the RPM file of the plugin from source
|
||||
if, for example, you want to test the latest features, modify some built-in
|
||||
configuration or implement your own customization.
|
||||
But note that running a Fuel plugin that you have built yourself is at your own risk.
|
||||
Alternatively, you may want to build the RPM file of the plugin from source if,
|
||||
for example, you want to test the latest features of the master branch or customize the plugin.
|
||||
|
||||
To install the InfluxDB-Grafana Plugin from source, you first need to prepare an
|
||||
environment to build the RPM file.
|
||||
.. note:: Be aware that running a Fuel plugin that you built yourself is at your
|
||||
own risk and will not be supported.
|
||||
|
||||
To install the StackLight InfluxDB-Grafana Plugin from source,
|
||||
you first need to prepare an environment to build the RPM file.
|
||||
The recommended approach is to build the RPM file directly onto the Fuel Master
|
||||
node so that you won't have to copy that file later on.
|
||||
|
||||
@ -54,7 +58,7 @@ node so that you won't have to copy that file later on.
|
||||
|
||||
[root@home ~] pip install fuel-plugin-builder
|
||||
|
||||
**Note**: You may also need to build the Fuel Plugin Builder if the package version of the
|
||||
.. note:: You may also need to build the Fuel Plugin Builder if the package version of the
|
||||
plugin is higher than the package version supported by the Fuel Plugin Builder you get from `pypi`.
|
||||
In this case, please refer to the section "Preparing an environment for plugin development"
|
||||
of the `Fuel Plugins wiki <https://wiki.openstack.org/wiki/Fuel/Plugins>`_
|
||||
@ -76,13 +80,13 @@ if you need further instructions about how to build the Fuel Plugin Builder.
|
||||
|
||||
[root@fuel ~] fuel plugins --install ./fuel-plugin-influxdb-grafana/*.noarch.rpm
|
||||
|
||||
Software components installed by the InfluxDB-Grafana Plugin
|
||||
------------------------------------------------------------
|
||||
StackLight InfluxDB-Grafana Fuel plugin software components
|
||||
-----------------------------------------------------------
|
||||
|
||||
+----------------+-------------------------------------+
|
||||
| Components | Version |
|
||||
+================+=====================================+
|
||||
| InfluxDB | v0.10.3 for Ubuntu (64-bit) |
|
||||
| InfluxDB | v0.11.1 for Ubuntu (64-bit) |
|
||||
+----------------+-------------------------------------+
|
||||
| Grafana | v3.0.3 for Ubuntu (64-bit) |
|
||||
| Grafana | v3.0.4 for Ubuntu (64-bit) |
|
||||
+----------------+-------------------------------------+
|
||||
|
@ -30,4 +30,3 @@ Puppet modules
|
||||
+---------+--------------------------------------------------+-----------+
|
||||
| Grafana | https://github.com/bfraser/puppet-grafana | Apache v2 |
|
||||
+---------+--------------------------------------------------+-----------+
|
||||
|
||||
|
@ -3,15 +3,15 @@
|
||||
Overview
|
||||
========
|
||||
|
||||
The **InfluxDB-Grafana Fuel Plugin** is used to install and configure
|
||||
InfluxDB and Grafana which collectively provide access to the OpenStack
|
||||
metrics analytics. InfluxDB is a powerful distributed time-series database
|
||||
The **StackLight InfluxDB-Grafana Fuel Plugin** is used to install and configure
|
||||
InfluxDB and Grafana which collectively provide access to the
|
||||
metrics analytics of Mirantis OpenStack.
|
||||
InfluxDB is a powerful distributed time-series database
|
||||
to store and search metrics time-series. The metrics analytics are used to
|
||||
visualize the time-series and the annotations produced by the LMA Collector.
|
||||
The annotations contain insightful information about the detected fault
|
||||
or anomaly that triggered a change of state for a node cluster or service
|
||||
cluster as well as textual hints about what might be the root cause of the
|
||||
fault or anomaly.
|
||||
visualize the time-series and the annotations produced by the StackLight Collector.
|
||||
The annotations contain insightful information about the faults and anomalies
|
||||
that resulted in a change of state for the clusters of nodes and services
|
||||
of the OpenStack environment.
|
||||
|
||||
The InfluxDB-Grafana Plugin is an indispensable tool to answering
|
||||
the questions "what has changed in my OpenStack environment, when and why?".
|
||||
@ -32,7 +32,6 @@ as shown in the figure below.
|
||||
Requirements
|
||||
------------
|
||||
|
||||
|
||||
+------------------------+--------------------------------------------------------------------------------------------+
|
||||
| **Requirement** | **Version/Comment** |
|
||||
+========================+============================================================================================+
|
||||
@ -40,7 +39,7 @@ Requirements
|
||||
| | system, 10GB for the logs and 30GB for the database. The installation of the |
|
||||
| | plugin will fail if there is less than 55GB of disk space available on the node. |
|
||||
+------------------------+--------------------------------------------------------------------------------------------+
|
||||
| Mirantis OpenStack | 8.0 |
|
||||
| Mirantis OpenStack | 8.0, 9.0 |
|
||||
+------------------------+--------------------------------------------------------------------------------------------+
|
||||
| Hardware configuration | The hardware configuration (RAM, CPU, disk(s)) required by this plugin depends on the size |
|
||||
| | of your cloud environment and other factors like the retention policy. An average |
|
||||
@ -58,7 +57,7 @@ Limitations
|
||||
|
||||
Currently, the size of an InfluxDB cluster the Fuel plugin can deploy is limited to three nodes. In addition to this,
|
||||
each node of the InfluxDB cluster is configured to run under the *meta* node role and the *data* node role. Therefore,
|
||||
it is not possible using the Fuel plugin, to separate the nodes participating in the Raft consensus cluster from
|
||||
it is not possible to separate the nodes participating in the Raft consensus cluster from
|
||||
the nodes accessing the data replicas.
|
||||
|
||||
Key terms, acronyms and abbreviations
|
||||
@ -67,8 +66,8 @@ Key terms, acronyms and abbreviations
|
||||
+----------------------+--------------------------------------------------------------------------------------------+
|
||||
| **Terms & acronyms** | **Definition** |
|
||||
+======================+============================================================================================+
|
||||
| LMA Collector | Logging, Monitoring and Alerting (LMA) Collector. A service running on each node which |
|
||||
| | collects all the logs and the OpenStack notifications. |
|
||||
| The Collector | The StackLight Collector is a smart monitoring agent running on every node which collects |
|
||||
| | and process the metrics of your OpenStack environment. |
|
||||
+----------------------+--------------------------------------------------------------------------------------------+
|
||||
| InfluxDB | InfluxDB is a time-series, metrics, and analytics open-source database (MIT license). |
|
||||
| | It’s written in Go and has no external dependencies. |
|
||||
|
@ -6,6 +6,16 @@ Release Notes
|
||||
Version 0.10.0
|
||||
--------------
|
||||
|
||||
* Changes
|
||||
|
||||
* Add support for LDAP(S) authentication to access Grafana.
|
||||
* Add support for TLS encryption to access Grafana.
|
||||
A PEM file obtained by concatenating the SSL certificate with the private key
|
||||
of the server must be provided in the settings of the plugin to configure the
|
||||
TLS termination.
|
||||
* Upgrade to InfluxDB v0.11.1.
|
||||
* Upgrade to Grafana v3.0.4.
|
||||
|
||||
Version 0.9.0
|
||||
-------------
|
||||
|
||||
|
@ -8,21 +8,20 @@ User Guide
|
||||
Plugin configuration
|
||||
--------------------
|
||||
|
||||
To configure the plugin, you need to follow these steps:
|
||||
To configure the **StackLight InfluxDB-Grafana Plugin**, you need to follow these steps:
|
||||
|
||||
#. `Create a new environment <http://docs.mirantis.com/openstack/fuel/fuel-8.0/user-guide.html#launch-wizard-to-create-new-environment>`_
|
||||
from the Fuel web user interface.
|
||||
1. `Create a new environment
|
||||
<http://docs.openstack.org/developer/fuel-docs/userdocs/fuel-user-guide/create-environment/start-create-env.html>`_.
|
||||
|
||||
#. Click on the **Settings** tab and select the **Other** category.
|
||||
2. Click on the *Settings* tab of the Fuel web UI and select the *Other* category.
|
||||
|
||||
#. Scroll down through the settings until you find the **InfluxDB-Grafana Server
|
||||
Plugin** section. You should see a page like this
|
||||
3. Scroll down through the settings until you find the **InfluxDB-Grafana Server
|
||||
Plugin** section. You should see a page like this:
|
||||
|
||||
.. image:: ../images/influx_grafana_settings.png
|
||||
:width: 800
|
||||
:align: center
|
||||
|
||||
#. Tick the **InfluxDB-Grafana Plugin** box and fill-in the required fields as indicated below.
|
||||
4. Tick the **InfluxDB-Grafana Plugin** box and fill-in the required fields as indicated below.
|
||||
|
||||
a. Specify the number of days of retention for your data.
|
||||
b. Specify the InfluxDB admin password (called root password in the InfluxDB documentation).
|
||||
@ -30,8 +29,8 @@ To configure the plugin, you need to follow these steps:
|
||||
d. Specify the InfluxDB username and password.
|
||||
e. Specify the Grafana username and password.
|
||||
|
||||
#. With the introduction of Grafana 2.6.0, the plugin now uses a MySQL database
|
||||
to store its configuration such as the dashboard templates.
|
||||
5. Since the introduction of Grafana 2.6.0, the plugin now uses a MySQL database
|
||||
to store its configuration data such as the dashboard templates.
|
||||
|
||||
a. Select **Local MySQL** if you want to create the Grafana database using the MySQL server
|
||||
of the OpenStack control-plane. Otherwise, select **Remote server** and specify
|
||||
@ -39,53 +38,106 @@ To configure the plugin, you need to follow these steps:
|
||||
b. Then, specify the MySQL database name, username and password that will be used
|
||||
to access that database.
|
||||
|
||||
#. Scroll down to the bottom of the page and click the **Save Settings** button when
|
||||
you are done with the settings.
|
||||
6. Tick the *Enable TLS for Grafana* box if you want to encrypt your
|
||||
Grafana credentials (username, password). Then, fill-in the required
|
||||
fields as indicated below.
|
||||
|
||||
#. Assign the *InfluxDB_Grafana* role to either one node (no HA) or three nodes if
|
||||
you want to run the InfluxDB and Grafana servers in an HA cluster.
|
||||
Note that installing the InfluxDB and Grafana servers on more than three nodes is currently
|
||||
not possible. Similarly, installing the InfluxDB and Grafana servers on two nodes
|
||||
is not recommended to avoid split-brain situations in the Raft consensus of
|
||||
the InfluxDB cluster as well as the *Pacemaker* cluster which is responsible of
|
||||
the VIP address failover.
|
||||
To be also noted, it is possible to add or remove a node
|
||||
with the *InfluxDB_Grafana* role in the cluster after deployment.
|
||||
.. image:: ../images/tls_settings.png
|
||||
:width: 800
|
||||
|
||||
a. Specify the DNS name of the Grafana server. This parameter is used
|
||||
to create a link in the Fuel dashboard to the Grafana server.
|
||||
#. Specify the location of a PEM file that contains the certificate
|
||||
and the private key of the Grafana server that will be used in TLS handchecks
|
||||
with the client.
|
||||
|
||||
7. Tick the *Use LDAP for Grafana authentication* box if you want to authenticate
|
||||
via LDAP to Grafana. Then, fill-in the required fields as indicated below.
|
||||
|
||||
.. image:: ../images/ldap_auth.png
|
||||
:width: 800
|
||||
|
||||
a. Select the *LDAPS* button if you want to enable LDAP authentication
|
||||
over SSL.
|
||||
#. Specify one or several LDAP server addresses separated by a space. Those
|
||||
addresses must be accessible from the node where Grafana is installed.
|
||||
Note that addresses external to the *management network* are not routable
|
||||
by default (see the note below).
|
||||
#. Specify the LDAP server port number or leave it empty to use the defaults.
|
||||
#. Specify the *Bind DN* of a user who has search priviliges on the LDAP server.
|
||||
#. Specify the password of the user identified by the *Bind DN* above.
|
||||
#. Specify the *Base DN* in the Directory Information Tree (DIT) from where
|
||||
to search for users.
|
||||
#. Specify a valid user search filter (ex. (uid=%s)).
|
||||
The result of the search should return a unique user entry.
|
||||
#. Specify a valid search filter to search for users.
|
||||
Example ``(uid=%s)``
|
||||
|
||||
You can further restrict access to Grafana to those users who
|
||||
are member of a specific LDAP group.
|
||||
|
||||
a. Tick the *Enable group-based authorization*.
|
||||
#. Specify the LDAP group *Base DN* in the DIT from where to search
|
||||
for groups.
|
||||
#. Specify the LDAP group search filter.
|
||||
Example ``(&(objectClass=posixGroup)(memberUid=%s))``
|
||||
#. Specify the CN of the LDAP group that will be mapped to the *admin role*
|
||||
#. Specify the CN of the LDAP group that will be mapped to the *viewer role*
|
||||
|
||||
Users who have the *admin role* can modify the Grafana dashboards
|
||||
or create new ones. Users who have the *viewer role* can only
|
||||
visualise the Grafana dashboards.
|
||||
|
||||
7. `Configure your environment
|
||||
<http://docs.openstack.org/developer/fuel-docs/userdocs/fuel-user-guide/configure-environment.html>`_.
|
||||
|
||||
.. note:: By default, StackLight is configured to use the *management network*,
|
||||
of the so-called `Default Node Network Group
|
||||
<http://docs.openstack.org/developer/fuel-docs/userdocs/fuel-user-guide/configure-environment/network-settings.html>`_.
|
||||
While this default setup may be appropriate for small deployments or
|
||||
evaluation purposes, it is recommended not to use this network
|
||||
for StackLight in production. It is instead recommended to create a network
|
||||
dedicated to StackLight using the `networking templates
|
||||
<https://docs.mirantis.com/openstack/fuel/fuel-8.0/operations.html#using-networking-templates>`_
|
||||
capability of Fuel. Using a dedicated network for StackLight will
|
||||
improve performances and reduce the monitoring footprint on the
|
||||
control-plane. It will also facilitate access to the Gafana UI
|
||||
after deployment as the *management network* is not routable.
|
||||
|
||||
8. Click the *Nodes* tab and assign the *InfluxDB_Grafana* role
|
||||
to the node(s) where you want to install the plugin.
|
||||
|
||||
You can see in the example below that the *InfluxDB_Grafana*
|
||||
role is assigned to three nodes along side with the
|
||||
*Alerting_Infrastructure* and the *Elasticsearch_Kibana* roles.
|
||||
Here, the three plugins of the LMA toolchain backend servers are
|
||||
installed on the same nodes. You can assign the *InfluxDB_Grafana*
|
||||
role to either one node (standalone install) or three nodes for HA.
|
||||
|
||||
.. image:: ../images/influx_grafana_role.png
|
||||
:width: 800
|
||||
:align: center
|
||||
|
||||
.. note:: You can see in the example above that the *InfluxDB_Grafana* role is assigned to
|
||||
three different nodes along with the *Infrastructure_Alerting* role and the *Elasticsearch_Kibana*
|
||||
role. This means that the three plugins of the LMA toolchain can be installed on the same nodes.
|
||||
.. note:: Installing the InfluxDB server on more than three nodes
|
||||
is currently not possible using the Fuel plugin.
|
||||
Similarly, installing the InfluxDB server on two nodes
|
||||
is not recommended to avoid split-brain situations in the Raft
|
||||
consensus of the InfluxDB cluster as well as the *Pacemaker* cluster
|
||||
which is responsible of the VIP address failover.
|
||||
To be also noted that it is possible to add or remove nodes
|
||||
with the *InfluxDB_Grafana* role in the cluster after deployment.
|
||||
|
||||
#. Click on **Apply Changes**
|
||||
9. `Adjust the disk partitioning if necessary
|
||||
<http://docs.openstack.org/developer/fuel-docs/userdocs/fuel-user-guide/configure-environment/customize-partitions.html>`_.
|
||||
|
||||
#. Adjust the disk configuration for your plugin if necessary (see the `Fuel User Guide
|
||||
<http://docs.mirantis.com/openstack/fuel/fuel-8.0/user-guide.html#disk-partitioning>`_
|
||||
for details). By default, the InfluxDB-Grafana Plugin allocates:
|
||||
By default, the InfluxDB-Grafana Plugin allocates:
|
||||
|
||||
- 20% of the first available disk for the operating system by honoring a range of 15GB minimum to 50GB maximum.
|
||||
- 10GB for */var/log*.
|
||||
- At least 30 GB for the InfluxDB database in */var/lib/influxdb*.
|
||||
* 20% of the first available disk for the operating system by honoring
|
||||
a range of 15GB minimum to 50GB maximum.
|
||||
* 10GB for */var/log*.
|
||||
* At least 30 GB for the InfluxDB database in */var/lib/influxdb*.
|
||||
|
||||
#. `Configure your environment <http://docs.mirantis.com/openstack/fuel/fuel-8.0/user-guide.html#configure-your-environment>`_
|
||||
as needed.
|
||||
|
||||
#. `Verify the networks <http://docs.mirantis.com/openstack/fuel/fuel-8.0/user-guide.html#verify-networks>`_.
|
||||
|
||||
#. And finally, `deploy <http://docs.mirantis.com/openstack/fuel/fuel-8.0/user-guide.html#deploy-changes>`_ your changes.
|
||||
|
||||
|
||||
.. note:: By default, the InfluxDB/Grafana cluster is deployed on the Fuel
|
||||
management network. If this behavior doesn't meet your needs, you can
|
||||
leverage the `network templates
|
||||
<https://docs.mirantis.com/openstack/fuel/fuel-8.0/operations.html#using-networking-templates>`_
|
||||
to use a different network instead. Please refer to the
|
||||
`Elasticsearch/Kibana plugin
|
||||
<http://fuel-plugin-elasticsearch-kibana.readthedocs.io/>`_ for more
|
||||
information.
|
||||
10. `Deploy your environment
|
||||
<http://docs.openstack.org/developer/fuel-docs/userdocs/fuel-user-guide/deploy-environment.html>`_.
|
||||
|
||||
.. _plugin_install_verification:
|
||||
|
||||
@ -95,12 +147,11 @@ Plugin verification
|
||||
Be aware that depending on the number of nodes and deployment setup,
|
||||
deploying a Mirantis OpenStack environment can typically take anything
|
||||
from 30 minutes to several hours. But once your deployment is complete,
|
||||
you should see a notification message indicating that you deployment is complete
|
||||
as in the figure below.
|
||||
you should see a notification message indicating that you deployment
|
||||
successfully completed as in the figure below.
|
||||
|
||||
.. image:: ../images/deployment_notification.png
|
||||
:width: 800
|
||||
:align: center
|
||||
|
||||
Verifying InfluxDB
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
@ -167,31 +218,20 @@ Here is how to proceed.
|
||||
Verifying Grafana
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
From the Fuel web UI **Dashboard** view, click on the **Grafana** link as shown in the figure below.
|
||||
|
||||
.. image:: ../images/grafana_link.png
|
||||
:width: 800
|
||||
:align: center
|
||||
|
||||
From the Fuel dDashboard, click on the **Grafana** link (or enter the IP address
|
||||
and port number if your DNS is not setup).
|
||||
The first time you access Grafana, you are requested to
|
||||
authenticate using the credentials you defined in the plugin's settings.
|
||||
authenticate using your credentials.
|
||||
|
||||
.. image:: ../images/grafana_login.png
|
||||
:width: 800
|
||||
:align: center
|
||||
|
||||
Once you have authenticated, you should be automatically
|
||||
redirected to the **Home Page** from where you can select a dashboard as
|
||||
shown below.
|
||||
Then you should be redirected to the *Grafana Home Page*
|
||||
from where you can select a dashboard as shown below.
|
||||
|
||||
.. image:: ../images/grafana_home.png
|
||||
:align: center
|
||||
:width: 800
|
||||
|
||||
.. note:: Be aware that by default, Grafana is attached to the *management network*.
|
||||
Your desktop machine must have access to the OpenStack environment's
|
||||
*management network* you just created, to get access to the Grafana dashboard.
|
||||
|
||||
Exploring your time-series with Grafana
|
||||
---------------------------------------
|
||||
|
||||
@ -208,11 +248,10 @@ The Main Dashboard
|
||||
We suggest you start with the **Main Dashboard**, as shown
|
||||
below, as an entry to the other dashboards.
|
||||
The **Main Dashboard** provides a single pane of glass from where you can visualize the
|
||||
overall health state of your OpenStack services such as Nova and Cinder
|
||||
overall health status of your OpenStack services such as Nova and Cinder
|
||||
but also HAProxy, MySQL and RabbitMQ to name a few..
|
||||
|
||||
.. image:: ../images/grafana_main.png
|
||||
:align: center
|
||||
:width: 800
|
||||
|
||||
As you can see, the **Main Dashboard** (as most dashboards) provides
|
||||
@ -224,13 +263,13 @@ In the example above, the system metrics of *node-48* are
|
||||
being displayed in the dashboard.
|
||||
|
||||
Within the **OpenStack Services** row, each of the services
|
||||
represented can be assigned five different states.
|
||||
represented can be assigned five different status.
|
||||
|
||||
.. note:: The precise determination of a service health state depends
|
||||
.. note:: The precise determination of a service health status depends
|
||||
on the correlation policies implemented for that service by a `Global Status Evaluation (GSE)
|
||||
plugin <http://fuel-plugin-lma-collector.readthedocs.org/en/latest/alarms.html#cluster-policies>`_.
|
||||
|
||||
The meaning associated with a service health state is the following:
|
||||
The meaning associated with a service health status is the following:
|
||||
|
||||
- **Down**: One or several primary functions of a service
|
||||
cluster has failed. For example,
|
||||
@ -260,7 +299,7 @@ You can select a specific controller using the
|
||||
controller's drop down list in the left corner of the toolbar.
|
||||
|
||||
The "Ceph" row provides an overview of the resources usage
|
||||
and current health state of the Ceph cluster when it is deployed
|
||||
and current health status of the Ceph cluster when it is deployed
|
||||
in the OpenStack environment.
|
||||
|
||||
The **Main Dashboard** is also an entry point to access more detailed
|
||||
@ -269,7 +308,6 @@ For example, if you click on the *Nova box*, the **Nova
|
||||
Dashboard** is displayed.
|
||||
|
||||
.. image:: ../images/grafana_nova.png
|
||||
:align: center
|
||||
:width: 800
|
||||
|
||||
The Nova Dashboard
|
||||
@ -279,15 +317,15 @@ The **Nova Dashboard** provides a detailed view of the
|
||||
Nova service's related metrics.
|
||||
|
||||
The **Service Status** row provides information about the Nova service
|
||||
cluster health state as a whole including the state of the API frontend
|
||||
cluster health status as a whole including the status of the API frontend
|
||||
(the HAProxy public VIP), a counter of HTTP 5xx errors,
|
||||
the HTTP requests response time and status code.
|
||||
|
||||
The **Nova API** row provides information about the current health state of
|
||||
The **Nova API** row provides information about the current health status of
|
||||
the API backends (nova-api, ec2-api, ...).
|
||||
|
||||
The **Nova Services** row provides information about the current and
|
||||
historical state of the Nova *workers*.
|
||||
historical status of the Nova *workers*.
|
||||
|
||||
The **Instances** row provides information about the number of active
|
||||
instances in error and instances creation time statistics.
|
||||
@ -314,7 +352,7 @@ menu list.
|
||||
With LMA 0.9, we have introduced two new dashboards.
|
||||
|
||||
#. The **Elasticsearch Cluster Dashboard** provides information about
|
||||
the overall health state of the Elasticsearch cluster including
|
||||
the overall health status of the Elasticsearch cluster including
|
||||
the state of the shards, the number of pending tasks and various resources
|
||||
usage metrics.
|
||||
|
||||
@ -334,7 +372,6 @@ example below, the metrics for the instance id *ba844a75-b9db-4c2f-9cb9-0b083fe0
|
||||
running on *node-4* are displayed.
|
||||
|
||||
.. image:: ../images/grafana_hypervisor.png
|
||||
:align: center
|
||||
:width: 800
|
||||
|
||||
Check the LMA Collector documentation for additional information about the
|
||||
@ -364,30 +401,29 @@ the system makes a distinction between what is estimated as a
|
||||
direct root cause versus what is estimated as an indirect
|
||||
root cause. This is internally represented in a dependency graph.
|
||||
There are first degree dependencies used to describe situations
|
||||
whereby the health state of an entity
|
||||
strictly depends on the health state of another entity. For
|
||||
whereby the health status of an entity
|
||||
strictly depends on the health status of another entity. For
|
||||
example Nova as a service has first degree dependencies
|
||||
with the nova-api endpoints and the nova-scheduler workers. But
|
||||
there are also second degree dependencies whereby the health
|
||||
state of an entity doesn't strictly depends on the health state
|
||||
status of an entity doesn't strictly depends on the health status
|
||||
of another entity, although it might, depending on other operations
|
||||
being performed. For example, by default we declared that Nova
|
||||
has a second degree dependency with Neutron. As a result, the
|
||||
health state of Nova will not be directly impacted by the health
|
||||
state of Neutron but the annotation will provide
|
||||
health status of Nova will not be directly impacted by the health
|
||||
status of Neutron but the annotation will provide
|
||||
a root cause analysis hint. Let's assume a situation
|
||||
where Nova has changed from *okay* to *critical* state (because of
|
||||
5xx HTTP errors) and that Neutron has been in *down* state for a while.
|
||||
where Nova has changed from *okay* to *critical* status (because of
|
||||
5xx HTTP errors) and that Neutron has been in *down* status for a while.
|
||||
In this case, the Nova dashboard will display an annotation showing that
|
||||
Nova has changed to a *warning* state because the system has detected
|
||||
Nova has changed to a *warning* status because the system has detected
|
||||
5xx errors and that it may be due to the fact that Neutron is *down*.
|
||||
An example of what an annotation looks like is shown below.
|
||||
|
||||
.. image:: ../images/grafana_nova_annot.png
|
||||
:align: center
|
||||
:width: 800
|
||||
|
||||
This annotation shows that the health state of Nova is *down*
|
||||
This annotation shows that the health status of Nova is *down*
|
||||
because there is no *nova-api* service backend (viewed from HAProxy)
|
||||
that is *up*.
|
||||
|
||||
@ -395,7 +431,7 @@ Hiding nodes from dashboards
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
When you remove a node from the environment, it is still displayed in
|
||||
the "server" and "controller" drop-down lists. To hide it from the list
|
||||
the 'server' and 'controller' drop-down lists. To hide it from the list
|
||||
you need to edit the associated InfluxDB query in the *templating* section.
|
||||
For example, if you want to remove *node-1*, you need to add the following
|
||||
condition to the *where* clause::
|
||||
@ -404,7 +440,6 @@ condition to the *where* clause::
|
||||
|
||||
|
||||
.. image:: ../images/remove_controllers_from_templating.png
|
||||
:align: center
|
||||
|
||||
If you want to hide more than one node you can add more conditions like this::
|
||||
|
||||
|
@ -3,7 +3,7 @@ attributes:
|
||||
retention_period:
|
||||
value: '30'
|
||||
label: 'Retention period'
|
||||
description: 'The number of days after which data is automatically deleted within the InfluxDB system (0 to never delete data).'
|
||||
description: 'The number of days after which data is automatically deleted in InfluxDB (0 to never delete data).'
|
||||
weight: 5
|
||||
type: "text"
|
||||
regex: &number_validation
|
||||
@ -55,7 +55,7 @@ attributes:
|
||||
grafana_username:
|
||||
value: 'lma'
|
||||
label: 'User name'
|
||||
description: 'The name of the Grafana admin user'
|
||||
description: 'The name of the Grafana admin'
|
||||
weight: 70
|
||||
type: "text"
|
||||
regex:
|
||||
@ -66,7 +66,7 @@ attributes:
|
||||
value:
|
||||
generator: 'password'
|
||||
label: 'User password'
|
||||
description: 'The password of the Grafana admin user'
|
||||
description: 'The password of the Grafana admin'
|
||||
weight: 80
|
||||
type: "password"
|
||||
regex:
|
||||
@ -149,7 +149,7 @@ attributes:
|
||||
grafana_ssl_cert:
|
||||
value: ''
|
||||
label: 'Certificate for Grafana'
|
||||
description: 'Certificate and private key data, concatenated into a single file.'
|
||||
description: 'Certificate and private key concatenated into a single PEM file.'
|
||||
weight: 160
|
||||
type: "file"
|
||||
restrictions:
|
||||
@ -266,7 +266,7 @@ attributes:
|
||||
ldap_authorization_enabled:
|
||||
value: false
|
||||
label: 'Enable group-based authorization'
|
||||
description: 'It allows to associate the users with the admin or viewer role. Otherwise all users are assigned to admin role.'
|
||||
description: "It allows to associate users with the 'admin' or 'viewer' role. Otherwise all users are assigned to the admin role."
|
||||
weight: 250
|
||||
type: "checkbox"
|
||||
restrictions:
|
||||
@ -305,8 +305,8 @@ attributes:
|
||||
|
||||
ldap_admin_group_dn:
|
||||
value: ''
|
||||
label: 'Group DN mapping to the Admins role'
|
||||
description: ''
|
||||
label: 'LDAP group CN'
|
||||
description: "The group CN for the 'admin' role"
|
||||
weight: 280
|
||||
type: "text"
|
||||
regex: *not_empty_parameter
|
||||
@ -320,8 +320,8 @@ attributes:
|
||||
|
||||
ldap_viewer_group_dn:
|
||||
value: ''
|
||||
label: 'Group DN mapping to the Viewers role'
|
||||
description: ''
|
||||
label: 'LDAP group CN'
|
||||
description: "The group CN for the 'viewer' role"
|
||||
weight: 290
|
||||
type: "text"
|
||||
regex: *not_empty_parameter
|
||||
|
@ -1,11 +1,11 @@
|
||||
# Plugin name
|
||||
name: influxdb_grafana
|
||||
# Human-readable name for your plugin
|
||||
title: The InfluxDB-Grafana Server Plugin
|
||||
title: The StackLight InfluxDB-Grafana Server Plugin
|
||||
# Plugin version
|
||||
version: '0.10.0'
|
||||
# Description
|
||||
description: Deploy InfluxDB server and the Grafana web interface.
|
||||
description: Deploy the InfluxDB and Grafana servers.
|
||||
# Required fuel version
|
||||
fuel_version: ['8.0', '9.0']
|
||||
# Specify license of your plugin
|
||||
|