- 1 Red Hat Enterprise Linux
- Notes on installation
- Importing data with Timescale DB
- SELinux configuration
- Proxy installation
- Java gateway installation
- Installing debuginfo packages
- 1 Red Hat Enterprise Linux/CentOS
- Сведения об установке
- Импорт данных с Timescale DB
- Предварительные условия установки веб-интерфейса
- PHP 7.2
- Настройка SELinux
- Установка прокси
- Установка Java gateway
- Установка debuginfo пакетов
1 Red Hat Enterprise Linux
Official Zabbix 6.4 packages for Red Hat Enterprise Linux versions 6, 7, 8, and 9 and Oracle Linux versions 8 and 9 are available for download.
Packages are available with:
Note that separate packages for Zabbix agent, the Zabbix get and Zabbix sender utilities are available for RHEL 6, 7, 8, and 9. The same packages can be used to install Zabbix components on Alma Linux and Rocky Linux.
The official Zabbix repository provides fping , iksemel and libssh2 packages as well. These packages are located in the non-supported directory.
The EPEL repository for EL9 also provides Zabbix packages. If both the official Zabbix repository and EPEL repositories are installed, then the Zabbix packages in EPEL must be excluded by adding the following clause to the EPEL repo configuration file under /etc/yum.repos.d/ :
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.
Zabbix web service process, which is used for scheduled report generation, requires Google Chrome browser. The browser is not included into packages and has to be installed manually.
Importing data with Timescale DB
With TimescaleDB, in addition to the import command for PostgreSQL, also run:
# cat /usr/share/zabbix-sql-scripts/postgresql/timescaledb.sql | sudo -u zabbix psql zabbix
TimescaleDB is supported with Zabbix server only.
SELinux configuration
Zabbix uses socket-based inter-process communication. On systems where SELinux is enabled, it may be required to add SELinux rules to allow Zabbix create/use UNIX domain sockets in the SocketDir directory. Currently socket files are used by server (alerter, preprocessing, IPMI) and proxy (IPMI). Socket files are persistent, meaning they are present while the process is running.
Having SELinux status enabled in enforcing mode, you need to execute the following commands to enable communication between Zabbix frontend and server:
# 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
# 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:
In addition, Zabbix provides the zabbix-selinux-policy package as part of source RPM packages for RHEL 8 and RHEL 7. This package provides a basic default policy for SELinux and makes zabbix components work out-of-the-box by allowing Zabbix to create and use sockets and enabling httpd connection to PostgreSQL (used by frontend).
The source zabbix_policy.te file contains the following rules:
module zabbix_policy 1.2; require type zabbix_t; type zabbix_port_t; type zabbix_var_run_t; type postgresql_port_t; type httpd_t; class tcp_socket name_connect; class sock_file < create unlink >; class unix_stream_socket connectto; > #============= zabbix_t ============== allow zabbix_t self:unix_stream_socket connectto; allow zabbix_t zabbix_port_t:tcp_socket name_connect; allow zabbix_t zabbix_var_run_t:sock_file create; allow zabbix_t zabbix_var_run_t:sock_file unlink; allow httpd_t zabbix_port_t:tcp_socket name_connect; #============= httpd_t ============== allow httpd_t postgresql_port_t:tcp_socket name_connect;
This package has been created to prevent users from turning off SELinux because of the configuration complexity. It contains the default policy that is sufficient to speed up Zabbix deployment and configuration. For maximum security level, it is recommended to set custom SELinux settings.
Proxy installation
Once the required repository is added, you can install Zabbix proxy by running:
# dnf install zabbix-proxy-mysql zabbix-sql-scripts
Substitute ‘mysql’ in the commands with ‘pgsql’ to use PostgreSQL, or with ‘sqlite3’ to use SQLite3 (proxy only).
The package ‘zabbix-sql-scripts’ contains database schemas for all supported database management systems for both Zabbix server and Zabbix proxy and will be used for data import.
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
# cat /usr/share/zabbix-sql-scripts/mysql/proxy.sql | mysql -uzabbix -p zabbix
For proxy with PostgreSQL (or SQLite):
# cat /usr/share/zabbix-sql-scripts/postgresql/proxy.sql | sudo -u zabbix psql zabbix # cat /usr/share/zabbix-sql-scripts/sqlite3/proxy.sql | sqlite3 zabbix.db
Configure database for Zabbix proxy
# vi /etc/zabbix/zabbix_proxy.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; PostgreSQL user password for PostgreSQL.
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:
# dnf 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 versions 9, 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.
[zabbix-debuginfo] name=Zabbix Official Repository debuginfo - $basearch baseurl=http://repo.zabbix.com/zabbix/6.4/rhel/7/$basearch/debuginfo/ enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591 gpgcheck=1
This will allow you to install the zabbix-debuginfo package.
# dnf install zabbix-debuginfo
This single package contains debug information for all binary Zabbix components.
1 Red Hat Enterprise Linux/CentOS
Доступны пакеты с базами данных MySQL и PostgreSQL и поддержкой веб-серверов Apache и Nginx.
Пакеты агента и прокси доступны также и для RHEL 6 и RHEL 5.
Официальный репозиторий Zabbix предоставляет также fping, iksemel, libssh2 пакеты. Эти пакеты находятся в папке non-supported.
Сведения об установке
Страница Скачать и установить Zabbix содержит пошаговые инструкции по установке в зависимости от типа платформы для:
- установки репозитория
- установки сервера/агента/веб-интерфейса
- создания базы данных и импортировании данных
- настройке базы данных для Zabbix сервера
- настройке PHP для веб-интерфейса
- Запуска процессов для Zabbix сервера/агента
- настройке Zabbix веб-интерфейса
Если вы хотите использовать Zabbix как root, смотрите Запуск агента как root.
Импорт данных с Timescale DB
С TimescaleDB, в дополнение к импорту данных из PostgreSQL, используйте также:
# zcat /usr/share/doc/zabbix-server-pgsql*/timescaledb.sql.gz | sudo -u zabbix psql zabbix
TimescaleDB поддерживается только для Zabbix сервера
Предварительные условия установки веб-интерфейса
Веб-интерфейс Zabbix требует дополнительные пакеты, которые отсутствуют в базовой установке. Вам необходимо активировать репозиторий опциональных rpm пакетов в системе, где вы запускаете веб-интерфейс Zabbix:
# yum-config-manager --enable rhel-7-server-optional-rpms
К сведению: Nginx для RHEL доступен в Red Hat Software Collections и в EPEL. Если вы пользуетесь Red Hat Software Collections, достаточно установить пакет zabbix-nginx-conf-scl
PHP 7.2
Начиная с Zabbix 5.0 для веб-интерфейса требуется PHP версии 7.2 или выше.
К сведению: RHEL/CentOS 7 предоставляют только PHP 5.4, поэтому для установки веб-интерфейса Zabbix на Red Hat Enterprise Linux/CentOS 7 потребуются дополнительные шаги.
Настройка SELinux
При включенном статусе SELinux в принудительном режиме, выполните следующие команды, чтобы предоставить веб-интерфейсу Zabbix разрешение на соединение с сервером:
# setsebool -P httpd_can_connect_zabbix on
Если база данных доступна по сети (включая ‘localhost’ в случае PostgreSQL), нужно также предоставить веб-интерфейсу Zabbix разрешение на соединение с базой данных:
# setsebool -P httpd_can_network_connect_db on
# setsebool -P httpd_can_network_connect on # setsebool -P zabbix_can_network on
После настройки веб-интерфейса и SELinux, перезапустите веб-сервер Apache:
Установка прокси
После добавления нужного репозитория, вы можете установить Zabbix прокси, выполнив:
# yum install zabbix-proxy-mysql
Замените ‘mysql’ в команде на ‘pgsql’, чтобы использовать PostgreSQL, или на ‘sqlite3’, чтобы использовать SQLite3 (поддежривается только для прокси).
Создание базы данных
Создайте отдельную базу данных для Zabbix прокси.
Zabbix сервер и Zabbix прокси не могут использовать одну и ту же базу данных. Если они установлены на одном хосте, имя базы данных для прокси должно отличаться.
Импорт данных
Импортируйте изначальную схему:
# zcat /usr/share/doc/zabbix-proxy-mysql*/schema.sql.gz | mysql -uzabbix -p zabbix
Для прокси с PostgreSQL (или 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
Настройка базы данных для Zabbix прокси
# vi /etc/zabbix/zabbix_proxy.conf DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=password>
В DBName для Zabbix proxy используйте базу данных, отличающуюся от базы данных Zabbix сервера.
В DBPassword используйте пароль базы данных Zabbix для MySQL; в случае PostgreSQL — пароль пользователь для PostgreSQL.
Используйте DBHost= с PostgreSQL. Возможно, вы захотите сохранить значение по умолчанию DBHost=localhost (или IP адрес), но в этом случае PostgreSQL будет использовать сетевой сокет при подключении к Zabbix. Смотрите раздел Настройка SELinux для получения более подробных сведений.
Запуск процесса Zabbix прокси
Чтобы включить автоматический запуск прокси при старте системы:
# service zabbix-proxy start # systemctl enable zabbix-proxy
Настройка веб-интерфейса
У Zabbix прокси отсутствует веб-интерфейс; он общается только с Zabbix сервером.
Установка Java gateway
Установка Java gateway необходима только, если планируется мониторить JMX приложения. Java gateway легковесный и не требует наличия базы данных.
После добавления нужного репозитория, установите Zabbix Java gateway, выполнив команду:
# yum install zabbix-java-gateway
Перейдите к разделу настройка для получения дополнительной информации о настройке и запуске Java gateway.
Установка debuginfo пакетов
Пакеты debuginfo в настоящий момент доступны для RHEL/CentOS версий 7, 6 and 5.
Чтобы включить debuginfo репозиторий, измените /etc/yum.repos.d/zabbix.repo файл. Измените enabled=0 на enabled=1 у zabbix-debuginfo репозитория.
[zabbix-debuginfo] name=Zabbix Official Repository debuginfo - $basearch baseurl=http://repo.zabbix.com/zabbix/5.0/rhel/7/$basearch/debuginfo/ enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591 gpgcheck=1
Это позволит вам установить zabbix-debuginfo пакеты.
# yum install zabbix-debuginfo
Эти отдельные пакеты содержат отладочную информацию обо всех бинарных компонентах Zabbix.