0. Предварительные настройки системы
Переключитесь на root пользователя (все нижеследующие команды выполнять под root):
sudo -i(Дополнительно) Настройте часовой пояс:
timedatectl set-timezone Europe/MoscowОбновите систему:
apt update && apt dist-upgrade -yПерезагрузите сервер:
reboot
1. Установка и настройка MariaDB
(Дополнительно) Добавьте официальный репозиторий для MariaDB (в данной статье 10.3) https://downloads.mariadb.org/mariadb/repositories:
apt install software-properties-common dirmngr gpg-agent
apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
add-apt-repository 'deb [arch=amd64,arm64,ppc64el] http://mirror.timeweb.ru/mariadb/repo/10.3/ubuntu bionic main'
Установите сервер MariaDB:
2. Установка и настройка PHP
(Дополнительно) Добавьте репозиторий для новых версий PHP:
Отредактируйте php.ini:
Измените нижеследующие параметры:
Перезапустите php-fpm:
apt updateНастройте MariaDB (необходимо изменить пароль для root пользователя, остальное можно оставить по умолчанию):
apt install mariadb-server
mysql_secure_installationСоздайте базу данных для Zabbix:
mysql -u root -p
mysql> CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin;
mysql> GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost IDENTIFIED BY 'password';
mysql> FLUSH PRIVILEGES;
mysql> QUIT;
2. Установка и настройка PHP
(Дополнительно) Добавьте репозиторий для новых версий PHP:
add-apt-repository ppa:ondrej/phpУстановите PHP-FPM:
apt update
apt install php7.2 php7.2-common php7.2-cli php7.2-fpm php7.2-gd php7.2-mysql php7.2-mbstring php7.2-curl php7.2-xml php7.2-xmlrpc php7.2-zip php7.2-json php7.2-opcache php7.2-readline php7.2-imap php7.2-intl php7.2-ldap php-apcuТак как далее будет отредактирован файл /etc/zabbix/php-fpm.conf, нижеследующие действия выполнять не нужно (оставил для примера).
nano /etc/php/7.2/fpm/php.ini
cgi.fix_pathinfo = 0
date.timezone = Europe/Moscow
max_execution_time = 300
post_max_size = 16M
max_input_time = 300
systemctl restart php7.2-fpm.service
3. Установка и настройка NGINX
(Дополнительно) Добавьте репозиторий для новых Stable версий NGINX:
(Дополнительно) Добавьте репозиторий для новых Stable версий NGINX:
add-apt-repository ppa:ondrej/nginx
apt update
Или для новых Mainline версий NGINX (т.к. это самый свежий релиз могут возникнуть разного рода проблемы, для надёжности рекомендую использовать Stable версию):
Создайте конфигурационный файл для Zabbix:
Необходимо заполнить нижеследующее:
Активируйте конфигурацию:
Проверьте конфигурационный файл:
Результат должен быть такой:
Перезапустите NGINX:
4. Установка и настройка Zabbix
Добавьте официальный репозиторий Zabbix (в данном случае 4.4, https://www.zabbix.com/ru/download):
add-apt-repository ppa:ondrej/nginx-mainlineУстановите NGINX:
apt update
apt install nginxЗапуск и автозагрузка NGINX:
systemctl start nginxУдалите ссылку на конфигурационный файл по умолчанию:
systemctl enable nginx
rm /etc/nginx/sites-enabled/defaultПерезапустите NGINX:
nginx -s reloadТак как далее будет установлен пакет zabbix-nginx-conf (конфиг для 4.4), нижеследующие действия выполнять не нужно (оставил для примера).
nano /etc/nginx/sites-available/zabbix.conf
server {
listen 80;
server_name localhost;
root /usr/share/zabbix;
charset utf-8;
access_log /var/log/nginx/access_zabbix.log;
error_log /var/log/nginx/error_zabbix.log;
location / {
index index.php index.html index.htm;
}
location ~ \.php$ {
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
# Запрет доступа к .htaccess файлам, нужно если корневая директория Apache
# совпадает с корневой директория NGINX
location ~ /\.ht {
deny all;
}
# Запрет доступа к файлам Zabbix
location ~* /(?:api|conf|include)/ {
return 301 $server_name/index.php;
}
}
ln -s /etc/nginx/sites-available/zabbix.conf /etc/nginx/sites-enabled/
nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
nginx -s reload
4. Установка и настройка Zabbix
Добавьте официальный репозиторий Zabbix (в данном случае 4.4, https://www.zabbix.com/ru/download):
cd /tmp && wget https://repo.zabbix.com/zabbix/4.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.4-1+bionic_all.debУстановите Zabbix сервер, веб-интерфейс и агент (агент на сервере нужен для мониторинга собственного состояния):
dpkg -i zabbix-release_4.4-1+bionic_all.deb
apt update
apt install zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-agent -yИмпортируйте начальные схемы в выше созданную базу данных для Zabbix (пароль password):
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -u zabbix -p zabbixПроверьте использование NGINX в качестве веб-сервера:
netstat -tulnp | grep 80Должен быть подобный результат:
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 17075/nginx: masterОтредактируйте конфигурационный файл:
tcp6 0 0 :::80 :::* LISTEN 17075/nginx: master
nano /etc/zabbix/nginx.confРаскомментируйте (удалите "решетки") и настройте директивы 'listen' и 'server_name' (например, example.com можно заменить на localhost);
# listen 80;Отредактируйте конфигурационный файл php-fpm.conf:
# server_name example.com;
nano /etc/zabbix/php-fpm.confРаскомментируйте строку и укажите свой часовой пояс:
php_value[date.timezone] = Europe/MoscowОтредактируйте конфигурационный файла Zabbix:
nano /etc/zabbix/zabbix_server.confИзмените или добавьте следующее:
DBName=zabbixЗапуск и автозагрузка Zabbix, nginx и php-fpm:
DBUser=zabbix
DBPassword=password
systemctl restart zabbix-server zabbix-agent nginx php7.2-fpm
systemctl enable zabbix-server zabbix-agent nginx php7.2-fpm
Проверка запуска Zabbix сервера:
Данные для входа (рекомендую изменить пароль после первого входа):
Логин - Admin
Пароль - zabbix
Поздравляю, Zabbix успешно установлен.
netstat -tulnp | grep zabbix_serverДолжен быть подобный результат:
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 18049/zabbix_serverПерейдите по адресу http://IP_адрес_сервера:80 и проверьте, чтобы все пункты были OK. Далее настройте подключение к базе данных и дополнительное описание сервера (можно всё оставить по умолчанию).
tcp6 0 0 :::10051 :::* LISTEN 18049/zabbix_server
Данные для входа (рекомендую изменить пароль после первого входа):
Логин - Admin
Пароль - zabbix
Поздравляю, Zabbix успешно установлен.
Комментариев нет
Отправить комментарий