Установка Zabbix является нетривиальной задачей и довольно часто может вызывать трудности в процессе инсталлирования. Я давно планировал написать статью по установке системы мониторинга Zabbix, а посколько относительно недавно вышла новая версия, это дало толчок для начала работы.
Краткий обзор возможностей системы я уже описывал в статье «Системы мониторинга сервера linux». Сегодня мы с вами будем устанавливать эту систему на сервер с ОС Ubuntu.
Установка Zabbix на Ubuntu 16.04
Установка Zabbix на Ubuntu 16, NGINX + PHP-FPM.
Установка Zabbix на Ubuntu 15.10
Если у вас установлена чистая система, вам потребуется установить mysql сервер и вебсервер apache. Для этого нужно выполнить пару простых команд(под рутом):
apt-get update
apt-get install mysql-server mysql-client apache2 -y
В процессе установки вас попросят ввести пароль для суперпользователя баз данных mysql.
Заходим на страницу скачивания и нажимаем на кнопку Download
напротив вашей системы. На открывшейся странице нужно скачать 2 актуальных пакета zabbix-server-mysql
и zabbix-frontend-php
.
Создадим отдельную папку и скачаем в нее пакеты:
mkdir zabbix
cd zabbix
wget http://repo.zabbix.com/zabbix/3.0/ubuntu/pool/main/z/zabbix/zabbix-frontend-php_3.0.0-1+trusty_all.deb
wget http://repo.zabbix.com/zabbix/3.0/ubuntu/pool/main/z/zabbix/zabbix-server-mysql_3.0.0-1+trusty_amd64.deb
Обратите внимание, что я скачиваю пакеты для 64х битной системы.
Поставим пакеты командой:
dpkg -i zabbix-server-mysql_3.0.0-1+trusty_amd64.deb
dpkg -i zabbix-frontend-php_3.0.0-1+trusty_all.deb
В процессе установки пакетов у вас может появится ошибка о том, что нужны определенные зависимости, на пример:
root@ubuntu:~/zabbix# dpkg -i zabbix-server-mysql_3.0.0-1+trusty_amd64.deb (Reading database ... 62105 files and directories currently installed.) Preparing to unpack zabbix-server-mysql_3.0.0-1+trusty_amd64.deb ... Unpacking zabbix-server-mysql (1:3.0.0-1+trusty) over (1:2.4.6+dfsg-1) ... dpkg: dependency problems prevent configuration of zabbix-server-mysql: zabbix-server-mysql depends on libcurl3 (>= 7.16.2); however: Package libcurl3 is not installed. dpkg: error processing package zabbix-server-mysql (--install): dependency problems - leaving unconfigured Processing triggers for ureadahead (0.100.0-19) ... Processing triggers for systemd (225-1ubuntu9) ... Processing triggers for man-db (2.7.4-1) ... Errors were encountered while processing: zabbix-server-mysql
В этом сообщении сказано, что zabbix-server-mysql
требует наличия установленого libcurl3
, установим:
apt-get -f install
У вас может быть в списке больше неустановленных зависимостей, однако команда apt-get -f install
установит все что вам нужно. После установки всех пакетов и зависимостей перезагружаем вебсервер apache2:
service apache2 reload
Пробуем открыть страницу по адресу http://you-server-ip/zabbix
. Если все правильно сделали у вас должна открыться страница zabbix.
Переходим к следующему шагу и сталкиваемся с проблемой, которая заключается в том, что не установлен параметр временной зоны. Исправляем.
cd /etc/apache2/conf-available
nano zabbix.conf
И убираем знак #(комментария) в строке:
# php_value date.timezone Europe/Riga
Приводя к виду:
<IfModule mod_php5.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 always_populate_raw_post_data -1 php_value date.timezone Europe/Riga </IfModule>
Сохраняем изменения комбинацией Ctrl+O
и закрываем редактор Ctrl+x
.
Установка Zabbix на этом не заканчивается, следующим шагом нам нужно создать базу данных, пользователя для нее и наполнить её таблицами.
Заходим в командную строку mysql сервера и выполняем команды:
mysql -u root -p
CREATE DATABASE zabbix;
GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost IDENTIFIED BY 'zabbix' WITH GRANT OPTION;
FLUSH PRIVILEGES;
Теперь разберем, что мы тут сделали:
- Подключение к mysql серверу;
- Создание базы данных с именем
zabbix
; - Создаем пользователя
zabbix
и предоставляем пользователю привилегии для базыzabbix
; - Обновляем привилегии;
Пользователь создан, теперь нужно наполнить базу данных таблицами. В интернете не очень часто описано где искать эти таблицы и как их собственно добавить в базу.
Таблицы находятся в архиве который расположен по адресу /usr/share/doc/zabbix-server-mysql
. Переходим в эту директорию и выполняем команды:
cd /usr/share/doc/zabbix-server-mysql
gzip -d create.sql.gz
mysql -u zabbix -p zabbix < create.sql
Вводим пароль и ожидаем пока база наполнится страницами. Если этого не сделать, то в шаге Конфигурации базы данных у вас будет появляться ошибка The frontend does not match Zabbix database
. После этих действий установка сводится к простому кликанию по кнопке Next step
завершая наши старания кнопкой Finish
.
Готово, установка Zabbix завершена, теперь для входа в систему используйте логин - admin
, пароль - zabbix
.
После установки нужно отредактировать файл /etc/zabbix/zabbix_server.conf
, раскомментировав и указав значения:
DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=zabbix
Нужно найти и убрать знак комментария в строке, после чего, добавить нужное значение.
После этих манипуляций сохраняем файл и запускаем service zabbix-server start
.
Спасибо Владимиру за комментарий.
На этом установка Zabbix 3.0 закончена. Как добавить объекты для мониторинга на примере коммутатора D-LINK DGS-3420-28SC.
Если у вас появились ошибки или вопросы которые не были раскрыты в этой статье, пишите ваши комментарии и с вашей помощью я дополню статью.
Спасибо за статью. Все что написано все сработало.
3,0,1 встал без проблем.
Добавлю к своему предыдущему комментарию:
не всегда настройки заносятся в /etc/zabbix/zabbix_server.conf
как что если после запуска сервер говорит что zabbix-server не запущен делаем следующее:
# vi /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
Спасибо!! Отличная инструкция.
Когда выйдет следующая статья?
Добрый день.
Новая статья выйдет в ближайшие 2-3 дня.
добрый день, подскажите, пожалуйста, в чём может быть проблема при установке на ubuntu zabbix , после wget….выдаёт ошибку :
wget https://repo.zabbix.com/zabbix/4.5/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.5-1+focal_all.deb
Распознаётся repo.zabbix.com (repo.zabbix.com)… 162.243.159.138, 2604:a880:1:20::b82:1001
Подключение к repo.zabbix.com (repo.zabbix.com)|162.243.159.138|:443… соединение установлено.
HTTP-запрос отправлен. Ожидание ответа… 404 Not Found
благодарю
Это очень странно, попробуйте еще раз выполнить, можете найти более новую версию приложения.
я проверил, все скачалось
Resolving repo.zabbix.com (repo.zabbix.com)... 162.243.159.138, 2604:a880:1:20::b82:1001
Connecting to repo.zabbix.com (repo.zabbix.com)|162.243.159.138|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 4120 (4.0K) [application/octet-stream]
Saving to: zabbix-release_4.5-1+focal_all.deb
zabbix-release_4.5-1+focal_all.deb 100%[=================================================================================================>] 4.02K --.-KB/s in 0s
2020-07-13 10:30:03 (423 MB/s) - zabbix-release_4.5-1+focal_all.deb saved [4120/4120]
Спасибо за статью!
СПАСИБО!!!!!! ВСЕ ВСТАЛО, но пришлось задавать пароль и привелегии чз phpmyadmin, а командами в терминале не получалось!
Если не сложно, пришлите пожалуйста сообщение об ошибке, попробуем разобраться.
Спасибо.
Кто нибудь сталкивался с проблемой:
root@ubuntu:~# systemctl status zabbix-server.service
————————
Mar 14 03:48:41 ubuntu systemd[1]: zabbix-server.service: Control process exited, code=exited status=1
Mar 14 03:48:41 ubuntu systemd[1]: Failed to start LSB: Start zabbix-server daemon.
Mar 14 03:48:41 ubuntu systemd[1]: zabbix-server.service: Unit entered failed state.
Mar 14 03:48:41 ubuntu systemd[1]: zabbix-server.service: Failed with result ‘exit-code’.
После установки нужно отредактировать файл
/etc/zabbix/zabbix_server.conf
, раскомментировав и указав значения:Нужно найти и убрать знак комментария в строке, после чего, добавить нужное значение.
После этих манипуляций сохраняем файл и запускаем
service zabbix-server start
.дошел до пункта
> service apache2 reload
и дальше не смог ничего открыть в Веб. с чем может быть связано?
Выполните пожалуйста команду
tail /var/log/apache2/error.log
и напишите в комментарий вывод из консоли, попробуем разобраться.Аплодирую за такую понятную инструкцию.
Она очень полезна новичкам.
Отмечу что после того как все условия zabbix удовлетворены(в данном случае установка часового пояса), нужно перезапустить apache сервер.
Подскажите пожалуйста! После установки по умолчанию в веб-интерфейс Zabbix можно войти по адресу 127.0.1.1/zabbix. А как сделать так, чтоб я мог в него войти из любого компьютера в моей локальной сети по адресу например /zabbix или что-то вроде того? То есть вместо локального айпишника был мой. И возможно ли это вообще?
по адресу my_ip/zabbix
Все верно, веб интерфейс всегда доступен по адресу http://hostname-or-ip/zabbix
а как сделать так, чтоб я мог войти в заббикс с другого компьютера моей подсети? и можно подробнее?
В адресной строке нужно ввести http://{ip-адреc}/zabbix или http://{hostname}/zabbix того компьютера, на котором установлен веб интерфейс.
А как можно установить период обновления карты сетей? Установил заббик, создал всё необходимое, создал карту, нанес все элементы, соединил, но она не обновляется автоматически. обновляется только после того как нажму F5. И вообще можно ли настроить интервал обновления?
Если не ошибаюсь, то интервал автообновления задать нельзя. Никогда не волновал этот вопрос, если честно)
Для какой версии Ubuntu Server статья?
Или на какой вы устанавливали ?
Установка производилась на Ubuntu 15.10
Поднял на ubuntu 14.4 LTS x64, линукс вообще ни хрена не знаю! Юзаю линукс около 2-х недель. Статья какраз в тему. Спасибо!
Пожалуйста, будут вопросы, обращайтесь. С радостью помогу 🙂
Доброго времени.
Устанавливал по вашей инструкции все окей. Но на шаге
gzip -d create.sql.gz у меня пишет gzip -d create.sql.gz
Хотя файл в директории существует. В чем может проблема???
Немного ошибся с сообщением.
No such file or directory
Вот скрин ошибки. Что дальше делать не знаю.
https://yadi.sk/i/Ga7mDKD6t9NkN
Немного подправил статью, теперь стало более понятно 🙂
Выполните команды:
cd /usr/share/doc/zabbix-server-mysql
gzip -d create.sql.gz
mysql -u zabbix -p zabbix < create.sql
И все заработает :)
нет не заработало точно такая же ошибка(((
По поводу того, что у вас в скриншоте. Вы не выполнили переход в директорию с архивом, сделать это можно выполнив команду
cd /usr/share/doc/zabbix-server-mysql
, далее распаковываем архив и заливаем его в базу.Подключение к базе данных тоже не выполнено, так как скорее всего есть ошибка в создании базы данных или пользователя для нее. Как вариант, можете поставить
phpmyadmin
и создать базу с пользователем через понятный веб интерфейсИ сновыми командами пробывал ну не идет и все. Все делал точно до точки. И версия даже такая же что ОС что забикса. Именно фигня какая та с mysql. Как можно создать базу именно дл забикса с помощью phpmyadmin
Переходите в «Учетные записи пользователей -> Добавить новую учетную запись пользователя», заполняем форму и ставим галочку «Создать базу данных с таким же именем и предоставить на неё все привилегии.». Далее переходите в созданную базу, жмете «Импорт» и выбираете архив с базой
create.sql.gz
.Добрый день! Застрял на ошибке: dpkg -i zabbix-frontend-php_3.0.3-1+trusty_all.deb
dpkg: зависимости пакетов не позволяют настроить пакет zabbix-frontend-php:
zabbix-frontend-php зависит от php5, однако:
Пакет php5 не установлен.
zabbix-frontend-php зависит от php5-mysql | php5-mysqlnd | php5-pgsql, однако:
Пакет php5-mysql не установлен.
и тд. …
Как эту *рань установить? Не работает с установленным php5.5 php5.6 и php7.0. Ему еще какая то версия нужна или косяк в другом?
Выполните команду
apt-get -f install
, все должно заработать 🙂Не заработает, уже пробовал. Но косяк приблизительно нашел. В ubuntu 16.04 LTS php5 не работает и не скачивается с репозиториев. Понизил версию до ubuntu 15.** LTS и все отлично по статье установилось.
Я бы даже немного добавил в статью что после каждой команды:
dpkg -i zabbix-server-mysql_3.0.3-1+trusty_amd64.deb
dpkg -i zabbix-frontend-php_3.0.3-1+trusty_all.deb
при возникновении ошибки запускать apt-get -f install и указать на какой версии ubuntu производились действия и так же что на ubuntu 16.04 LTS могут возникнуть трудности.
За статью спасибо, все очень понятно и легко.
Спасибо за комментарий, попробую на днях дополнить статью установкой для версии 16.04. Там немного поменялась начинка, поэтому и не устанавливается.
Установил на версию 16.04 немного поравить ручками добавить в PHP пакетов и все работает
PHP 7.0.8
UBUNTU 16.04 LTS
пакеты trusty это для Ubuntu 14.04(trusty), а статья про Ubuntu 16.04 (xenial)
На момент написания статьи версия Ubuntu — 15.10. А статья именно под этот пакет. Для xenial можете почитать — Установка Zabbix на Ubuntu 16, NGINX + PHP-FPM
Дополню.
Действительно, после неудачного запуска dpkg -i zabbix-server-mysql_3.0.3-1+trusty_i386.deb
выполнил apt-get -f install, потом поставилось
Поле выполнения следующего пункта dpkg -i zabbix-frontend-php_3.0.3-1+trusty_all.deb таже ошибка. Опять выполнил apt-get -f install, а потом dpkg -i zabbix-frontend-php_3.0.3-1+trusty_all.deb
В итоге выполнелать вторая по счету команда.
Статья супер как для новичка. Спасибо!
Спасибо и вам за комментарий)
Все верно, это разные пакеты, первый — это сам сервер, второй — это веб-интерфейс.
Спасибо за статью. Очень хорошая. Но у меня возникла ошибка. Не хочет запускаться zabbix-server
Выдаёт вот что:
root@srvubuntu:/var/log/zabbix# systemctl status zabbix-server.service
● zabbix-server.service — Zabbix Server
Loaded: loaded (/lib/systemd/system/zabbix-server.service; disabled; vendor preset: enabled)
Active: activating (auto-restart) (Result: exit-code) since Ср 2016-07-20 12:50:56 MSK; 7s ago
Process: 16896 ExecStop=/bin/kill -SIGTERM $MAINPID (code=exited, status=1/FAILURE)
Process: 20109 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=1/FAILURE)
июл 20 12:50:56 srvubuntu systemd[1]: Failed to start Zabbix Server.
июл 20 12:50:56 srvubuntu systemd[1]: zabbix-server.service: Unit entered failed state.
июл 20 12:50:56 srvubuntu systemd[1]: zabbix-server.service: Failed with result ‘exit-code’.
Файл
/etc/zabbix/zabbix_server.conf
откредактировали?Если у вас как и у меня сервер не начал слушать порт, то мне помогло раскомментировать опцию
### Option: ListenPort
И поставить порт нужный (10051 по дефолту).
=========
Статья шикарная. Все заработало сразу как и описано. Спасибо автору и всем кто в комментариях помогал.
Спасибо огромное за статью, я пробовал ставить:
Ubuntu-16.04.1-server-amd64
zabbix-server-mysql_3.0.4-1+xenial_amd64.deb
zabbix-frontend-php_3.0.4-1+xenial_all.deb
но у меня почему то после шага service apache2 reload не работает php.
То есть перезагрузил apache, захожу на http://My_server_ip/zabbix и в ответ получаю php страницу в текстовом виде https://yadi.sk/i/4nrjJgCntt5Fw
Дело в том, что начиная с версии 16.04 в состав Ubuntu в качестве сервера включен Nginx, а не Apache, и PHP 7. Однако php работает как отдельное приложение, которое генерирует динамический контент и передает его уже веб-серверу. Поэтому у вас и не заработало. Как вариант, можно установить на модуль php на апач —
apt-get install libapache2-mod-php5
, включить модульa2enmod php5
. Поможет, но версия php будет 5.Команды выполнять под суперпользователем.
Сам это не проверял, информация с головы, если не получится, напишите, разберемся.
Ставьте уже с php7:
# sudo apt-get install -y apache2 mysql-server php7.0 libapache2-mod-php7.0 php7.0-cli php7.0-common php7.0-mysql php7.0-bcmath php7.0-mbstring php7.0-xmlwriter
в zabbix.conf не забудьте указать:
Уже ставим — Установка Zabbix на Ubuntu 16, NGINX + PHP-FPM 🙂
Отличная статья, но, во избежание дальнейшей конвертации всех таблиц, базу данных все же надо создавать так:
CREATE DATABASE zabbix character set utf8 collate utf8_unicode_ci
Спасибо, полезная информация 🙂
Что бы не было «The frontend does not match Zabbix database», нужно выполнить
mysql -u zabbix -p zabbix < schema.sql
mysql -u zabbix -p zabbix < images.sql
mysql -u zabbix -p zabbix < data.sql
но файлов этих нет 🙁
Я поднял FTP, нашёл фалы в интернетах и скопировал их вручную. Только тогда заработало.
Версия Ubuntu значения не имеет.
Скорее всего вы невнимательно читали 🙂
Когда пишу эту команду, пишет нет такой дерриктори, что делать 😕
Залил файл с базой, качайте)
также нужно задать права на каталог
sudo chmod -R /var/run/zabbix
иначе сервер не стартанёт
Коллеги, столкнулся с проблемой, что сервер забикс не запущен.
localhost:10051
нашел коммент типа раскомментировать запись, но это не помогло.
еще нашел, что порт надо вообще изменить с дефолтного 51 на 50
куда копать?
Еще в логах все время пишет что ошибка подключения к mysql access denied password no
Запустите сервер и скиньте сюда то, что посыпалось в логи. Ответ мы найдем именно там.
В файле
/etc/zabbix/zabbix_server.conf
подключение к базе настроили?как решили проблему?
буду благодарен за ответ
ubuntu 14.04-zabbix 3.0 server
А после перезагрузки Ubuntu, zabbix-server сам стартует или его ручками запускаете?
Стартует сам)
Версия Ubuntu 14.04(zabbix-server-mysql_3.0.4-1+trusty_amd64.deb, zabbix-frontend-php_3.0.4-1+trusty_all.deb ), поставилось после использования phpMyAdmin — пасибки!
«В следующей статье я напишу как добавлять объекты для мониторинга……..»- а где эта нужная стаья ?
P/S Вам бы в заббиксе работать
Писал статью на примере очень простого мониторинга скорости на портах коммутатора D-link DGS-3420-28SC — Zabbix и snmp на примере коммутатора D’link. Пример очень упрощен, в будущем постараюсь описать настройку для мониторинга Linux серверов и отдельных служб.
PS: Спасибо 🙂
1. хех не удалось заставить автоматом заббикс стартовать, причем в командной строчке :
ххххххххххххххх~$ service zabbix-server start
* Starting Zabbix server zabbix_server [ OK ]
забикс не стартует — хотя ОК
хххххххххххххххх$ sudo service zabbix-server start
[sudo] password for хххххххх:
* Starting Zabbix server zabbix_server [ OK ]
а так стартует
2. Статейку бы по триггерам и событиям, а то в этих system.cpu.load [,] десятичное с плавающей запятой, шаг 1- 0 и пр. — черт ногу сломит
читаешь офиц мануал (как китайцы писали) , ставишь русский интерфейс — толку ноль
3. gmail признает клиента заббикса устаревшим и не хочет отправлять письма — кто бы выложил корректную настройку на gmail или mail.ru или яндекс почту
Если не стартует автоматом, вероятней всего есть проблема с правами доступа.
Ваши пункты записал, постараюсь в будущем разобрать и написать статью 🙂
Добрый день!
Ubuntu 14.0.4 Zabbix 3.0.4.
аналогичная проблема с автостартом забикса, после ребута ОС старутет только вручную из под sudo.
с Linux пока на Вы, подскажите куда копать, как пофиксить?
Скорей всего проблема с правами на выполнение файла, нужно проверить )
А можно ли по этой статье ставить zabbix 3.2 на ubuntu 14.04?
Да, скачивайте файлы с пометкой
trusty
.Добрый день. У меня ошибка на шаге: mysql -u zabbix -p zabbix < create.sql
Все делаю от root. Прописал пароль и вылезла след ошибка.
Выдает след ошибку: Error 1045(28000) : Access denied for user 'zabbix@localhost' (Using password :Yes)
Пользователя zabbix вы создали, все действия выполнили как в гайде?)
Добрый вечер!
Присоединяюсь к Николаю. Такая же ошибка.
Иду по инструкции по порядку,
Прошу подсказать, в чем может быть ошибка, и каким путем ее можно решить на данном этапе продвигаясь согласно инструкции к успеху?
За ранее благодарю.
Возможно где-то пропустили или неправильно ввели символ. Такая ошибка возникает, когда невозможно подключится к базе, неверный логин или пароль.
Добрый день. Все делал вроде по инструкции и ошибок не было. zabbix.conf отредактировал, но во вроме настройки через веб почему то выдало ошибки :
Time zone for PHP is not set (configuration parameter «date.timezone»).
PHP bcmath extension missing (PHP configuration parameter —enable-bcmath).
PHP mbstring extension missing (PHP configuration parameter —enable-mbstring).
PHP xmlwriter extension missing.
PHP xmlreader extension missing.
Подскажите куда копать?
с ubuntu работаю не так давно.
Ubuntu 16.04 LTS + Zabbix 3.2.1.1
С ошибкой Time zone for PHP is not set (configuration parameter «date.timezone»). разобрался перезагрузив апачи2 командой sudo service apache2 restart
Для php -v 7
Для php -v 5 просто меняем 7.0 на 5. Должно помочь)
Добрый день! Уважаемые админы, помогите разобраться!
Ошибка [Z3001] connection to database ‘zabbix’ failed: [2002] Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (2)
5063:20170413:124150.053 Cannot connect to the database. Exiting…
МУскюль работает, конфигурации в заббиксе и в скюль соответствуют, перезагружал сто раз уже, и не помогает 🙁
Попробуйте через cli зайти под тем же пользователем. Так же, было бы неплохо увидеть конфиг mysql)