The Grafana-Zabbix plugin can be installed on Grafana to visualize data from Zabbix with Grafana. You can also use it to create amazing Grafana dashboards using the data from Zabbix.

In this article, I am going to show you how to install the Grafana-Zabbix plugin on Grafana. I will also show you how to add a Zabbix server as a data source on Grafana. I will show you how to get started with Grafana data visualization with Zabbix data source as well. So, let’s get started.

Table of Contents

  1. Things You Will Need
  2. Network Diagram
  3. Installing Grafana Zabbix Plugin
  4. Enabling Grafana-Zabbix Plugin
  5. Adding Zabbix Data Source on Grafana
  6. Monitoring Zabbix with Grafana
  7. Creating a Basic Zabbix Grafana Dashboard
  8. Where to Go Next?
  9. Conclusion
  10. References

Things You Will Need

To follow this article, you must have Grafana installed on your computer. You must have Zabbix installed on your computer as well.

If you need any assistance in installing Grafana on your computer, read one of the following articles:

Ubuntu 20.04 LTS: How Do I Connect Grafana with Prometheus?

If you need any assistance in installing Zabbix on your computer, read one of the following articles:

CentOS 7: Install Zabbix 4.0 on CentOS 7

Network Diagram

For the demonstration, I have installed Zabbix on a Ubuntu 20.04 LTS host with the IP address 192.168.3.152 and Grafana on another Ubuntu 20.04 LTS host with the IP address 192.168.3.149.

The network diagram of my setup is given below:

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-1.png" data-lazy- height="260" src="data:image/svg xml,” width=”503″>

Fig 1: Network Diagram

Installing Grafana Zabbix Plugin

To add Zabbix as a Grafana data source, you must have the Grafana-Zabbix plugin installed on the computer where you have Grafana installed.

To install the Grafana-Zabbix plugin on the computer where you have Grafana installed, run the following command:

$ sudo grafana-cli plugins install alexanderzobnin-zabbix-app

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-2.png" data-lazy- height="91" src="data:image/svg xml,” width=”1205″>

The Grafana-Zabbix plugin should be installed.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-3.png" data-lazy- height="307" src="data:image/svg xml,” width=”1316″>

For the changes to take effect, restart the grafana-server systemd service with the following command:

$ sudo systemctl restart grafana-server.service

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-4.png" data-lazy- height="100" src="data:image/svg xml,” width=”1004″>

Enabling Grafana-Zabbix Plugin

Once you have the Grafana Zabbix plugin installed, you have to enable it from the Grafana Dashboard web interface.

To access the Grafana web interface, you have to know the IP address of the computer where you have Grafana installed. In my case, the IP address of the computer where I have Grafana installed is 192.168.3.149. It will be different for you. So, make sure to replace it with yours from now on.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-5.png" data-lazy- height="174" src="data:image/svg xml,” width=”515″>

To access the Grafana web interface, visit http://192.168.3.149:3000 from your favorite web browser.

From the Grafana web interface, click on Settings > Plugins as marked in the screenshot below.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-6.png" data-lazy- height="792" src="data:image/svg xml,” width=”1172″>

Search for the Zabbix plugin and click on the Zabbix plugin from the search result as marked in the screenshot below.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-7.png" data-lazy- height="803" src="data:image/svg xml,” width=”1184″>

Click on Enable.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-8.png" data-lazy- height="814" src="data:image/svg xml,” width=”1192″>

The Grafana Zabbix plugin should be enabled.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-9.png" data-lazy- height="785" src="data:image/svg xml,” width=”1191″>

Adding Zabbix Data Source on Grafana

Once the Grafana Zabbix plugin is enabled, you can add your Zabbix server as a data source on Grafana.

To add your Zabbix server as a data source on Grafana, click on Configuration > Data sources from the Grafana web interface as marked in the screenshot below.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-10.png" data-lazy- height="799" src="data:image/svg xml,” width=”1193″>

Click on Add data source.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-11.png" data-lazy- height="793" src="data:image/svg xml,” width=”1187″>

Search for the Zabbix data source and click on it as marked in the screenshot below.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-12.png" data-lazy- height="800" src="data:image/svg xml,” width=”1192″>

You should see the following page. You have to add your Zabbix server information here.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-13.png" data-lazy- height="790" src="data:image/svg xml,” width=”1193″>

To add your Zabbix server as a data source on Grafana, you need to know the IP address of your Zabbix server. In my case, the IP address of my Zabbix server is 192.168.3.152. It will be different for you. So, make sure to replace it with yours from now on.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-14.png" data-lazy- height="154" src="data:image/svg xml,” width=”395″>

Once you know the IP address of your Zabbix server, type in the following URL in the URL section of Grafana Zabbix Data Source wizard.

http://192.168.3.152/zabbix/api_jsonrpc.php

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-15.png" data-lazy- height="794" src="data:image/svg xml,” width=”1184″>

Scroll down a little bit and type in the login username and password of your Zabbix server in the Username and Password section respectively.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-16.png" data-lazy- height="795" src="data:image/svg xml,” width=”1190″>

Once you’re done, click on Save & Test as marked in the screenshot below.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-17.png" data-lazy- height="815" src="data:image/svg xml,” width=”1184″>

Your Zabbix server should be added to Grafana as a data source.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-18.png" data-lazy- height="832" src="data:image/svg xml,” width=”1179″>

Monitoring Zabbix with Grafana

To test whether you can monitor Zabbix with Grafana, click on the Explorer icon ( ) of Grafana as marked in the screenshot below.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-19.png" data-lazy- height="831" src="data:image/svg xml,” width=”1185″>

Select Zabbix from the Explore dropdown menu as marked in the screenshot below.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-20.png" data-lazy- height="821" src="data:image/svg xml,” width=”1179″>

Now, select the type of data you want to query from Zabbix from the Query Mode dropdown menu as marked in the screenshot below.

I will select the Metrics type.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-21.png" data-lazy- height="817" src="data:image/svg xml,” width=”1178″>

Select your desired Zabbix group from the Group section. I will select the default Zabbix servers group.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-22.png" data-lazy- height="830" src="data:image/svg xml,” width=”1189″>

Select your Zabbix host from the Host section. I will select the Zabbix server host.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-23.png" data-lazy- height="837" src="data:image/svg xml,” width=”1189″>

Select an item tag that you want to monitor from the Item tag section.

I will select the item tag Application: Interface ens33 in this example. This item tag will let you monitor the network interface ens33.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-24.png" data-lazy- height="830" src="data:image/svg xml,” width=”1178″>

Now, select the item that you want to monitor from the Item section.

If you have selected the Item tag Application: Interface ens33 like I did, you can select the Item Interface ens33: Bit received to monitor the download speed of the network interface ens33.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-25.png" data-lazy- height="835" src="data:image/svg xml,” width=”1180″>

You should see a graph of the download speed of the network interface ens33.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-26.png" data-lazy- height="856" src="data:image/svg xml,” width=”1260″>

You can learn to use the Zabbix data source to monitor your Zabbix server with Grafana from the Explore page of Grafana. This tool is very helpful.

Creating a Basic Zabbix Grafana Dashboard

In this section, I am going to show you how to create a basic Grafana dashboard using Zabbix as a data source to monitor the network download and upload speed of the Zabbix server.

To create a new Grafana dashboard, click on Dashboards > Manage from the Grafana web interface.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-27.png" data-lazy- height="867" src="data:image/svg xml,” width=”1247″>

Click on New Dashboard.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-28.png" data-lazy- height="852" src="data:image/svg xml,” width=”1253″>

A new Dashboard should be created.

Click on Add an empty panel to add a new panel to the Dashboard.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-29.png" data-lazy- height="798" src="data:image/svg xml,” width=”1262″>

The Grafana panel editor should be displayed. You can configure your Grafana panel from here.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-30.png" data-lazy- height="836" src="data:image/svg xml,” width=”1185″>

First, change the data source to Zabbix from the Data source dropdown menu as marked in the screenshot below.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-31.png" data-lazy- height="837" src="data:image/svg xml,” width=”1196″>

Now, you should be able to query data from the Zabbix data source.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-32.png" data-lazy- height="949" src="data:image/svg xml,” width=”1183″>

To monitor the download speed of your Zabbix server, select the query settings as marked in the screenshot below.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-33.png" data-lazy- height="949" src="data:image/svg xml,” width=”1175″>

Type in the title Download Speed in the Title section as marked in the screenshot below.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-34.png" data-lazy- height="939" src="data:image/svg xml,” width=”1175″>

Select the unit Data / bits(IEC) from the Unit section as marked in the screenshot below.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-35.png" data-lazy- height="945" src="data:image/svg xml,” width=”1180″>

The download speed graph should display the correct data unit as you can see in the screenshot below.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-36.png" data-lazy- height="947" src="data:image/svg xml,” width=”1172″>

You can do many customizations to your Grafana panel. You may read the article How Do I Connect Grafana with Prometheus? to learn more.

Once you’re happy with the result, click on Apply to add the panel to the dashboard.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-37.png" data-lazy- height="949" src="data:image/svg xml,” width=”1188″>

The Download Speed panel should be added to the dashboard.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-38.png" data-lazy- height="507" src="data:image/svg xml,” width=”1183″>

Now, let’s create another panel to monitor the upload speed of the Zabbix server.

As the upload speed monitoring panel will be the same as the Download Speed panel, you can clone it and change a few settings to easily monitor the upload speed of your Zabbix server.

To clone the Download Speed panel, click on the down arrow of the panel and click on More… > Duplicate as marked in the screenshot below.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-39.png" data-lazy- height="653" src="data:image/svg xml,” width=”1181″>

The Download Speed panel should be cloned. Now, click on the down arrow icon of the cloned Download Speed panel and click on Edit as marked in the screenshot below.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-40.png" data-lazy- height="510" src="data:image/svg xml,” width=”1181″>

The cloned Download Speed panel should be opened with the Grafana panel editor.

Change the Item to Interface ens33: Bits sent, change the title to Upload Speed, and click on Apply for the changes to take effect.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-41.png" data-lazy- height="953" src="data:image/svg xml,” width=”1180″>

The changes should be saved.

The Upload Speed panel should monitor the upload speed of your Zabbix server.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-42.png" data-lazy- height="541" src="data:image/svg xml,” width=”1189″>

By default, the Grafana dashboard will show the download and upload speed of your Zabbix server for the Last 6 hours. You can change the graph timeline to Last 1 hour to only monitor the download and upload speed of your Zabbix server for the last hour.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-43.png" data-lazy- height="631" src="data:image/svg xml,” width=”1187″>

As you can see, the download and upload speed is displayed for the last 1 hour.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-44.png" data-lazy- height="525" src="data:image/svg xml,” width=”1190″>

To save the dashboard, click on the save icon ( ) as marked in the screenshot below.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-45.png" data-lazy- height="540" src="data:image/svg xml,” width=”1173″>

Type in a name for the dashboard and click on Save.

I will call it Zabbix Network Monitor.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-46.png" data-lazy- height="666" src="data:image/svg xml,” width=”1183″>

The dashboard should be saved.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-47.png" data-lazy- height="560" src="data:image/svg xml,” width=”1197″>

To find a list of all the saved dashboards, click on Dashboards > Manage as marked in the screenshot below.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-48.png" data-lazy- height="633" src="data:image/svg xml,” width=”1197″>

The Zabbix Network Monitor dashboard should be listed here.

To view the Zabbix Network Monitor dashboard, click on it.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-49.png" data-lazy- height="682" src="data:image/svg xml,” width=”1194″>

The Zabbix Network Monitor dashboard should be displayed.

<img alt="" data-lazy- data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/Integrating-Zabbix-with-Grafana-50.png" data-lazy- height="684" src="data:image/svg xml,” width=”1186″>

Where to Go Next?

To learn more about the Grafana Zabbix plugin, visit the official documentation of the Grafana Zabbix plugin.

Conclusion

In this article, I have shown you how to install the Grafana-Zabbix plugin on Grafana. I have also shown you how to enable the Grafana-Zabbix plugin and add a Zabbix data source on Grafana. I have shown you how to create a Grafana dashboard to monitor the network of a Zabbix server using the Zabbix data source as well.

References

  1. alexanderzobnin/grafana-zabbix – Zabbix plugin for Grafana dashboard
  2. Getting Started – Zabbix Grafana Documentation

About the author

<img data-del="avatar" data-lazy-src="https://kirelos.com/wp-content/uploads/2021/10/echo/photo2-150×150.png616b820b13bd7.jpg" height="112" src="data:image/svg xml,” width=”112″>

Shahriar Shovon

Freelancer & Linux System Administrator. Also loves Web API development with Node.js and JavaScript. I was born in Bangladesh. I am currently studying Electronics and Communication Engineering at Khulna University of Engineering & Technology (KUET), one of the demanding public engineering universities of Bangladesh.