2 Debian/Ubuntu/Raspbian
Overview
Official Zabbix packages are available for:
Debian 10 (Buster) | Download |
Debian 9 (Stretch) | Download |
Debian 8 (Jessie) | Download |
Ubuntu 20.04 (Focal Fossa) LTS | Download |
Ubuntu 18.04 (Bionic Beaver) LTS | Download |
Ubuntu 16.04 (Xenial Xerus) LTS | Download |
Ubuntu 14.04 (Trusty Tahr) LTS | Download |
Raspbian (Buster) | Download |
Raspbian (Stretch) | Download |
Packages are available with either MySQL/PostgreSQL database and Apache/Nginx webserver support.
Notes on installation
See the 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
Zabbix agent 2 (zabbix-agent2) is supported only on Debian 9/10 and Ubuntu 18.04/20.04.
If you want to run Zabbix agent as root, see Running agent as root.
Debian-based distributions usually provide their own Zabbix packages in their repositories. These are not supported by Zabbix. Only the ones from Zabbix Official Repository are.
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.
PHP 7.2
Zabbix frontend requires PHP version 7.2 or newer starting with Zabbix 5.0.
See instructions for installing Zabbix frontend on distributions with PHP versions below 7.2.
SELinux configuration
See SELinux configuration for RHEL/CentOS.
After the frontend and SELinux configuration is done, restart the Apache web server:
# service apache2 restart
Proxy installation
Once the required repository is added, you can install Zabbix proxy by running:
# apt install zabbix-proxy-mysql
Substitute ‘mysql’ in the command with ‘pgsql’ to use PostgreSQL, or with ‘sqlite3’ to use SQLite3.
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
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=<password>
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. Refer to the respective section for RHEL/CentOS for instructions.
Starting Zabbix proxy process
To start a Zabbix proxy process and make it start at system boot:
# systemctl restart zabbix-proxy
# 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:
# apt install zabbix-java-gateway
Proceed to setup for more details on configuring and running Java gateway.