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|
Packages are available with either MySQL/PostgreSQL database and Apache/Nginx webserver support.
See the installation instructions per platform in the download page for:
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.
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
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.
See SELinux configuration for RHEL/CentOS.
After the frontend and SELinux configuration is done, restart the Apache web server:
# service apache2 restart
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.
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.
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
# 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.
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.
To start a Zabbix proxy process and make it start at system boot:
# systemctl restart zabbix-proxy # systemctl enable zabbix-proxy
A Zabbix proxy does not have a frontend; it communicates with Zabbix server only.
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.