Book Image

Learn Grafana 7.0

By : Eric Salituro
Book Image

Learn Grafana 7.0

By: Eric Salituro

Overview of this book

Grafana is an open-source analytical platform used to analyze and monitoring time-series data. This beginner's guide will help you get to grips with Grafana's new features for querying, visualizing, and exploring metrics and logs no matter where they are stored. The book begins by showing you how to install and set up the Grafana server. You'll explore the working mechanism of various components of the Grafana interface along with its security features, and learn how to visualize and monitor data using, InfluxDB, Prometheus, Logstash, and Elasticsearch. This Grafana book covers the advanced features of the Graph panel and shows you how Stat, Table, Bar Gauge, and Text are used. You'll build dynamic dashboards to perform end-to-end analytics and label and organize dashboards into folders to make them easier to find. As you progress, the book delves into the administrative aspects of Grafana by creating alerts, setting permissions for teams, and implementing user authentication. Along with exploring Grafana's multi-cloud monitoring support, you'll also learn about Grafana Loki, which is a backend logger for users running Prometheus and Kubernetes. By the end of this book, you'll have gained all the knowledge you need to start building interactive dashboards.
Table of Contents (19 chapters)
1
Getting Started with Grafana
5
Real-World Grafana
13
Managing Grafana

Why Grafana?

While there are many solutions in the data visualization space, Grafana is proving to be one of the most exciting, exhibiting rapid growth in scope and features, broad options for deployment and support, and an enthusiastic community contributing to its future growth. Before going into the specific features that make Grafana an attractive solution, let's take a look at the criteria we might use to characterize a useful data visualization application:

For the purposes of this book, we will be looking at particular software applications that fulfill four major functions:exploration,analysis,presentation, andnotification.

Quickly loading and displaying a dataset with the idea of identifying the particularly interesting features for deeper analysis, sometimes referred to as drilling-down, is an example of dataexploration.

After we have examined our data, we may want toanalyzeit next. That is, we may want to quantify the data statistically or correlate it with other data. For example, we may want to see what the maximum value or average value of the data is for a specific time range. We may also want to look at multiple datasets over the same time period to look for events that might be time-correlated.

Once we have identified the data we are interested in, we will want topresentit in an aesthetically pleasing manner that also gives the viewer clarity about what the data represents, in effect helping to tell a story about the data, which would be otherwise difficult to do without specific domain knowledge.

Finally, we may need to observe the data over time, or even in real-time as it may represent critical data. If the data crosses into a realm of concern, we may need to benotifiedimmediately.

While there are a number of powerful data analytics tools on the market that fulfill these functions, Grafana has a number of features that make it an attractive choice:

  • Fast:The Grafana backend is written in Google's exciting new Go language, making it extremely performant when querying data sources or feeding thousands of data points to multiple dashboard panels.
  • Open: Grafana supports a plugin model for its dashboard panels and data sources. The number of plugins is constantly growing as the Grafana community enthusiastically contributes to the project.
  • Beautiful: Grafana leverages the attractive and powerful D3 library. Many of the popular dashboard tools, such as DataDog and Zabbix, can quickly generate beautiful graphs from thousands of data channels, but they only offer some limited control over the display elements. Grafana provides fine-grained control over most graph elements including axes, lines, points, fills, annotations, and legends. It even offers the much sought-after dark mode.
  • Versatile:Grafana is not tied to particular database technology. For example, Kibana is a powerful, well-known member of ElasticSearch's ElasticSearch, Logstash, Kibana (ELK) stack; it is only capable of visualizing ElasticSearch data sources. This gives it the advantage over Grafana of a better ability to integrate ElasticSearch's analysis tools in its graphing panels. However, due to its plugin architecture, Grafana can support a variety of ever-growing databases (at last count, over 30) from traditional RDBMs, such as MySQL and PostgresQL, to modern TSDBs, such as InfluxDB and Prometheus. Not only can each graph display data from a variety of data sources, but a single graph can also combine data from multiple data sources.
  • Free:While they are very powerful tools indeed, DataDog and Splunk are commercial packages and, as such, charge fees to manage all but the smallest datasets. If you want to get your feet wet, Grafana is freely available under the Apache open source license, and if you do plan to run it in your enterprise, you can purchase tiered support.

These are just some of the criteria you might use to evaluate Grafana against similar products. Your mileage may vary, but now is a great time to be in the market for visualization tools. Grafana and its competitors each have their own strengths and weaknesses, but they are all very capable applications. Here's a short list of the few we covered:

With this in mind, let's install Grafana.