IT Linux

Create an awesome server monitoring dashboard with Zabbix and Grafana

Written by Ambi

A tutorial on creating an awesome monitoring dashboard using Zabbix & Grafana. I always wanted to setup a good monitoring tool for our servers and finally managed to setup Zabbix. A monitoring tool is a must for any IT pro who manages servers. With a tool like Zabbix you get an overall summary of all your servers health and furthermore helps you keep track of any major changes.

Zabbix is an enterprise-class open source distributed monitoring solution. It monitors the health of your servers and notifies you in case of issues. On top of it, Zabbix offers excellent reporting and data visualization features. And the best part, Zabbix is free of cost and in addition to that with Grafana, the whole system is even cooler!

Zabbix-Sample-Dashboard

Below are the steps to configure Zabbix 3 with Grafana. (For this, I am using CentOS7 minimal)

Zabbix

Step1: Install Apache, Mariadb & PHP

Step2: Start all services, enable to be started on boot up

Step3: Improve the security of your MySQL installation

Step3: Configure Yum Repository and install Zabbix

Step4: Create zabbix database and import initial schema and data

(Note: Zabbix version might be different based on the version you downloaded)

Step5: Edit zabbix_server.conf with your database settings and start Zabbix server

Step5: Edit the PHP configuration for Zabbix front-end and update the timezone

After making the changes, restart apache web server

Step6: Complete the setup using Zabbix web installer
For the web installer to be accessible over the internet, first need to make sure that the ports are allowed through the firewall and selinux.

Reboot the server
Using your FQDN, visit the zabbix web installer.

and follow the steps as shown below

Zabbix Welcome Screen- Click Next

Zabbix-webinstall-start

Pre-Requisite Checks- If any of these fails, please correct it and run check again

Zabbix-webinstall-pre-requisites

Enter DB credentials and Click Next

Zabbix-webinstall-DBConnection

Give your Zabbix server an apt name and click Next

Zabbix-webinstall-finalize

Check the Pre-Installation Summary and if all looks fine click Next

Zabbix-webinstall-pre-install-summary

Finally, click Finish and finalize the installation

Zabbix-webinstall-success

Congratulations, your Zabbix installation is now complete and you can login to Zabbix with the default credentials as given below:

Note: Restart zabbix server to make sure all services works fine.

Default Zabbix login will be similar to this

Zabbix-first-login

Grafana

Lets now install Grafana and bring some awesomeness to your dashboards.

Download and install Grafana, start, enable the service on next boot-up

Once installed you can browser Grafana with the below url

Default credentials are

It is recommended to change the default password to something stronger.

Now that you have Grafana installed, lets install the Zabbix plugin to connect to our Zabbix installation. Restart Grafana service after the plugin installation

Once the plugin is installed, we need to enable it.

Grafana-Zabbix-Enable

That’s it! Your Zabbix installation is now ready with Grafana. I would be writing another post in detail on how to get graphs and charts using Zabbix with Grafana.

About the author

Ambi

  • Asa Guru

    Hi
    did the same using zabbix 3.2, grafana zabbix plugin is asking for api url what i have to give

  • Thiago Beier

    is it possible to give each customer (monitored by zabbix proxy) their own host group dashboard? regards,

    • Hi Thiago,

      Thanks for the feedback.

      I haven’t personally tried Zabbix proxy or came across such requirements, but this is an interesting topic to explore. I will see if i can test this out and share some details.

    • Hi Thiago, thanks for the comment. Haven’t got a chance to work on advanced Zabbix configurations yet. This is something I need to test.