Skip to content

Commit

Permalink
Updating monitoring docs with a getting started page (#168)
Browse files Browse the repository at this point in the history
  • Loading branch information
the2hill authored Mar 20, 2024
1 parent d0058f5 commit 38ecbd3
Show file tree
Hide file tree
Showing 2 changed files with 75 additions and 3 deletions.
51 changes: 51 additions & 0 deletions docs/monitoring-getting-started.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# Getting started with genestack monitoring

In order to begin monitoring your genestack deployment we first need to deploy the core prometheus components

## Install the Prometheus stack

Install [Prometheus](prometheus.md) which is part of the kube-prometheus-stack and includes:

* Prometheus and the Prometheus operator to manage the Prometheus cluster deployment
* AlertManager which allows for alerting configurations to be set in order to notify various services like email or PagerDuty for specified alerting thresholds

The [Prometheus](prometheus.md) kube-prometheus-stack will also deploy a couple core metric exporters as part of the stack, those include:

* Node Exporter(Hardware metrics)
* Kube State Exporter(Kubernetes cluster metrics)

## Install Grafana

We can then deploy our visualization dashboard Grafana

* [Install Grafana](grafana.md)

Grafana is used to visualize various metrics provided by the monitoring system as well as alerts and logs, take a look at the [Grafana](https://grafana.com/) documentation for more information

## Install the metric exporters

Now let's deploy our exporters!

* [Mysql Exporter](prometheus-mysql-exporter.md)
* [RabbitMQ Exporter](prometheus-rabbitmq-exporter.md)
* [Postgres Exporter](prometheus-postgres-exporter.md)
* [Memcached Exporter](prometheus-memcached-exporter.md)
* [Openstack Exporter](prometheus-openstack-metrics-exporter.md)

## Next steps

### Configure alert manager

Configure the alert manager to send the specified alerts to slack as an example, see: [Slack Alerts](alertmanager-slack.md)

... and more ...

### Update alerting rules

Within the genestack repo we can update our alerting rules via the alerting_rules.yaml to fit our needs

View alerting_rules.yaml in:

``` shell
less /opt/genestack/kustomize/prometheus/alerting_rules.yaml
```
27 changes: 24 additions & 3 deletions docs/prometheus-monitoring-overview.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,29 @@
# Prometheus Monitoring Overview

Genestack utilizes Prometheus for monitoring and metrics collection. To read more about Prometheus please take a look at the [upstream docs](https://prometheus.io).
Genestack utilizes Prometheus for monitoring, alerting and metrics collection. To read more about Prometheus please take a look at the [upstream docs](https://prometheus.io).


A high level visual of Prometheus and the various monitoring and alerting components inside Genestack
Components used to monitor and provide alerting and visualization mechanisms for genestack include:

![Prometheus Monitoring Diagram](assets/images/prometheus-monitoring.png)
* Prometheus
* AlertManager
* Grafana

Prometheus makes use of various metric exporters used to collect monitoring data related to specific services:

* Node Exporter(Hardware metrics)
* Kube State Exporter(Kubernetes cluster metrics)
* Mysql Exporter(MariaDB/Galera metrics)
* RabbitMQ Exporter(RabbitMQ queue metrics)
* Postgres Exporter(Postgresql metrics)
* Memcached Exporter(Memcached metrics)
* Openstack Exporter(Metrics from various Openstack products)

Below is a high level visual of Prometheus and the various monitoring and alerting components within genestack

![Prometheus Monitoring Diagram](assets/images/prometheus-monitoring.png){ align=center : style="filter:drop-shadow(#3c3c3c 0.5rem 0.5rem 10px);" }


### Getting started with genestack monitoring

To get started using monitoring within the genestack ecosystem begin with the [getting started](monitoring-getting-started.md) page

0 comments on commit 38ecbd3

Please sign in to comment.