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

To get the most out of this book

In order to complete the majority of the exercises in this book, you will need to download and install Docker with Docker Compose. For the examples in the book, we will be downloading and installing other software and datasets, along with Grafana and Loki, so you will need an internet connection. You could download and install each software package independently, but besides Grafana itself, our tutorial instructions are designed to work with Docker. We do that so that all software dependencies and network management can be encapsulated within Docker Compose.

We will run a fair amount of software from the command line, so you should be comfortable with typing commands into a shell like Bash or Windows Command Prompt:

Software/hardware covered in this book OS requirements
Grafana Mac OS X, Windows 10 Pro, Linux, Docker
Docker Mac OS X, Windows 10 Pro, or Linux
Loki/Promtail Runs in Docker
Prometheus Runs in Docker
InfluxDB Runs in Docker
Logstash Runs in Docker
Elasticsearch Runs in Docker
OpenLDAP Runs in Docker

In order to follow along with the exercises in Chapter 13, Authentication with External Services, you will need accounts with GitHub, Google, and Okta. To follow the exercises in Chapter 14, Cloud Monitoring, you will need to create an account with Amazon Web Services, Google Cloud, and Microsoft Azure.

The examples and software in this book have not been validated for security. They require an external internet connection and leverage open source software under a variety of licenses, so if you intend to use any of this software within a security-conscious computing environment (such as in an education or corporate environment), it is highly recommended that you consult your local IT professionals in advance.

If you are using the digital version of this book, we advise you to type the code in yourself or access the code via the GitHub repository (link available in the next section). Doing so will help you avoid any potential errors related to the copying and pasting of code. Each chapter folder includes dashboards, docker-compose.yml files, and a Makefile to help out when running some of the command-line tools.

Having an interest in science in general and data science, in particular, will go a long way toward making this book interesting and useful. It would also be helpful to have some programming experience with a scripting language such as Python, but since all the code is included, you can run it directly from a clone of the book's GitHub repository. Some familiarity with relational databases will help you understand some of the terminology and concepts behind time-series databases.

I hope to show, with the examples in this book, how easy it is to build simple data visualization pipelines with Grafana and today's open source tools. I also hope this book will inspire and empower you to seek out your own datasets to acquire, analyze, and visualize. Best of luck!

Download the example code files

You can download the example code files for this book from your account at www.packt.com. If you purchased this book elsewhere, you can visit www.packtpub.com/support and register to have the files emailed directly to you.

You can download the code files by following these steps:

  1. Log in or register at www.packt.com.
  2. Select the Support tab.
  3. Click on Code Downloads.
  4. Enter the name of the book in the Search box and follow the onscreen instructions.

Once the file is downloaded, please make sure that you unzip or extract the folder using the latest version of:

  • WinRAR/7-Zip for Windows
  • Zipeg/iZip/UnRarX for Mac
  • 7-Zip/PeaZip for Linux

The code bundle for the book is also hosted on GitHub at https://github.com/PacktPublishing/Learn-Grafana-7.0. In case there's an update to the code, it will be updated on the existing GitHub repository.

We also have other code bundles from our rich catalog of books and videos available athttps://github.com/PacktPublishing/. Check them out!

Download the color images

We also provide a PDF file that has color images of the screenshots/diagrams used in this book. You can download it here:https://static.packt-cdn.com/downloads/9781838826581_ColorImages.pdf.

Conventions used

There are a number of text conventions used throughout this book.

CodeInText:Indicates code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles.Here is an example:"The first line of our main() function sets up the logging level."

A block of code is set as follows:

def main():
logging.basicConfig(level=logging.INFO)

Any command-line input or output is written as follows:

          % docker-compose down
        

Bold: Indicates a new term, an important word, or words that you see onscreen. For example, words in menus or dialog boxes appear in the text like this. Here is an example: "Click on Create | Dashboard; you should see a panel with three buttons."

Warnings or important notes appear like this.
Tips and tricks appear like this.