Это перевод страницы документации с английского языка. Помогите нам сделать его лучше.

Sidebar

Zabbix Summit 2022
Register for Zabbix Summit 2022

1 Red Hat Enterprise Linux/CentOS

Обзор

Официальные пакеты Zabbix доступны для:

· ·
RHEL 8, CentOS 8 и Oracle Linux 8 Загрузить

Пакеты доступны с поддержкой баз данных MySQL/PostgreSQL и веб-серверами Apache/Nginx.

Режим шифрования Удостоверение CA не работает на RHEL 7 с MySQL из-за устаревших библиотек MySQL.

Пакеты Zabbix агента и утилит Zabbix get и Zabbix sender также доступны для RHEL 7, RHEL 6 и RHEL 5.

Официальный репозиторий Zabbix также предоставляет пакеты fping и libssh2. Эти пакеты расположены в non-supported директории.

Заметки по установке

Обратитесь к инстракциям по установке по каждой платформе на странице загрузки, чтобы:

  • установить репозиторий
  • установить сервер / агент / веб-интерфейс
  • создать начальную базу данных, импортировать начальные данные
  • настроить базу данных для работы с Zabbix сервером
  • настроить PHP для работы с Zabbix веб-интерфейсом
  • запустить процессы сервера / агента
  • настроить Zabbix веб-интерфейс

Если вы хотите запускать Zabbix агента с правами root, смотрите Запуск агента с правами root.

Процессу веб-сервиса Zabbix, который используется для генерации регулярных отчетов, требуется браузер Google Chrome. Этот браузер не включен в пакеты и его нужно установить вручную отдельно.

Импорт данных при использовании Timescale DB

При использовании TimescaleDB в дополнение к команде импорта для базы данных PostgreSQL, также выполните:

# cat /usr/share/doc/zabbix-sql-scripts/postgresql/timescaledb.sql | sudo -u zabbix psql zabbix

TimescaleDB поддерживается только Zabbix сервером.

PHP 7.2

Zabbix веб-интерфейсу требуется PHP версии 7.2 или новее.

Настройка SELinux

Zabbix использует взаимодействие между процессами на основе сокетов. На системах, где включен SELinux, возможно потребуется добавить SELinux правила позволяющие Zabbix создавать / использовать сокеты домена UNIX в SocketDir директории. В настоящее время файлы сокетов используются сервером (обработка оповещений, предобработка, IPMI) и прокси (IPMI). Файлы сокетов присутствуют постоянно, то есть они присутствуют пока процесс запущен.

При активном принудительном (enforcing) режиме SELinux, вам необходимо выполнить следующие команды чтобы разрешить взаимодействие между Zabbix веб-интерфейсом и сервером:

RHEL 7 и более поздние:

# setsebool -P httpd_can_connect_zabbix on
       Если доступ к базе данных по сети (включая 'localhost' в случае с PostgreSQL), вам также необходимо разрешить Zabbix веб-интерфейсу подключение к базе данных:
       # setsebool -P httpd_can_network_connect_db on

RHEL до версии 7:

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

После завершения настройки веб-интерфейса и SELinux, перезапустите веб-сервер Apache:

# service httpd restart

Кроме того Zabbix поставляет zabbix-selinux-policy пакет как часть исходных пакетов RPM для RHEL 8 и RHEL 7. Этот пакет обеспечивает основные политики по умолчанию для SELinux и позволяет компонентам Zabbix работать "из коробки", разрешая Zabbix создавать и использовать сокеты и разрешая httpd подключения к PostgreSQL (используются веб-интерфейсом).

Исходный файл zabbix_policy.te содержит следующие правила:

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;

Этот пакет создан для того, чтобы избежать отключения SELinux пользователями из-за сложности настройки. Пакет содержит политики по умолчанию, которых достаточно для ускорения развертывания и настройки Zabbix. Для достижения максимального уровня безопасности рекомендуется задать пользовательские настройки SELinux.

Установка прокси

Как только требуемый репозиторий добавлен, вы можете установить Zabbix прокси выполнив следующую команду:

# dnf install zabbix-proxy-mysql zabbix-sql-scripts

Замените 'mysql' в команде на 'pgsql', чтобы использовать PostgreSQL, или на 'sqlite3' чтобы использовать SQLite3 (только прокси).

Пакет 'zabbix-sql-scripts' содержит схемы базы данных для всех поддерживаемых систем управления базами данных как для Zabbix сервера, так и для Zabbix прокси. Этот пакет используется для импорта данных.

Создание базы данных

Создайте отдельную базу данных для Zabbix прокси.

Zabbix сервер и Zabbix прокси не могут использовать одну и ту же базу данных. Если они установлены на одном хосте, тогда имя базы данных прокси должно отличаться.

Импорт данных

Импортируйте начальную схему:

# cat /usr/share/doc/zabbix-sql-scripts/mysql/proxy.sql | mysql -uzabbix -p zabbix

Для прокси с PostgreSQL (или SQLite):

# cat /usr/share/doc/zabbix-sql-scripts/postgresql/proxy.sql | sudo -u zabbix psql zabbix
       # cat /usr/share/doc/zabbix-sql-scripts/sqlite3/proxy.sql | sqlite3 zabbix.db
Настройка базы данных для Zabbix прокси

Отредактируйте zabbix_proxy.conf:

# vi /etc/zabbix/zabbix_proxy.conf
       DBHost=localhost
       DBName=zabbix
       DBUser=zabbix
       DBPassword=<пароль>

В DBName для Zabbix прокси используйте базу данных, отличную от базы данных Zabbix сервера.

В DBPassword используйте пароль к базе данных Zabbix для MySQL; пароль к PostgreSQL пользователю для PosgreSQL.

Используйте DBHost= с PostgreSQL. Вы возможно захотите оставить настройку по умолчанию DBHost=localhost (или IP адрес), но в этом случае PostgreSQL будет использовать сетевой сокет для подключения к Zabbix. Смотрите инструкции по настройке SELinux.

Запуск процесса Zabbix прокси

Чтобы запустить процесс Zabbix прокси и добавить его в автозагрузку при загрузке системы, выполните следующие команды:

# service zabbix-proxy start
       # systemctl enable zabbix-proxy
Настройка веб-интерфейса

Zabbix прокси не имеет веб-интерфейса; прокси обменивается информацией только с Zabbix сервером.

Установка Java gateway

Java gateway необходимо устанавливать только, если вы хотите мониторить JMX приложения. Java gateway легковесный и не требует наличия базы данных.

Как только требуемый репозиторий добавлен, вы можете установить Zabbix Java gateway выполнив следующую команду:

# dnf install zabbix-java-gateway

Перейдите к разделу настройки для получения более подробных сведений касательно настройки и запуску Java gateway.

Установка debuginfo пакетов

Пакеты Debuginfo в настоящее время доступны только для RHEL/CentOS версий 7, 6 и 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/6.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 компонент.