Люблю Zabbix
, как систему мониторинга для контроля за вверенной мне инфраструктурой, а потому в виду того факта что вышел новый релиз Zabbix
версии 4
я хотел бы для себя в первую очередь задокумментировать процесс инсталляции на Ubuntu 18.04 Server amd64
. Посмотреть что изменилось и надо уже задокумментировать шаги, как поставить на мониторинг жесткие диски рабочих компьютеров в организации чтобы заблаговременно знать когда с ними будут проблемы и нужно будет менять.
На важных рабочих персональных компьютерах я использую два физических диска, один для самой системы и пользовательских файлов, а второй для бекапирования всей системы встроенными средствами Windows
. В частности использую «Архивацию
». Тоже кстати нужно подготовить заметку, как для Windows 7
так и для Windows 10.
На заметку: Чем больше оперативной памяти у вас имеется, тем быстрее работает база данных (а следовательно, и Zabbix)!
На заметку: Общее количество требуемого места на жестком диске рассчитывается:
Конфигурация + История + Динамика изменений + События
После установки Zabbix
такое дисковое пространство более НЕ будет использовано сразу. Размер базы данных будет постепенно увеличиваться и остановится по достижении определенного момента, зависящего от настроек очистки базы данных.
На заметку: На сервере где развернута система мониторинга Zabbix
обязательно должно быть синхронизируемое время.
ekzorchik@srv-bionic:~$ rm -Rf dproject/ ekzorchik@srv-bionic:~$ hg clone --insecure https://ekzorchik@172.35.35.8/hg/dproject ekzorchik@srv-bionic:~$ sudo ./dproject/default
Устанавливаю в систему пакет LAMP
через Tasksel:
ekzorchik@srv-bionic:~$ sudo apt-get install tasksel -y ekzorchik@srv-bionic:~$ sudo tasksel install lamp-server ekzorchik@srv-bionic:~$ echo "ServerName localhost" | sudo tee -a /etc/apache2/apache2.conf ekzorchik@srv-bionic:~$ sudo rm -Rf /var/www/html/ ekzorchik@srv-bionic:~$ sudo unlink /etc/apache2/sites-available/000-default.conf ekzorchik@srv-bionic:~$ sudo unlink /etc/apache2/sites-available/default-ssl.conf ekzorchik@srv-bionic:~$ sudo unlink /etc/apache2/sites-enabled/000-default.conf ekzorchik@srv-bionic:~$ sudo mysqladmin -u root password 712mbddr@
Прописываю в систему Ubuntu 18.04 Server
репозитарии для установки системы мониторинга Zabbix
версии 4
(самой последней на момент написания текущей заметки, от 16.10.2018
)
ekzorchik@srv-bionic:~$ wget https://repo.zabbix.com/zabbix/4.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.0-1+bionic_all.deb ekzorchik@srv-bionic:~$ sudo dpkg -i zabbix-release_4.0-1+bionic_all.deb ekzorchik@srv-bionic:~$ sudo apt-get update
Устанавливаю как отдельно на разных системах или все на одной компоненты Zabbix
→ сервер, прокси, веб-интерфейс:
На заметку: Следует заменить ‘mysql
‘ в командах на ‘pgsql
‘ при использовании PostgreSQL
, или на ‘sqlite
‘ при использовании SQLite3
(только прокси).
На заметку: Для Zabbix
сервера и прокси демонов требуется база данных. Она не требуется для работы Zabbix
агента.
Если Zabbix
сервер и прокси установлены на один хост, их базы данных необходимо создавать с разными именами!
ekzorchik@srv-bionic:~$ sudo apt-get install zabbix-server-mysql zabbix-frontend-php -y
Создаю пользователя, пароль и базу данных которые будут использоваться сервисом Zabbix
:
ekzorchik@srv-bionic:~$ sudo mysql -u root -p712mbddr@ -e "create database db_zabbix character set utf8" ekzorchik@srv-bionic:~$ sudo mysql -u root -p712mbddr@ -e "create user 'us_zabbix'@'localhost' identified by '612mbddr@'" ekzorchik@srv-bionic:~$ sudo mysql -u root -p712mbddr@ -e "grant all on db_zabbix.* to 'us_zabbix'@'localhost';"
Теперь нужно создать/импортировать структуру базы данных под сервис Zabbix
:
ekzorchik@srv-bionic:~$ sudo zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -u us_zabbix -p612mbddr@ db_zabbix
На заметку: Если устанавливается только Zabbix-proxy
то у него своя собственная структура под свою базу данных:
# zcat /usr/share/doc/zabbix-proxy-mysql/create.sql.gz
Прописываю базу данных, пользователя и пароль либо в zabbix_server.conf
либо zabbix_proxy.conf:
ekzorchik@srv-bionic:~$ sudo nano /etc/zabbix/zabbix_server.conf LogFile=/var/log/zabbix/zabbix_server.log PidFile=/var/run/zabbix/zabbix_server.pid SocketDir=/var/run/zabbix DBHost=localhost DBName=db_zabbix DBUser=us_zabbix DBPassword=612mbddr@
Теперь запускаю процесс инсталляции Zabbix
сервиса:
ekzorchik@srv-bionic:~$ sudo systemctl restart zabbix-server ekzorchik@srv-bionic:~$ sudo update-rc.d zabbix-server enable ekzorchik@srv-bionic:~$ sudo systemctl status zabbix-server | head -n 5 ● zabbix-server.service - Zabbix Server Loaded: loaded (/lib/systemd/system/zabbix-server.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2018-10-16 20:56:18 MSK; 29s ago Main PID: 4891 (zabbix_server) Tasks: 34 (limit: 2320) ekzorchik@srv-bionic:~$ sudo systemctl restart apache2
Далее следует произвести настройки конфигурации Apache
для Web
-использования сервисом Zabbix
применительно к PHP
интерпретатору версии текуще установленной по дефолту, т. е. 7.2:
ekzorchik@srv-bionic:~$ php --version PHP 7.2.10-0ubuntu0.18.04.1 (cli) (built: Sep 13 2018 13:45:02) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.10-0ubuntu0.18.04.1, Copyright (c) 1999-2018, by Zend Technologies
Полное содержимое zabbix.conf
не привожу, только то что изменил:
ekzorchik@srv-bionic:~$ sudo nano /etc/apache2/conf-enabled/zabbix.conf <IfModule mod_php7.c> php_value max_execution_time 300 php_value memory_limit 128M php_value post_max_size 16M php_value upload_max_filesize 2M php_value max_input_time 300 php_value max_input_vars 10000 php_value always_populate_raw_post_data -1 php_value date.timezone Europe/Moscow </IfModule> ekzorchik@srv-bionic:~$ sudo nano /etc/php/7.2/apache2/php.ini date.timezone = Europe/Moscow ekzorchik@srv-bionic:~$ sudo systemctl restart apache2
Но это еще не все, для наглядности что система мониторинга работает как следует следует установить Zabbix agent
на эту же систему, т. к. снимать информацию будем с самого себя:
ekzorchik@srv-bionic:~$ sudo apt-get install zabbix-agent -y ekzorchik@srv-bionic:~$ sudo systemctl restart zabbix-agent ekzorchik@srv-bionic:~$ sudo systemctl status zabbix-agent | head -n 5 ● zabbix-agent.service - Zabbix Agent Loaded: loaded (/lib/systemd/system/zabbix-agent.service; disabled; vendor preset: enabled) Active: active (running) since Tue 2018-10-16 21:02:23 MSK; 12s ago Process: 5225 ExecStop=/bin/kill -SIGTERM $MAINPID (code=exited, status=0/SUCCESS) Process: 5226 ExecStart=/usr/sbin/zabbix_agentd -c $CONFFILE (code=exited, status=0/SUCCESS)
Настройки Zabbix
агента для данной заметки подходят те которые установлены по дефолту.
Теперь нужно пройтись по шагам инсталляции Zabbix
через фронтенд открыв в браузере URL
адрес (http://IP&DNS/zabbix
) текущей системы:
Нажимаю «Next step
» шага «Welcome
», следующий этап нужен чтобы убедиться что все параметры сконфигурированы на необходимые значения, статусы по каждой строчке должны быть в значении «OK
» и только после этого нажимаю «Next step
» шага «Check of pre-requisites
».
Далее нужно указать базу, пользователя и пароль:
- Database type: MySQL
- Database host: localhost
- Database port: 0
- Database name: db_zabbix
- User: us_zabbix
- Password: 612mbddr@
и только потом нажать «Next step
», следующий этап это указание текущего IP адреса текущей системы где разворачивается Zabbix:
- Host: localhost
- Port: 10051
- Name: 172.33.33.25
и только после этого нажимаю «Next step
», «Next step
», если все сделано правильно, то будет надпись свидетельствующая об успешной инсталляции системы мониторинга Zabbix
в Ubuntu 18.04 Server amd64:
Congratulations! You have successfully installed Zabbix frontend.
Configuration file "/usr/share/zabbix/conf/zabbix.conf.php" created.
Нажимаю Finish
. Авторизуюсь в системе Zabbix
задействовав дефолтные идентификационные данные:
- Login: Admin
- Pass: zabbix
- Remember me for 30 days: отмечаю галочкой
и нажимаю Sign in
. Опять если все правильно и работает будет отображена Web
-страница управления Zabbix
, она точно такая же как и в версиях Zabbix
которые я использовал ранее.
Работает. Если посмотреть Latest data
и выбрать текущий хост то будет отображены в виде графика снимаемые метрики. В общем все тоже самое что и до этого при использовании младших версий Zabbix
. На этом у меня пока все, с уважением автор блога Олло Александр aka ekzorchik.