omaralsoudanii / monitoring-stack

Grafana, InfluxDB and Telegraf integration. used for monitoring any of your services using various metrics and integrations for those

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

TIG Stack

A stack of services to enable observability for your apps powered by

Compatibility

The stack is built via docker so it should run out of the box (it should...)

Running Locally

  • Clone the repo

    $ git clone https://github.com/omaralsoudanii/monitoring-stack
  • Create a .env.grafana file similar to .env.grafana.example

  • Create a .env.influx file similar to .env.influx.example

  • You could use Docker Buildx as well. Read the docs first, so you don't complain about how I ruined your environment, personally I use it with the assumption that it might crash something for me some day (hopefully, which is the perfect excuse to rebuild your machine with KDE)

  • Run

    $ docker-compose up --build -d
  • Verify all the 3 containers are working

    $ docker ps
  • Go to Graphana Front-end http://localhost:3000

  • Add a new data source InfluxDB

  • Create dashboards, enable plugins, and telegraf output & input modules based on your needs

  • This is a simple dashboard with the default configs

TIG Stack

Note

Usually the way this is done is that you install InfluxDb and Grafana on 1 server, and telegraf acts as agent on other servers (the want we want to get data from), however this repo is for demonstration purpose, you can remove telegraf from the setup and install it individually (in automated fashion) on your cluster of servers.

For production it's obvious that you should change some of the configs (certs, authentication methods) and add a reverse proxy to serve the stack (I recommend HAProxy).

About

Grafana, InfluxDB and Telegraf integration. used for monitoring any of your services using various metrics and integrations for those

License:MIT License