This is an old revision of the document!

1 Red Hat Enterprise Linux/CentOS


Official Zabbix packages are available for:

RHEL 8, CentOS 8 and Oracle Linux 8 Download
RHEL 7, CentOS 7 and Oracle Linux 7 Download

Packages are available with either MySQL/PostgreSQL database and Apache/Nginx webserver support.

Zabbix 5.2 is not released yet. The download links lead to pre-5.2 packages.

Zabbix agent packages and utilities Zabbix get and Zabbix sender are available for RHEL 6 and RHEL 5 as well.

Zabbix official repository provides fping, iksemel, libssh2 packages as well. These packages are located in the non-supported directory.

Notes on installation

See installation instructions per platform in the download page for:

  • installing the repository
  • installing server/agent/frontend
  • creating initial database, importing initial data
  • configuring database for Zabbix server
  • configuring PHP for Zabbix frontend
  • starting server/agent processes
  • configuring Zabbix frontend

If you want to run Zabbix agent as root, see Running agent as root.

Server/Proxy installation prerequisites

RHEL/CentOS 7 ships with MySQL 5.5 which is a very old version. Starting with Zabbix 5.2, server and proxy packages for said distos are built against MySQL 8 libraries taken from the official upstream repository. In order to Install server or proxy one must install this repository on target machine. It can be found on the official MySQL website. Otherwise installation will fail due to missing dependency.

# rpm -Uvh
# yum clean all 

Importing data with Timescale DB

With TimescaleDB, in addition to the import command for PostgreSQL, also run:

# zcat /usr/share/doc/zabbix-server-pgsql*/timescaledb.sql.gz | sudo -u zabbix psql zabbix
TimescaleDB is supported with Zabbix server only.

Frontend installation prerequisites

Zabbix frontend requires additional packages not available in basic installation. You need to enable repository of optional rpms in the system you will run Zabbix frontend on:


# yum-config-manager --enable rhel-7-server-optional-rpms
Note that Nginx for RHEL is available in Red Hat Software Collections and in EPEL. If Red Hat Software Collections are used, simply install zabbix-nginx-conf-scl package.

PHP 7.2

Zabbix frontend requires PHP version 7.2 or newer starting with Zabbix 5.0.

Note that RHEL/CentOS 7 only provide PHP 5.4. See instructions for installing Zabbix frontend on Red Hat Enterprise Linux/CentOS 7.

SELinux configuration

Having SELinux status enabled in enforcing mode, you need to execute the following commands to enable communication between Zabbix frontend and server:

RHEL 7 and later:

# setsebool -P httpd_can_connect_zabbix on
If the database is accessible over network (including 'localhost' in case of PostgreSQL), you need to allow Zabbix frontend to connect to the database too:
# setsebool -P httpd_can_network_connect_db on

RHEL prior to 7:

# setsebool -P httpd_can_network_connect on
# setsebool -P zabbix_can_network on

After the frontend and SELinux configuration is done, restart the Apache web server:

# service httpd restart

Proxy installation

Once the required repository is added, you can install Zabbix proxy by running:

# yum install zabbix-proxy-mysql

Substitute 'mysql' in the commands with 'pgsql' to use PostgreSQL, or with 'sqlite3' to use SQLite3 (proxy only).

Creating database

Create a separate database for Zabbix proxy.

Zabbix server and Zabbix proxy cannot use the same database. If they are installed on the same host, the proxy database must have a different name.

Importing data

Import initial schema:

# zcat /usr/share/doc/zabbix-proxy-mysql*/schema.sql.gz | mysql -uzabbix -p zabbix

For proxy with PostgreSQL (or SQLite):

# zcat /usr/share/doc/zabbix-proxy-pgsql*/schema.sql.gz | sudo -u zabbix psql zabbix
# zcat /usr/share/doc/zabbix-proxy-sqlite3*/schema.sql.gz | sqlite3 zabbix.db
Configure database for Zabbix proxy

Edit zabbix_proxy.conf:

# vi /etc/zabbix/zabbix_server.conf

In DBName for Zabbix proxy use a separate database from Zabbix server.

In DBPassword use Zabbix database password for MySQL; PosgreSQL user password for PosgreSQL.

Use DBHost= with PostgreSQL. You might want to keep the default setting DBHost=localhost (or an IP address), but this would make PostgreSQL use a network socket for connecting to Zabbix. See SELinux configuration for instructions.

Starting Zabbix proxy process

To start a Zabbix proxy process and make it start at system boot:

# service zabbix-proxy start
# systemctl enable zabbix-proxy
Frontend configuration

A Zabbix proxy does not have a frontend; it communicates with Zabbix server only.

Java gateway installation

It is required to install Java gateway only if you want to monitor JMX applications. Java gateway is lightweight and does not require a database.

Once the required repository is added, you can install Zabbix Java gateway by running:

# yum install zabbix-java-gateway

Proceed to setup for more details on configuring and running Java gateway.

Installing debuginfo packages

Debuginfo packages are currently available for RHEL/CentOS versions 7, 6 and 5.

To enable debuginfo repository edit /etc/yum.repos.d/zabbix.repo file. Change enabled=0 to enabled=1 for zabbix-debuginfo repository.

name=Zabbix Official Repository debuginfo - $basearch

This will allow you to install the zabbix-debuginfo package.

# yum install zabbix-debuginfo

This single packages contains debug information for all binary Zabbix componets.