Skip to main content
Установка Zabbix 3.0 в Ubuntu

Установка Zabbix 3.0 в Ubuntu

Установка 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.

Страница установки сервера Zabbix 3.0

Переходим к следующему шагу и сталкиваемся с проблемой, которая заключается в том, что не установлен параметр временной зоны. Исправляем.

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.

Панель управления Zabbix 3.0

 

После установки нужно отредактировать файл /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.

Если у вас появились ошибки или вопросы которые не были раскрыты в этой статье, пишите ваши комментарии  и с вашей помощью я дополню статью.

78 Комментарии “Установка Zabbix 3.0 в Ubuntu

  1. Добавлю к своему предыдущему комментарию:
    не всегда настройки заносятся в /etc/zabbix/zabbix_server.conf
    как что если после запуска сервер говорит что zabbix-server не запущен делаем следующее:
    # vi /etc/zabbix/zabbix_server.conf
    DBHost=localhost
    DBName=zabbix
    DBUser=zabbix
    DBPassword=zabbix

  2. СПАСИБО!!!!!! ВСЕ ВСТАЛО, но пришлось задавать пароль и привелегии чз phpmyadmin, а командами в терминале не получалось!

    1. Если не сложно, пришлите пожалуйста сообщение об ошибке, попробуем разобраться.
      Спасибо.

  3. Кто нибудь сталкивался с проблемой:
    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’.

    1. После установки нужно отредактировать файл /etc/zabbix/zabbix_server.conf, раскомментировав и указав значения:

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

      Нужно найти и убрать знак комментария в строке, после чего, добавить нужное значение.
      После этих манипуляций сохраняем файл и запускаем service zabbix-server start.

  4. дошел до пункта
    > service apache2 reload
    и дальше не смог ничего открыть в Веб. с чем может быть связано?

    1. Выполните пожалуйста команду tail /var/log/apache2/error.log и напишите в комментарий вывод из консоли, попробуем разобраться.

  5. Аплодирую за такую понятную инструкцию.
    Она очень полезна новичкам.
    Отмечу что после того как все условия zabbix удовлетворены(в данном случае установка часового пояса), нужно перезапустить apache сервер.

  6. Подскажите пожалуйста! После установки по умолчанию в веб-интерфейс Zabbix можно войти по адресу 127.0.1.1/zabbix. А как сделать так, чтоб я мог в него войти из любого компьютера в моей локальной сети по адресу например /zabbix или что-то вроде того? То есть вместо локального айпишника был мой. И возможно ли это вообще?

        1. а как сделать так, чтоб я мог войти в заббикс с другого компьютера моей подсети? и можно подробнее?

  7. А как можно установить период обновления карты сетей? Установил заббик, создал всё необходимое, создал карту, нанес все элементы, соединил, но она не обновляется автоматически. обновляется только после того как нажму F5. И вообще можно ли настроить интервал обновления?

  8. Поднял на ubuntu 14.4 LTS x64, линукс вообще ни хрена не знаю! Юзаю линукс около 2-х недель. Статья какраз в тему. Спасибо!

  9. Доброго времени.
    Устанавливал по вашей инструкции все окей. Но на шаге
    gzip -d create.sql.gz у меня пишет gzip -d create.sql.gz
    Хотя файл в директории существует. В чем может проблема???

    1. Немного подправил статью, теперь стало более понятно 🙂
      Выполните команды:
      cd /usr/share/doc/zabbix-server-mysql
      gzip -d create.sql.gz
      mysql -u zabbix -p zabbix < create.sql
      И все заработает :)

        1. По поводу того, что у вас в скриншоте. Вы не выполнили переход в директорию с архивом, сделать это можно выполнив команду cd /usr/share/doc/zabbix-server-mysql, далее распаковываем архив и заливаем его в базу.
          Подключение к базе данных тоже не выполнено, так как скорее всего есть ошибка в создании базы данных или пользователя для нее. Как вариант, можете поставить phpmyadmin и создать базу с пользователем через понятный веб интерфейс

          1. И сновыми командами пробывал ну не идет и все. Все делал точно до точки. И версия даже такая же что ОС что забикса. Именно фигня какая та с mysql. Как можно создать базу именно дл забикса с помощью phpmyadmin

          2. Переходите в «Учетные записи пользователей -> Добавить новую учетную запись пользователя», заполняем форму и ставим галочку «Создать базу данных с таким же именем и предоставить на неё все привилегии.». Далее переходите в созданную базу, жмете «Импорт» и выбираете архив с базой create.sql.gz.

  10. Добрый день! Застрял на ошибке: 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. Ему еще какая то версия нужна или косяк в другом?

      1. Не заработает, уже пробовал. Но косяк приблизительно нашел. В 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 могут возникнуть трудности.
        За статью спасибо, все очень понятно и легко.

        1. Спасибо за комментарий, попробую на днях дополнить статью установкой для версии 16.04. Там немного поменялась начинка, поэтому и не устанавливается.

          1. Установил на версию 16.04 немного поравить ручками добавить в PHP пакетов и все работает

        2. Дополню.
          Действительно, после неудачного запуска 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
          В итоге выполнелать вторая по счету команда.
          Статья супер как для новичка. Спасибо!

          1. Спасибо и вам за комментарий)
            Все верно, это разные пакеты, первый — это сам сервер, второй — это веб-интерфейс.

  11. Спасибо за статью. Очень хорошая. Но у меня возникла ошибка. Не хочет запускаться 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’.

  12. Если у вас как и у меня сервер не начал слушать порт, то мне помогло раскомментировать опцию
    ### Option: ListenPort
    И поставить порт нужный (10051 по дефолту).

    =========
    Статья шикарная. Все заработало сразу как и описано. Спасибо автору и всем кто в комментариях помогал.

  13. Спасибо огромное за статью, я пробовал ставить:
    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

    1. Дело в том, что начиная с версии 16.04 в состав Ubuntu в качестве сервера включен Nginx, а не Apache, и PHP 7. Однако php работает как отдельное приложение, которое генерирует динамический контент и передает его уже веб-серверу. Поэтому у вас и не заработало. Как вариант, можно установить на модуль php на апач — apt-get install libapache2-mod-php5, включить модуль a2enmod php5. Поможет, но версия php будет 5.
      Команды выполнять под суперпользователем.
      Сам это не проверял, информация с головы, если не получится, напишите, разберемся.

    2. Ставьте уже с 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 не забудьте указать:

  14. Отличная статья, но, во избежание дальнейшей конвертации всех таблиц, базу данных все же надо создавать так:
    CREATE DATABASE zabbix character set utf8 collate utf8_unicode_ci

  15. Что бы не было «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 значения не имеет.

    1. Скорее всего вы невнимательно читали 🙂

      Таблицы находятся в архиве который расположен по адресу /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

  16. Коллеги, столкнулся с проблемой, что сервер забикс не запущен.
    localhost:10051
    нашел коммент типа раскомментировать запись, но это не помогло.
    еще нашел, что порт надо вообще изменить с дефолтного 51 на 50
    куда копать?
    Еще в логах все время пишет что ошибка подключения к mysql access denied password no

    1. Запустите сервер и скиньте сюда то, что посыпалось в логи. Ответ мы найдем именно там.
      В файле /etc/zabbix/zabbix_server.conf подключение к базе настроили?

  17. А после перезагрузки Ubuntu, zabbix-server сам стартует или его ручками запускаете?

  18. Версия 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 Вам бы в заббиксе работать

    1. Писал статью на примере очень простого мониторинга скорости на портах коммутатора D-link DGS-3420-28SC — Zabbix и snmp на примере коммутатора D’link. Пример очень упрощен, в будущем постараюсь описать настройку для мониторинга Linux серверов и отдельных служб.

      PS: Спасибо 🙂

  19. 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 или яндекс почту

    1. Если не стартует автоматом, вероятней всего есть проблема с правами доступа.
      Ваши пункты записал, постараюсь в будущем разобрать и написать статью 🙂

  20. Добрый день!
    Ubuntu 14.0.4 Zabbix 3.0.4.
    аналогичная проблема с автостартом забикса, после ребута ОС старутет только вручную из под sudo.
    с Linux пока на Вы, подскажите куда копать, как пофиксить?

      1. Добрый день. У меня ошибка на шаге: mysql -u zabbix -p zabbix < create.sql
        Все делаю от root. Прописал пароль и вылезла след ошибка.
        Выдает след ошибку: Error 1045(28000) : Access denied for user 'zabbix@localhost' (Using password :Yes)

          1. Добрый вечер!
            Присоединяюсь к Николаю. Такая же ошибка.
            Иду по инструкции по порядку,
            Прошу подсказать, в чем может быть ошибка, и каким путем ее можно решить на данном этапе продвигаясь согласно инструкции к успеху?
            За ранее благодарю.

          2. Возможно где-то пропустили или неправильно ввели символ. Такая ошибка возникает, когда невозможно подключится к базе, неверный логин или пароль.

  21. Добрый день. Все делал вроде по инструкции и ошибок не было. 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

    1. С ошибкой Time zone for PHP is not set (configuration parameter «date.timezone»). разобрался перезагрузив апачи2 командой sudo service apache2 restart

  22. Добрый день! Уважаемые админы, помогите разобраться!
    Ошибка [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…
    МУскюль работает, конфигурации в заббиксе и в скюль соответствуют, перезагружал сто раз уже, и не помогает 🙁

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *