Howto Install Zabbix Monitoring Server and Agent on CentOS 7

In this tutorial we will setup a complete Network Monitoring System to install and configure Zabbix Server and its agent on latest version of CentOS 7 to monitor our complete IT infrastructure whether its Linux servers running with different applications and critical services, Windows servers running with IIS, SQL and exchange servers or any SNMP devices. Other than servers monitoring we can check the status of websites for their response time and bandwidth transfer rate.

Basic parameters configuration

Zabbix requires minimum of 128 MB of RAM and 256 MB of free disk space to setup its installation process but the amount of required disk memory obviously depends on the number of hosts and the parameters that are being monitored.

Considering the below parameters we will go through the steps to build Zabbix Server.

Zabbix NMS
Zabbix Package Zabbix-2.4.5
Base Operating System CentOS Linux 7 (Core)
Database mysql Ver 15.1 Distrib 5.5.41-MariaDB, for Linux (x86_64)
Client View PHP 5.4.16 (cli)
RAM and CPU 4 GB , 2.0 GHZ
Hard Disk 30 GB

Zabbix Servers Installation

Create a backup directory and download the Zabbix Application for CentOS operating system.

[[email protected] backup]# wget

Extract the zabbix application package here

[[email protected] backup]# ls
[[email protected] backup]# tar zxvf zabbix-2.4.5.tar.gz

Before starting the Zabbix setup we need to create Zabbix group and user.
Perform the following steps to create.

Create new group Zabbix

[[email protected] backup]# groupadd zabbix

create new user Zabbix and add it to the group Zabbix

[[email protected] backup]# useradd zabbix

Once zabbix user is done we need to create a new database for zabbix server. To do so we need to perform following steps.

Login to MySQL MariaDB

[[email protected] backup]# mysql -u root –p

Create new database

MariaDB [(none)]> create database zabbix character set utf8;
Query OK, 1 row affected (0.00 sec)

Grant all privileges to zabbix user on zabbix database

MariaDB [(none)]> grant all privileges on zabbix .* to 'zabbix'@'localhost' identified by 'zabbix123' with grant option;
Query OK, 0 rows affected (0.00 sec)

Now Import initial schema and data.

[[email protected] zabbix-2.4.5]# mysql -u zabbix -p zabbix < /backup/zabbix-2.4.5/database/mysql/schema.sql
Enter password:
[[email protected] zabbix-2.4.5]# mysql -u zabbix -p zabbix < /backup/zabbix-2.4.5/database/mysql/images.sql
Enter password:
[[email protected] zabbix-2.4.5]# mysql -u zabbix -p zabbix < /backup/zabbix-2.4.5/database/mysql/data.sql
Enter password:
[[email protected]utorials zabbix-2.4.5]#

Start Zabbix Server and its Agent Installation

Before running the installation script make sure that all the required php extensions and other supporting libraries including mysql-devel php-mysql and net-snmp are installed without that installation process will not be complete.

[[email protected] zabbix-2.4.5]# ./configure --enable-server --enable-agent --with-mysql --with-net-snmp

Make Install
Now run make to install everything

[[email protected] zabbix-2.4.5]# make install

Front-End Installation using PHP

Now we need to create the apache document root directory to then move all frontend php files in it.

[[email protected] zabbix-2.4.5]# mkdir /var/www/html/zabbix
[[email protected] zabbix-2.4.5]# cp -r frontends/php/* /var/www/html/zabbix/
[[email protected] zabbix-2.4.5]#

Setup basic parameters in PHP configuration file php.ini

[[email protected] zabbix-2.4.5]# vim /etc/php.ini

Restart Apache service to take effect after making change in php.ini file.

[[email protected] zabbix-2.4.5]# systemctl restart httpd.service

In your browser, open Zabbix URL as per your server IP or name.


You should see the first screen of the frontend installation wizard.
Zabbix Setup

Once php parameters are setup in the screen it should be all parameters ok. Click on to NEXT


Enter details for connection to the database. Zabbix database must be already created.
Then Enter Zabbix servers detail and click on Test Connection to confirm its connectivity with the database.

DB Connection

Review a summary of settings.

Installation Summary

Download the configuration file and place it under following conf directory.


Conf File Missing

After uploading conf file into mentioned destination folder click to "Retry" and the click to "Finish" after it appears OK status.

Finish Installation

Zabbix frontend is now ready to access with default user name "Admin" and password "zabbix".

Zabbix Login

Zabbix Server Configuration

Now lets come to zabbix server configuration file to configure it to start monitoring hosts.
Open the configuration file.

#vim /usr/local/etc/zabbix_server.conf


Zabbix Agent Configuration

As we already installed zabbix agent now we just need to configure its parameters to make it communicate with the server. So lets open the zabbix agent configuration file and configure the parameters.

#vim /usr/local/etc/zabbix_agentd.conf
Hostname=Zabbix server

Start Zabbix Services:

After making changes to zabbix server and its agent configurations start zabbix server and zabbix agent services as.

[[email protected] zabbix-2.4.5]# zabbix_server
[[email protected] zabbix-2.4.5]# zabbix_agentd

Zabbix Status

Enable Your First Monitoring

Lets point to zabbix Configuration and then Hosts to enable the zabbix server to start its monitoring and then add many hosts and web scenerios to enjoy with an awesome interface, dashboard and graphs.

Enable Host


Zabbix is an open source enterprise monitoring solution for networks and applications designed to monitor and track the status of various network devices, performance and availability of cross platform servers and other network hardware. It has allowed us to address a number of issues within our client’s infrastructure that allows us to monitor hundreds and thousands of devices with high performance, and high capacity platform.

Kashif Siddique 7:49 am

About Kashif Siddique

Linux Systems and Security Engineer in Information and Communication Technology. Results-driven ICT Professional and Open Source Geek with technical specialties in the area of Open Source Operating systems and Applications.

Author's All Posts
Like to become part of Linoxide Team and contribute tips? Contact us here.


Your email address will not be published. Required fields are marked *

All comments are subject to moderation.


  1. Hello,

    I want to comment of one about create user zabbix. I see your mistake command line.

    For command : #useradd zabbix is correct.Thank you for your post on website.