Подробный гайд по установке Zabbix 7.0 LTS в CentOS Stream 9 с PostgreSQL, Apache - Часть 2
9. Импорт схемы базы данных Zabbix
Импортируйте структуру базы данных:
zcat /usr/share/zabbix-sql-scripts/postgresql/server.sql.gz | \
PGPASSWORD="${ZBX_DB_PASS}" psql -h 127.0.0.1 -U zabbix -d zabbix
Импорт может занять несколько минут.
Если файл не найден, посмотрите, где он находится:
rpm -ql zabbix-sql-scripts | grep server.sql.gz
Проверьте, что таблицы создались:
PGPASSWORD="${ZBX_DB_PASS}" psql -h 127.0.0.1 -U zabbix -d zabbix -c '\dt' | head
10. Настройка Zabbix Server
Сделайте резервную копию конфигурации:
sudo cp -a /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.bak
Откройте файл:
sudo nano /etc/zabbix/zabbix_server.conf
Минимально проверьте/установите параметры:
ListenPort=10051
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=ChangeMe_Strong_2026
Где ChangeMe_Strong_2026 — пароль, который вы задали в переменной ZBX_DB_PASS.
Дополнительно можно указать:
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
DebugLevel=3
Не оставляйте DebugLevel=4 или выше в продакшене надолго: лог может быстро расти.
Если вы хотите подключаться к PostgreSQL через Unix-сокет, а не через TCP, можно использовать такой вариант:
DBHost=
DBName=zabbix
DBUser=zabbix
DBSocket=/var/run/postgresql
Но в этом гайде основной вариант — TCP через localhost и пароль. После редактирования сохраните файл.
Проверьте, что пароль в конфиге указан без кавычек:
Правильно:
DBPassword=ChangeMe_Strong_2026
Неправильно:
DBPassword="ChangeMe_Strong_2026"
11. SELinux
SELinux лучше оставить в режиме enforcing.
Проверьте режим:
getenforce
Должно быть:
Enforcing
Установите необходимые boolean-флаги:
sudo setsebool -P httpd_can_connect_zabbix on
sudo setsebool -P httpd_can_network_connect_db on
Если есть параметр zabbix_can_network, его тоже можно включить для сетевых проверок:
if getsebool zabbix_can_network >/dev/null 2>&1; then
sudo setsebool -P zabbix_can_network on
fi
Посмотрите связанные SELinux-параметры:
getsebool -a | grep -E 'zabbix|httpd_can'
12. Настройка PHP и Apache
Откройте /etc/php.ini:
sudo nano /etc/php.ini
Найдите параметр date.timezone и установите свой часовой пояс:
date.timezone = Europe/Moscow
Можно сделать это одной командой:
sudo sed -i 's|^;* *date.timezone *=.*|date.timezone = Europe/Moscow|' /etc/php.ini
Проверьте:
grep date.timezone /etc/php.ini
Если используется PHP-FPM, проверьте дополнительные файлы конфигурации:
grep -R "date.timezone" /etc/php-fpm.d/ /etc/httpd/conf.d/ 2>/dev/null
Если там есть строка вида:
php_value[date.timezone] = UTC
ее также можно изменить на нужный часовой пояс.
Чтобы Apache не выдавал предупреждение про ServerName, создайте отдельный конфиг:
echo 'ServerName localhost' | sudo tee /etc/httpd/conf.d/servername.conf
13. Настройка firewall
Откройте нужные порты в firewalld.
Для Zabbix-сервера обычно нужны:
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --permanent --add-port=10051/tcp
Порт 10050/tcp на самом Zabbix-сервере нужен только если этот сервер будет опрашиваться как агент другим Zabbix-сервером или прокси. Для локального агента открывать его наружу обычно не нужно.
Если все же хотите открыть:
sudo firewall-cmd --permanent --add-port=10050/tcp
Примените правила:
sudo firewall-cmd --reload
Проверьте:
sudo firewall-cmd --list-all
14. Запуск сервисов
Включите автозапуск и запустите сервисы:
sudo systemctl enable --now postgresql
sudo systemctl enable --now zabbix-server
sudo systemctl enable --now zabbix-agent2
sudo systemctl enable --now httpd
Если в системе есть PHP-FPM, включите и его:
if systemctl list-unit-files | grep -q '^php-fpm.service'; then
sudo systemctl enable --now php-fpm
fi
Проверьте статус:
sudo systemctl status zabbix-server --no-pager
sudo systemctl status zabbix-agent2 --no-pager
sudo systemctl status httpd --no-pager
sudo systemctl status postgresql --no-pager
Проверьте порты:
sudo ss -lntp | grep -E '10051|10050|:80|:443|:5432'
15. Первоначальная настройка через веб-интерфейс
Откройте в браузере:
http://IP_АДРЕС_СЕРВЕРА/zabbix
Например:
http://192.168.10.20/zabbix
Мастер установки проверит требования системы.
На шаге подключения к базе данных укажите:
| Параметр | Значение |
|---|---|
| Database type | PostgreSQL |
| Database host | 127.0.0.1 или localhost |
| Database port | 5432 |
| Database name | zabbix |
| User | zabbix |
| Password | ваш пароль из ZBX_DB_PASS |
Если вы использовали Unix-сокет, поле Database host можно оставить пустым.
Далее мастер создаст файл:
/etc/zabbix/web/zabbix.conf.php
После завершения установки войдите в веб-интерфейс.
Данные по умолчанию:
Логин: Admin
Пароль: zabbix
Сразу же смените пароль для пользователя Admin. В Zabbix это обычно делается через профиль пользователя или раздел управления пользователями.
Мы делимся этой технической информацией, чтобы помочь вам в решении задач — используйте её с пониманием. Статья носит рекомендательный характер, поэтому, пожалуйста, применяйте описанные методы осмотрительно.