Stupid House

Установка Zabbix во FreeBSD


Рассмотрим одну из вариаций установки сервера мониторинга Zabbix версии 6.4, в качестве Web сервера для Frontend будет использоваться Apache, хранилищем баз данных будет MySQL.

 

 

Установка необходимого софта

Установка с помощью менеджера пакетов.

Устанавливаем из пакетов Web сервер и MySQL сервер.

# pkg install mysql80-server
# pkg install apache24

Проверяем какие пакеты Zabbix есть в репозитории.

# pkg search zabbix64
zabbix64-agent-6.4.3           Enterprise-class open source distributed monitoring (agent)
zabbix64-frontend-php80-6.4.3_1 Enterprise-class open source distributed monitoring (frontend-php80)
zabbix64-frontend-php81-6.4.3_1 Enterprise-class open source distributed monitoring (frontend-php81)
zabbix64-frontend-php82-6.4.3_1 Enterprise-class open source distributed monitoring (frontend-php82)
zabbix64-frontend-php83-6.4.3_1 Enterprise-class open source distributed monitoring (frontend-php83)
zabbix64-java-6.4.3            Enterprise-class open source distributed monitoring (java)
zabbix64-proxy-6.4.3           Enterprise-class open source distributed monitoring (proxy)
zabbix64-server-6.4.3          Enterprise-class open source distributed monitoring (server)

Устанавливаем Zabbix server и Zabbix agent.

# pkg install zabbix64-server
# pkg install zabbix64-agent

Frontend выбираем либо под уже имеющуюся версию PHP, либо на свой вкус и цвет, т.к. от этого зависит какую версию пакета mod_php необходимо будет устанавливать. Я устанавливал под последнюю на данный момент версию PHP 8.3, соответственно версия mod_php тоже будет под 8.3. Все необходимые зависимости менеджер пакетов должен будет притянуть сам.

# pkg install zabbix64-frontend-php83
# pkg install mod_php83

 

 

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

# cd /usr/ports/databases/mysql80-server/
# make install clean

# cd /usr/ports/www/apache24/
# make install clean

Установим PHP 8.3, чтобы Frontend собирался с этой версией PHP, на версии Zabbix 6.4 по умолчанию Frontend устанавливает и собирается с версией PHP 8.2.

# cd /usr/ports/lang/php83
# make install clean

# cd /usr/ports/www/mod_php83
# make install clean

Устанавливаем Zabbix Server, Agent и Frontend, зависимости будут установлены автоматически.

# cd /usr/ports/net-mgmt/zabbix64-server/
# make install clean

# cd /usr/ports/net-mgmt/zabbix64-agent/
# make install clean

# cd /usr/ports/net-mgmt/zabbix64-frontend/
# make install clean

 

Настройка Web сервера Apache

Для настройки Apache правим файл /usr/local/etc/apache24/httpd.conf

# vi /usr/local/etc/apache24/httpd.conf

В примере ниже указаны настройки для домена stupidhouse.local

ServerAdmin zabbix@stupidhouse.local
ServerName zabbix.stupidhouse.local
<IfModule dir_module>
    DirectoryIndex index.php index.html
</IfModule>
<FilesMatch "\.php$">
    SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
    SetHandler application/x-httpd-php-source
</FilesMatch>

Включаем автоматическую загрузку Apache при старте системы и запускаем его.

# /usr/local/etc/rc.d/apache24 enable
# /usr/local/etc/rc.d/apache24 start

Если сервер будет использоваться только для Zabbix и на Web сервере других ресурсов не предвидится, то сделаем символическую ссылку для папки zabbix на папку data, это позволит нам не писать в Apache дополнительные настройки для папки zabbix и при открытии сервера в Web браузере будет сразу открываться наш сервис.

# mv /usr/local/www/apache24/data/ /usr/local/www/apache24/data_
# ln -s /usr/local/www/zabbix64/ /usr/local/www/apache24/data

 

Настройка MySQL сервера

Включаем автоматическую загрузку MySQL сервера при старте системы и запускаем его.

# /usr/local/etc/rc.d/mysql-server enable
# /usr/local/etc/rc.d/mysql-server start

Первый запуск может занять некоторое время.

Прогоняем скрипт позволяющий выполнить некоторые настройки безопасности.

# mysql_secure_installation

Создаем базу данных Zabbix и пользователя для доступа к ней (Поля password меняем на свои пароли).

# mysql -u root -p
password
mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
mysql> create user zabbix@localhost identified by 'password';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> set global log_bin_trust_function_creators = 1;
mysql> quit;

Запускаем скрипты импорта структуры БД и предварительно заполнения данными.

# mysql --default-character-set=utf8mb4 -u root -p zabbix < /usr/local/share/zabbix64/server/database/mysql/schema.sql
# mysql --default-character-set=utf8mb4 -u root -p zabbix < /usr/local/share/zabbix64/server/database/mysql/images.sql
# mysql --default-character-set=utf8mb4 -u root -p zabbix < /usr/local/share/zabbix64/server/database/mysql/data.sql
# mysql --default-character-set=utf8mb4 -u root -p zabbix < /usr/local/share/zabbix64/server/database/mysql/double.sql

После успешного импорта схемы БД отключаем функцию log_bin_trust_function_creators.

# mysql -u root -p
password
mysql> set global log_bin_trust_function_creators = 0;
mysql> quit;

 

Настройка сервера Zabbix

Редактируем файл настроек Zabbix сервера.

# vi /usr/local/etc/zabbix64/zabbix_server.conf

Вносим настройки конфигурации базы данных, некоторые настройки необходимо будет раскомментировать.

DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=password

DBHost - имя или IP адрес компьютера (сервера) в сети, где расположена база данных. Если база данных расположена на этом же компьютере, но оставляем значение по умолчанию (localhost).

DBName - имя БД для хранения данных Zabbix.

DBUser - имя пользователя для доступа к БД, мы его создавали на стадии конфигурации MySQL, по умолчанию zabbix.

DBPassword - пароль доступа к БД, задается при создании пользователя БД.

Увеличим размер кэша, по умолчанию значение установлено в 32 мегабайта.

CacheSize=128M

Включаем автоматическую загрузку Zabbix сервера при старте системы и запускаем его.

# /usr/local/etc/rc.d/zabbix_server enable
# /usr/local/etc/rc.d/zabbix_server start

 

Настройка Zabbix Frontend

Прописываем в DNS адрес Zabbix сервера (например, для zabbix.stupidhouse.local), после чего открываем Web браузером страницу нашего сервера:

http://<strong>IP_ZABBIX_SERVER</strong>
или
http://zabbix.stupidhouse.local/<img alt="zabbix server frontend setup language" src="/content/83/files/zabbix_frontend_01.png" style="width: 100%; max-width: 900px;" />

Выбираем язык интерфейса и переходим к следующей странице.

zabbix server frontend setup pre-requisites

Проверяем требования системы, после внесения изменений в файл php.ini не забываем перезапустить apache и уже после обновить страницу. Если ошибок нет переходим на следующую страницу настройки.zabbix server frontend setup database configure connection

Устанавливаем настройки подключения к базе данных и переходим к следующей странице.

zabbix server frontend configuration

Указываем имя Zabbix сервера, часовой пояс и тему по умолчанию, переходим к следующей странице.

zabbix server frontend check settings

Проверяем настройки, переходим на следующую страницу.

zabbix server frontend install

При успешном сохранении конфигурации появляется соответствующее сообщение. Переходим на страницу Zabbix, пользователь по умолчанию Admin (первая буква с большой буквы), пароль zabbix. Не забываем поменять пароль администратора Users -> Users -> Admin -> Change password.

 

Настройка агента Zabbix

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

# /usr/local/etc/rc.d/zabbix_agentd enable
# /usr/local/etc/rc.d/zabbix_agentd start

 

Tags:
Автор: muxa, 11.01.2024
Войдите или зарегистрируйтесь, чтобы иметь возможность оставлять комментарии