Skip to content

Architecture chosen for this guide

Todd Radel edited this page May 10, 2018 · 5 revisions

I've chosen to use Telegraf, InfluxDB, and Grafana to demonstrate how to monitor Vault and Consul.

  • Telegraf is a lightweight but powerful monitoring agent that is compatible with statsd.
  • InfluxDB is a highly performant time-series database.
  • Grafana takes the collected data and builds pretty dashboards (and does some basic alerting).

Why those tools in particular?

  • They're open-source, popular, and well understood.
  • They're compatible with the most popular flavors of Linux, and can even be run in containers if desired.
  • They're easy to set up.

Since I'm using Telegraf and InfluxDB already, why not build the whole TICK stack and use Chronograf instead of Grafana? As of current writing, Chronograf's dashboards aren't quite as configurable or pretty as Grafana's, but I plan to keep an eye on the project as it evolves. Feel free to try it out yourself and see what you think.

The next few sections of this guide will explain how to set up a server with InfluxDB and Grafana, and how to install Telegraf agents on each of your Vault and Consul hosts. When you're done, it will look like this:

Vault/Consul monitoring architecture

The Telegraf agent on each host listens for statsd packets on port 8125/udp, converts the data into JSON format, and sends it to InfluxDB. The dashboards we'll create in Grafana then query that data from InfluxDB and produce colorful charts that are easy to understand.