Home » Linux » CentOS » Установка и настройка Zabbix 3.4 на CentOS 7

Установка и настройка Zabbix 3.4 на CentOS 7

22 августа 2017 года вышла новая версия бесплатной системы мониторинга, которую я регулярно использую. Я подробно расскажу об установке и начальной настройке Zabbix 3.4 на примере CentOS 7 со скриншотами и пояснениями. В этой версии будут несколько очень интересных и полезных нововведений, так что посмотреть на неё однозначно стоит.

Если у вас есть желание научиться администрировать системы на базе Linux, рекомендую познакомиться с онлайн-курсом «Linux для начинающих» в OTUS. Курс для новичков, для тех, кто с Linux не знаком. Подробная информация.

Обращаю внимание, что данная статья устарела. Вышла новая версия заббикс. Читайте статью по установке и настройке zabbix 4.0. Если вам все же необходима версия именно 3.4, то можете использовать данный материал.

Введение

Кратко о системе мониторинга Zabbix я уже писал в предыдущих своих статьях по установке zabbix 2.4, 3.0, 3.2, поэтому не буду повторяться. О наиболее важных изменениях версии 3.4 я тоже уже рассказывал в материале по обновлению zabbix 3.2 до 3.4, можно ознакомиться.

По большому счету, в версии 3.4 принципиальных изменений в установке и настройке zabbix не произошло, можно пользоваться предыдущими инструкциями. Но для упрощения себе и остальным жизни, я все же напишу подробную инструкцию, где все ссылки будут актуальны, чтобы все можно было повторить в минимально короткий срок простым копипастом. Сам я часто устанавливаю систему мониторинга zabbix, так как считаю ее наиболее функциональной и удобной в использовании.

Приступим к установке и настройке последней версии zabbix 3.4.

Подготовка сервера к установке

Начинаем традиционно с подготовки рабочего окружения. Первым делом вам необходимо установить и настроить сервер CentOS 7. Дальше нам нужно настроить web сервер для работы интерфейса управления. У меня есть подробный материал на тему настройки web сервера на centos 7, можете ознакомиться с ним и настроить внимательно и осмысленно. Далее я буду просто приводить команды установки, без пояснений. В этой статье я буду делать стандартную установку Zabbix на традиционный веб сервер apache + php. Если вы хотите, чтобы ваш заббикс работал на веб сервере nginx + php-fpm, читайте отдельный материал по установке zabbix на nginx и php-fpm.

Начнем с обновления системы:

# yum update

Работа будет проходить на следующей версии CentOS:

Версия системы

Отключаем SElinux. Любителям с ним повозиться, дальше можно не читать. Не люблю споров на тему SElinux. Каждый сам решает для себя в конкретной ситуации, нужен он ему на сервере или нет. Я не вижу смысла с ним заморачиваться на сервере мониторинга в локальной сети.

# mcedit /etc/sysconfig/selinux

Редактируем строку:

SELINUX=disabled

и выполняем команду:

# setenforce 0

Теперь установим mariadb. Ее необходимо ставить отдельно, почему-то она не устанавливается как необходимая зависимость при установке самого сервере zabbix.

На всякий случай упомяну для тех, кто не знает, что такое mariadb и почему мы ставим ее, а не mysql. Mariadb - ответвление mysql. Они полностью совместимы, возможен в любой момент переход с одной субд на другую и обратно. Есть информация, что mariadb пошустрее работает mysql и люди потихоньку перебираются на нее. Разработчики CentOS начиная с версии 7 и Debian, начиная с 9-й предлагают ее как сервер баз данных по-умолчанию.
# yum install mariadb mariadb-server

Запускаем mariadb и добавляем ее в автозагрузку:

# systemctl start mariadb
# systemctl enable mariadb.service

Отрабатываем скрипт первоначальной настройки mysql:

# /usr/bin/mysql_secure_installation

Все подготовительные работы выполнены, двигаемся дальше.

Установка сервера Zabbix 3.4

Подключаем официальный репозиторий 3.4:

# rpm -Uvh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm

Устанавливаем Zabbix сервер с веб-интерфейсом и с базой данных MySQL:

# yum install zabbix-server-mysql zabbix-web-mysql

Дожидаемся окончания загрузки всех зависимостей. После этого нужно создать пользователя и базу данных для мониторинга. Если вы ранее настраивали отдельно web сервер по моей статье, то можете сделать это через phpmyadmin. Если у вас его нет, то делаем все через консоль.

# mysql -uroot -ptopsecret
> create database zabbix character set utf8 collate utf8_bin;
> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabpassword';
topsecret пароль пользователя root mysql, это не системный root
zabpassword пароль пользователя zabbix, у которого полный доступ к базе mysql zabbix

Выходим из консоли mysql, набирая exit.

Теперь импортируем схему БД и начальные данные.

# zcat /usr/share/doc/zabbix-server-mysql-3.4.*/create.sql.gz | mysql -uroot -ptopsecret zabbix

Обращаю внимание на выделенный путь. Если не сработает со звездочкой, то укажите правильный путь в соответствии с устанавливаемой в данный момент времени версией.

Более подробную информацию о настройке сервера баз данных mysql для работы заббикс сервера, а так же информацию по оптимизации нагруженной базы данных смотрите в отдельной статье - очистка, оптимизация, настройка mysql базы Zabbix

Теперь редактируем файл конфигурации сервера заббикс. Прописываем данные для подключения к БД.

# mcedit /etc/zabbix/zabbix_server.conf

Изменяем строки:

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

Этих минимальных настроек достаточно, для работы сервера. Но я рекомендую еще увеличить параметр Timeout. Он отвечает за время ожидания ответа от агента, snmp устройства или внешней проверки. Иногда этого бывает недостаточно. В частности, когда используется какой-то скрипт, который долго выполняется, для получения метрики. Поставьте секунд 10.

Запускаем zabbix и добавляем в автозагрузку.

# systemctl start zabbix-server
# systemctl enable zabbix-server

Проверяем лог файл на наличие ошибок.

# cat /var/log/zabbix/zabbix_server.log

Проверка работы zabbix сервера

Если у вас примерно так же, значит все в порядке. Сервер штатно запустился и готов к работе.

Для продолжения настройки сервера мониторинга, нам нужно зайти в web интерфейс. Перед этим отредактируем файл конфигурации web сервера. Открываем конфиг и раскомментируем одну строку, изменив ее под свой часовой пояс.

# mcedit /etc/httpd/conf.d/zabbix.conf

php_value date.timezone Europe/Moscow

Сохраняем файл. Теперь запускаем httpd и добавляем его в автозагрузку.

# systemctl start httpd
# systemctl enable httpd

Можно заходить на веб интерфейс по адресу http://192.168.1.25/zabbix, где 192.168.1.25 ip адрес сервера, где устанавливаем и настраиваем мониторинг заббикс.

На этом этапе важно проверить настройки firewalld. Если вы его не настраивали и не отключали, то скорее всего по указанному адресу у вас ничего не откроется. В данной статье я не буду отвлекаться на настройку фаервола, это тема отдельного разговора. Подробно вопрос настройки iptables я рассмотрел отдельно. Либо настройте firewalld, либо просто отключите. В приведенной ссылке рассказано, как это сделать.

Открываем в браузере web интерфейс zabbix. Нас встречает страница приветствия. Если у вас то же самое, вы на верном пути.

Начальная страница установки zabbix 3.4

Жмем Next step и попадаем на страницу проверок. Если все делали точно по инструкции, то все проверки у вас будут пройдены.

Проверка требований окружения

Двигаемся дальше и указываем параметры для подключения к mysql. Данные те же, что мы указывали ранее при создании БД и пользователя.

Настройка подключения к БД

На следующем этапе надо указать адрес сервера и порт, на котором он будет работать. Оставляем значения по-умолчанию.

Дополнительные параметры сервера мониторинга

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

Проверка настроек установки

Если поучили это сообщение, то поздравляю, установка сервера мониторинга Zabbix 3.4 закончена.

Установили сервер заббикс

Нажимаете Finish и попадаете на страницу логина в систему. Данные по умолчанию следующие:

Пользователь Admin
Пароль zabbix

Нас встречает голая панель управления, так как никаких параметров мы не наблюдаем и не имеем ни одного объекта сбора данных.

Dashboard панели управления zabbix

Сбор данных мы настроим чуть позже, установив zabbix агент на этот же сервер. А пока сделаем некоторые минимальные и необходимые настройки на сервере.

Настройка email оповещений

В версии 3.4 (появилась с версии 3.0) есть настройка уведомлений с авторизацией по smtp. Раньше для реализации такой очевидной и необходимой функции приходилось пользоваться сторонними программами и скриптами. Я писал отдельно об этом - отправка email уведомлений с авторизацией smtp. Теперь все это в прошлом. Настроим отправку уведомлений через web интерфейс.

Идем в раздел Administration -> Media types и нажимаем на Email.

Настройка e-mail оповещений

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

Параметры почтового сервера

Это мы настроили адрес отправки. Теперь нужно пользователю добавить адрес для получения. Для этого идем в Administration -> Users, выбираем пользователя Admin.

Настройка уведомлений пользователя

Идем в закладку Media и жмем add.

Добавление почтового адреса

Указываем почтовый ящик получателя

Указание адреса получателя оповещений

Жмем Add, затем Update. Дальше нужно активировать отправку уведомлений по событиям. Для этого идем в Configuration -> Actions и жмем на Disabled, чтобы она стала Enabled.

Активация рассылки уведомлений

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

Если вам нужны оповещения в telegram, то читайте отдельную статью на эту тему. Так же рекомендую ознакомиться с материалом на тему настройки повторяющихся уведомлений в заббиксе. Для многих триггеров может оказаться очень полезной возможностью. Например, можно каждый день напоминать об окончании времени делегирования домена, пока он не будет продлен.

Установка zabbix agent на CentOS 7

Добавим теперь хотя бы одного агента мониторинга, чтобы проверить работу системы. Устанавливать будем на этот же сервер. Делается это просто:

# yum install zabbix-agent

Для работы с сервером, который установлен локально на этой же машине, больше никаких настроек не надо делать. Если же вы будете устанавливать zabbix agent на удаленную машину, то в файле конфигурации агента /etc/zabbix/zabbix_agentd.conf нужно будет задать следующие параметры:

# mcedit /etc/zabbix/zabbix_agentd.conf
Server=192.168.1.25
ServerActive=192.168.1.25
Hostname=srv10 # имя вашего узла мониторинга, которое будет указано на сервере zabbix

Запускаем агент и добавляем в автозагрузку:

# systemctl start zabbix-agent
# systemctl enable zabbix-agent

Проверяем лог файл.

# cat /var/log/zabbix/zabbix_agentd.log

21197:20150912:212555.935 no active checks on server [127.0.0.1:10051]: host [Zabbix server] not monitored

У меня там следующая ошибка. Я знаю с чем она связана. На сервере по-умолчанию уже добавлен локальный host для мониторинга, но он отключен. Чтобы его включить, идем в раздел Configuration -> Hosts и активируем Zabbix server нажатием на Disabled, чтобы он стал Enabled.

Активация хоста

Можно подождать, либо вручную перезапустить агент, чтобы сразу проверить изменения:

# systemctl restart zabbix-agent

Для надежности, проверяем еще раз лог файл на наличие ошибок. Их быть не должно. Агент заработал и начал отправлять данные на сервер. Чтобы проверить поступление данных, надо подождать пару минут и идти в раздел Monitoring -> Latest data. Выбрать там наш единственный хост и нажать Apply.

Последние полученные метрики с хоста

Видно, что данные уже начали поступать.

Теперь попробуем остановить агент и проверить, придет ли уведомление на почту. Идем в консоль и выключаем агента:

# systemctl stop zabbix-agent

Ждем минимум 5 минут. Именно такой интервал указан по-умолчанию для срабатывания триггера на недоступность агента. После этого проверяем Dashboard, виджет Problems.

Проверка отправки уведомлений

При наведении мышки на слово Done в столбце Actions вы увидите информацию о том, что оповещение по email было отправлено пользователю Admin. На почте у вас будет письмо:

Текст уведомления

После возобновления работы агента, вы еще раз получите уведомление о том, что он теперь доступен.

Установка zabbix агент на Windows и настройка мониторинга

Теперь для полноты картины добавим к серверу один агент, установленный на windows машину и настроим ее мониторинг. Для этого идем на страницу загрузок http://www.zabbix.com/download.php и скачиваем самый последний агент для Windows. Все агенты находятся в разделе Zabbix pre-compiled agents. Прямая ссылка на последнюю версию на момент написания статьи - zabbix_agents_3.4.0.win.zip

Распаковываем архив. Создаем на диске С: папку zabbix и купируем туда следующие файлы:

  • zabbix_agentd.exe
  • zabbix_get.exe
  • zabbix_sender.exe
  • zabbix_agentd.win.conf

Исполняемые файлы берете той разрядности, какая у вас в системе. В исходном архиве есть как x32 так и x64. Дальше открываем командную строку с правами администратора и выполняем следующую команду для установки zabbix agent на windows:

c:/zabbix/zabbix_agentd.exe --config c:/zabbix/zabbix_agentd.win.conf --install

Установка zabbix agent в windows

Открываем файл zabbix_agentd.win.conf любым текстовым редактором и изменяем следующие параметры:

Server=192.168.1.25
ServerActive=192.168.1.25
Hostname=win7-01

Теперь открываем оснастку со службами, ищем службу с именем Zabbix agent и запускаем ее.

Запуск службы Zabbix agent

Не забываем создать разрешающее правило в «Брандмауэре Windows». Брандмауэр Защитника Windows – Дополнительные параметры – Правило для входящих подключений – Создать правило.

  • Тип правила: Для порта;
  • Протоколы и порты: Протокол TCP; Определенные локальные порты: 10050;
  • Действие: Разрешить подключение;
  • Профиль (ставим галочки): Доменный, Частный, Публичный;
  • Имя: Zabbix Agent;

Чтобы работал мониторинг windows машины, нужно добавить на сервер мониторинга host с таким же hostname, что мы указали в конфиге агента. Для этого идем в web панель, открываем раздел Configuration -> Hosts и жмем Create host.

Добавление хоста в системе мониторинга

На первой вкладке указываем имя хоста, такое же, как на клиенте, добавляем в любую существующую группу и задаем ip адрес компьютера.

Параметры хоста

Потом переходим на вкладку Templates и нажимаем Select. Выбираем шаблон Template OS Windows и жмем маленькую ссылку add, затем большую.

Установка шаблона хоста

Новый host мониторинга добавлен, осталось подождать несколько минут свежих данных. Проверить их можно там, где и раньше, в Latest data, выбрав новый хост.

Поступление данных от windows agent

На этом установка и настройка мониторинга windows с помощью zabbix agent закончена. Можно добавлять новые компьютеры с разными версиями windows. Одна и та же версия агента подходит для всех, и десктопных и серверных систем.

Заключение

Не понравилась статья и хочешь научить меня администрировать? Пожалуйста, я люблю учиться. Комментарии в твоем распоряжении. Расскажи, как сделать правильно!

Несмотря на то, что новые версии zabbix выходят достаточно часто, материалы по настройке мониторинга различных систем и сервисов не устаревают и остаются актуальным для самых новых релизов. Вот пример мониторинга служб и сервисов, приведенных на моем сайте:

Команда заббикс внимательно следит за обратной совместимостью своих продуктов. Благодаря этому переход на новые версии проходит безболезненно. Нет необходимости перенастраивать или исправлять старые наработки. В новых версиях только добавляется функционал, старый чаще всего не претерпевает изменений, им можно дальше пользоваться.

На этом установка и базовая настройка сервера мониторинга zabbix 3.4 завершена. Советы, замечания, исправления прошу оставлять в комментариях.

Помогла статья? Подписывайся на telegram канал автора

Анонсы всех статей, плюс много другой полезной и интересной информации, которая не попадает на сайт.

Видео

Привожу видеоролик по установке и настройке предыдущей версии zabbix. Принципиально ничего не изменилось, кроме версий установленных программ.

 

Если у вас есть желание научиться администрировать системы на базе Linux, но вы с ними никогда не работали и не знакомы, то рекомендую начать с онлайн-курса «Linux для начинающих» в OTUS. Курс для новичков, для тех, кто с Linux не знаком. Цена за курс минимальная (символическая). Информация о курсе и цене.

Автор Zerox

Владимир, системный администратор, автор сайта. Люблю настраивать сервера, изучать что-то новое, делиться знаниями, писать интересные и полезные статьи. Открыт к диалогу и сотрудничеству. Если вам интересно узнать обо мне побольше, то можете послушать интервью. Запись на моем канале - https://t.me/srv_admin/425 или на сайте в контактах.

130 комментариев

  1. Подскажите имеется zabbix 4.4.10
    Нужно настроить проверку веса страницы то есть если вес страницы равен там 54 кб то алерт , потому что страница не загрузилась
    Хотелось бы узнать как можно решить такую проблему
    ,?
    Простыми веб чеками не получается это сделать

  2. Александр

    Здравствуйте, Моя проблема в агенте я скачиваю с сайта https://www.zabbix.com/ru/download_agents?version=5.0+LTS&release=5.0.2&os=Windows&os_version=Any&hardware=i386&encryption=No+encryption&packaging=Archive агента, устанавливаю C:\zabbix\bin\zabbix_agentd.exe --config C:\zabbix\conf\zabbix_agentd.conf --install запускаю, в итоге я не могу ничего получить на забикс. ЗАбикс его видит агента на винде. Что делать ??? куда смотреть.
    PS: Агент на забикс поставил там всё работает. И IP в конфиги правил, 3х позициях как в вашей инструкции.

  3. Алексей

    В данном случае стоит поискать файл zabbix_server.conf

    find -name zabbix_server.conf

    Скорее всего есть еще одна копия єтого фала к тоторой zabbix_server обращается.

    В моем случае это так и было

  4. Александр А

    Добрый день!
    Делал все по инструкции.

    Проверка логов показала ошибку:

    Connection to database 'zabbix' failed: [1045 ] Access denied for user 'zabbix'@'localhost' (using password: NO)

    Не могу понять. Пароли стоят. А все равно ошибка. Помогите плиз!

  5. Здравствуйте, в чем может быть проблема мониторинга к примеру системы где весит база данных.
    Клиент там настроил, отключил FIREWALL.
    конфиг проверял:
    SERVER = IP zabbix server
    SERVER ACTIVE = 127.0.0.1
    Hostname = верно так же указан

    Windows Server так же не могу мониторить, в чем может быть проблема? может что-то еще нужно отключить? всё делал по статье, но без результата.
    Мониторить сам zabbix server могу без проблем.

  6. Александр

    Добрый, а вы не сталкивались с переносом zabbix сервера? Уже есть настроенный 3.4 zabbix на ubuntu 14, есть новый zabbix 3.4 CentOs7, собственно в документация скудная, хотелось бы перенести хосты с группами и график сети, но вот как это правильно сделать пока ещё не понял, базу sql переносить целиком я думаю не есть хорошо

    • Я бы попробовал накатить дамп. Не вижу в этом особых проблем. Если дамп не хочется, то хосты и шаблоны можно экспортировать, а потом импортировать. Все остальное не проверял.

      • Александр

        Дамп базы не хочу по причине того что zabbix был обновлен с 3.0 до 3.2, потом до 3.4 и вылезли кое какие глюки... В целом так и сделал, экспорт шаблонов, узлов и т.д., в целом геморрой конечно тот ещё, но за пол дня всё восстановил :)

  7. Станислав

    Спасибо за статью. Все работает кроме отправки сообщений на почту. Zabbix выдает ошибку Couldn't connect to server: Failed to connect to 2a00:1450:4010:c0b::6c: Network is unreachable. Я так понимаю он пробует по ipv6 отправлять. Как заставить его это делать по ipv4? Возможно нужно еще дополнительно как то настраивать postfix через который Zabbix пытается отправить сообщение?

    • Думаю, проще всего отключить ipv6, если вы им не пользуетесь:
      https://serveradmin.ru/nastroyka-seti-v-centos/#_ipv6_CentOS_7

      • Аноним

        В Centos ipv6 я отключил, но zabbix по прежнему использует как ipv4 так и ipv6. Как отключить ipv6 в zabbix?

      • Станислав

        Вот вывод команды netstat
        [root@zabbix ~]# netstat -tulnp
        Active Internet connections (only servers)
        Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
        tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1116/master
        tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 1067/zabbix_server
        tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 1063/mysqld
        tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 820/httpd
        tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 821/sshd
        tcp6 0 0 :::10051 :::* LISTEN 1067/zabbix_server
        tcp6 0 0 :::22 :::* LISTEN 821/sshd
        udp 0 0 127.0.0.1:323 0.0.0.0:* 592/chronyd
        udp6 0 0 ::1:323 :::* 592/chronyd

        • Так видно же, что ipv6 не отключен :)

          • Станислав

            Он не отключен на chronyd ssh и zabbix, chronyd и ssh меня не волнуют, но можно и на них ради чистоты эксперимента отключить. Как на zabbix отключить?

          • Станислав

            Вот только zabbix остался. Как у него ipv6 отключить?
            [root@zabbix ~]# netstat -tulnp
            Active Internet connections (only servers)
            Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
            tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1104/master
            tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 990/zabbix_server
            tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 1062/mysqld
            tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 823/httpd
            tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 815/sshd
            tcp6 0 0 :::10051 :::* LISTEN 990/zabbix_server
            udp 0 0 127.0.0.1:323 0.0.0.0:* 601/chronyd

            • Не знаю, я не проверял. Попробуйте в SourceIP= явно указать IP адрес, который будет слушать сервер.

              • Станислав

                Спасибо за помощь в итоге все заработало. Перенастроил smtp с gmail на свой почтовый сервер и все взлетело.

  8. Хорошая информация, но уже морально устаревшая. Как насчет развертывания zabbix через докер?
    И сам zabbix уже сам по себе морально устарел.

    Как насчет новых статей по развертыванию приложений на базе микросервисной архитектуры? Devops там, kubernetes, docker?
    Планируются статьи про следующий этап развития систем мониторинга, поддерживающиих контейнеры и оркестраторы, таких как например Prometheus? Теперь эта стандарт по сути это стандарт де-факто в современной ит-инфраструктуре... zabbix усе, сдох бобик.

    • Сбертеху расскажите про моральное устаревание заббикса - https://habr.com/company/sberbank/blog/420731/
      Зачем его ставить в докере? Какой в этом смысл?

      • В докере - легко обновлять, все зависимости в одном контейнере. Легко устанавливать.
        Сбербанк не лидер в ит, а отсталый аутсайдер. Так что ссылаться на него не стоит. Весь прогрессивный мир уже на микросервисной архитектуре и Prometheus.
        Но хозяин барин. Кто-то вот до сих пор на Windows 2000 сервера поднимает. И ничего. Работает. Другой вопрос - как.

        • Какие сложности в установке и обновлении заббикса без докера? Не надо пихать докер туда, где он не нужен.

          Сбербанк, если что, ТОП 1 ИТ компания России, на минуточку. Если не нравится Сбербанк, то, к примеру, на днях о своем заббиксе упомянул один из админов яндекс.денег - https://habr.com/company/yamoney/blog/419041/

          Заявляя о неактуальности заббикса вы просто проявляете свое невежество. Я хорошо знаю заббикс, изучаю его и слежу за его развитием. На сегодняшний день это самая распространенная система мониторинга.

          Микросервисная архитектура это только часть ИТ, которая используется там, где это нужно и актуально. Но не везде. И никогда не будет использоваться везде. Это просто один из инструментов, который часто засовывают туда, где он не нужен.

        • Это разные инструменты, которые решают разные задачи. Зачем их сравнивать в лоб? Прометеус это мониторинг микросервисной архитектуры. Заббикс - мониторинг общего назначения.

          • Не совсем верно.

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

            Это не правильное разделение. Что вот заббикс - общего назначения. А для микросервисов Прометей. То что вы называете "общее назначение" - это устаревший подход к системному администрировавнию (в более широком понимании - деплою приложений и сервисов)

            Я привел вам статью, где описывается революция - переход от машин к сервисам. Т.е. раньше мы мыслили категориями машин (физических/виртуальных) серверов. А теперь произошел качественный скачек. Уже мыслят другими категориями. Сервисами. Т.е. создается парк из одинаковых "глупых" машин, на которых стоит ну грубо говоря только Докер. Эти машины с докерами объединяются в кластеры, и управляются оркестраторами, который уже запускает нужный сервис (например веб-сервер с вордпресс) на наиболее свободной машине. Если она вышла из строя, он этот же самый контейнер запускает на другой машине, таким образом достигается отказоустойчивость и доступность.
            Это будущее деплоия и системного администрирования. Если сейчас где-то создается какая-то ИТ-инфраструктура, она создается именно по таким принципам. А не "вот берем серверм, ставим Nngix".

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

            Нет ничего такого, с чем не справился бы Прометей, как система мониторинга. Он может мониторить как микросервисную архитектуру, так и обычные сервера. А вот забикс не может. Ибо морально устарел в этом плане.

            • Я прекрасно знаю, что такое микросервисы, как они строятся и работают. Они не будут везде, так как не все задачи решаются микросервисной архитектурой. Более того, у нее есть и существенные недостатки. Но я не хочу тут все это обсуждать.

              Мы все уже были в мейнфреймах, потом на персональных компьютерах, потом на терминалах, потом на VDI и т.д., и все это вместе существует и развивается. Лично мое мнение, микросервисы на докере, коих сейчас большинство, со временем уйдут в небытие, потому что у докера куча недостатков и неудобств, а выезжает он в основном за счет хайпа и рекламы. Его пихают везде, где только можно. Предложение поставить заббикс сервер в докере это то, о чем я говорю. Но в этом нет никакого практического смысла.

              Поживем-увидим, как все будет. Предлагаю обсуждение микросервисов прекратить.

      • Ну и где-то с 2016 года произошла революция в деплое, теперь это называется devops. Это вообще изменение идеологии. Во многом это касается и деятельности сисадмина. Вкратке об этой революции здесь
        Переход от машин к услугам https://grafana.com/blog/2016/01/12/evolving-from-machines-to-services/

    • Просто для справки про бобика, который сдох.
      1С использует zabbix - https://habr.com/company/1c/blog/422903/
      КРОК использует zabbix - https://habr.com/company/croccloudteam/blog/422905/
      В этих статьях вскользь упоминают заббикс, что подтверждает его использование.

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

  9. Прошу автора немного дополнить раздел данной статьи «Установка zabbix-агент на Windows и настройка мониторинга» перед абзацем: «Чтобы работал мониторинг Windows-машины...» следующим текстом:
    Не забываем создать разрешающее правило в «Брандмауэре Windows». Брандмауэр Защитника Windows – Дополнительные параметры – Правило для входящих подключений – Создать правило.

    Тип правила: Для порта;
    Протоколы и порты: Протокол TCP; Определенные локальные порты: 10050;
    Действие: Разрешить подключение;
    Профиль (ставим галочки): Доменный, Частный, Публичный;
    Имя: Zabbix Agent;

    Для новичков будет в самый раз :)
    Спасибо!

  10. Пардон, понял из-за чего. В версии 10.3 стартовать нужно не службу mariadb, а mysql.service его же кидать в загрузка и настраивать через него а не через mariadb

  11. Приветствую!
    Захотелось поставить заббикс сразу на mariadb версии 10.3, но столкнулся с проблемой старта. Смотрите что делал:
    Дошел до установки mariadb в этом мануале и не стал его ставить, чтобы потом не обновлять до последней версии, а захотел поставить сразу 10.3 по инструкции "Очистка, оптимизация, настройка mysql базы Zabbix" Добавил repo все как показано и запустил установку как: "yum install MariaDB-server MariaDB-client", а не как в этом мануале: "yum install mariadb mariadb-server" установка прошла нормально, но стартовать сервис через systemctl start mariadb не удалось выдается ошибка что сервис не найден. Я подумал может из-за того что не указал при установке просто mariadb, а указал сервер и клиент, но при попытке поставить yum install mariadb, выдалась ошибка что уже есть 10.3
    Как можно стартануть службу с чистой установкой 10.3 ?

  12. Алексей

    Добрый вечер.
    Zerox, спасибо за отличную статью - при внимательном использовании все работает с первого раза.
    Вопрос: что нужно сделать, чтобы коллеги "снаружи", зная мой внешний ip, смогли подключится к панели мониторинга сервера zabbix (server_host/zabbix)? Сервер zabbix расположен за пограничным роутером mikritik.

    • Пробросить на роутере 80-й порт на сервер с zabbix.

      • Алексей

        Маршрутизатор поднят на CentOS7. Порт 80 на сервер с zabbix пробросил. Эффекта нет, к сожалению.

        • Что значит нет эффекта? Заббикс это обычное web приложение на php. Для его работы достаточно пробросить 80-й порт веб сервера. Если не работает, значит порт проброшен неправильно. Какая ошибка хоть?

          • Алексей

            Спасибо за ответы.
            Ошибку нашел (лежала на поверхности) - не до конца настроил зоны.

  13. Аноним

    Ошибка: Пакет: php-ldap-5.4.16-45.el7.x86_64 (base)
    Необходимо: php-common(x86-64) = 5.4.16-45.el7
    Установлено: php-common-5.6.36-1.el7.remi.x86_64 (@remi-php56)
    php-common(x86-64) = 5.6.36-1.el7.remi
    Доступно: php-common-5.4.16-45.el7.x86_64 (base)
    php-common(x86-64) = 5.4.16-45.el7

    • Ставите из стандартного репозитория, или подключили репу заббикса? В ошибке четко сказано, что не получается поставить версию php5.4, потому что уже стоит 5.6. Хотя не понятно, почему не устраивает 5.6.

  14. Алексей

    Привет, коллеги. Первый раз устанавливаю Заббикс, и вот уже при подключение базы пишет ошибку.
    Что может быть?
    Cannot connect to the database.
    The frontend does not match Zabbix database.

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

  15. Запущена. страница localhost не открывается. httd запущена.

  16. Добрый вечер! После перезагрузги вэб заббикса не открывается - лог - [Z3001] connection to database 'zabbix' failed: [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

  17. Добрый вечер! Перезапустил сервер и вэб забиикса не открывается. Лог - [Z3001] connection to database 'zabbix' failed: [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2). Подскажите в чем проблема?

  18. Алексей

    Спасибо за статью.

    Просьба подсказать как снимать метрики с видекарт через также Nividia-smi, если Zabbix клиент установлен на Ubuntu 16?
    Если на Ubuntu установлена видеокарта Nvidia и необходимо снимать метрики температуры карты, скорость вращения кулера?

    Что в конфиг-файле клиента на Ubuntu нужно прописать?

  19. Hi guys!
    After command "sudo mysql -uroot -ptopsecret" I have error:

    - ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

    Zerox, help me, please

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

    • Чтобы Zabbix сервер работал в CentOS 7.4, необходимо скачать этот конфигурационный файл (модуль для SELinux) https://support.zabbix.com/secure/attachment/53320/53320_zabbix_server_add.te
      А затем выполнить следующие комманды
      yum install policycoreutils-python
      checkmodule -M -m -o zabbix_server_add.mod zabbix_server_add.te
      semodule_package -m zabbix_server_add.mod -o zabbix_server_add.pp
      semodule -i zabbix_server_add.pp

      Взято отсюда https://support.zabbix.com/browse/ZBX-12567

    • Я же не запрещаю никому. В моих кейсах мне не нужен selinux. Если он вам нужен - пользуйтесь. Настроить его с заббиксом дело простое.

      • Конечно хозяин барин. Просто в профессиональной среде отключение SElinux рассматривается как некоторый непрофессионализм, даже нубство я бы сказал. Без всякхи обид конечно.

        • Тут я ни на что не претендую. Я искренне не понимаю, зачем мне selinux, который будет ставить палки в колеса во всех скриптах автоматизации, на приватном сервере мониторинга в локальной сети. У меня достаточно типовая работа и я часто делаю одно и то же. Все рабочие процессы я стараюсь автоматизировать и упростить, чтобы делать меньше движений. Использование в данном случае лишних инструментов -> большая трата времени -> меньше заработанных денег. Если меня кто-то попросит настроить заббикс с SElinux и заплатит за это, я запросто сделаю.

  21. Андрей

    Уважаемый Zerox, спасибо за отличный мануал.
    Есть вопрос:
    Сервер стоит в ЦОД с внешним IP. На сервере развернут Zabbix 3.4
    Имеем 3 офиса в разных частях города с 10-30 ПК.
    Единого VPN туннеля между ними нет и не планируется. Необходимо мониторить каждый ПК внутри этих офисов.
    Каждый офис имеет свой внешний IP. Как сделать так, что бы Zabbix видел ПК? У них же нет своего выделенного IP адреса.
    Заранее спасибо за ответ.

    • Раз есть один ip адрес внешний на всех, на нем придется прокидывать порты. В принципе, ничего особенного и сложного. Вполне будет работать. Для каждого компьютера пробрасываете один любой внешний порт на порт 10050 локального компьютера. На сервере заббикса указываете в свойствах хоста внешний ip адрес офиса и внешний порт, с которого будет проброс на конкретный компьютер. Это первый вариант.

      Второй вариант это компьютеры будут сами отправлять информацию на сервер. Это называется активный режим работы агента. По-умолчанию все агенты работают в пассивном режиме, но нет никаких проблем это изменить самому.

  22. Валерий

    Не проходит проверка установки на веб-интерфейсе, а именно на :
    Check of pre-requisites:
    –Minimum required limit on execution time of PHP scripts is 300 (configuration option "max_execution_time").
    PHP option "max_execution_time" 60 300 Fail

    хотя значение параметра max_execution_time установлено в 300 и в php.ini
    max_execution_time = 300

    и в /etc/httpd/conf.d/zabbix.conf

    php_value max_execution_time 300

    апач после внесения изменений перестартовал

    Создал info.php, положил в корень сайта, проверил что выдает, действительно:
    Core
    Directive Local Value Master Value
    max_execution_time 60 300

    путь к php.ini выдал правильный, /etc/php.ini, его и редактировал
    -

    Подскажите плз, откуда php еще может брать значение Local Value 60 для max_execution_time?

    • Валерий

      Сорри, нашел причину, в настройке одного из сайтов было прописано в конфиге, поэтому и не проходила проверка.

  23. Жирафик-Рафик

    При выполнении скрипта "mysql_secure_installation" появляется ошибка:
    error:Enter current password for root (enter for none):
    ERROR 1045 (28000): Access denied for user 'root'@'localhost'
    (using password: YES)

    Решение:
    # mysql -u root
    FLUSH PRIVILEGES;
    SET PASSWORD FOR root@'localhost' = PASSWORD('пароль');
    UPDATE mysql.user SET Password=PASSWORD('пароль') WHERE User='root';
    quit;

  24. Спасибо за ответ, но разобрался сам. Дело в том, что систему устанавливаю на виртуальной машине VMWare, на которой 2 сетеых интерфейса. Один - локалхост, для локальной сети с компьютерами, которые будут мониториться, второй NAT для выхода в интернет. По непонятным причинам вместе они работают плохо, нужно что то одно. Поэтому когда отключил NAT и перезагрузил, все заработало и работает нормально. Это учебная настройка, не продакшн, так что все нормально.

    Также добавил мониторинг активных устройств, это важно, можете включить это в статью.

    1) Устанавливаем сетевые утилиты

    #yum -y install net-snmp net-snmp-utils

    2) Редактируем файл конфигурации:

    #cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.orig

    #vim /etc/snmp/snmpd.conf

    вот его конфигурация:

    # Map 'idv90we3rnov90wer' community to the 'ConfigUser'
    # Map '209ijvfwer0df92jd' community to the 'AllUser'
    # sec.name source community
    com2sec notConfigUser default Brotherhood
    com2sec ConfigUser default Brotherhood
    com2sec AllUser default Brotherhood
    # Map 'ConfigUser' to 'ConfigGroup' for SNMP Version 2c
    # Map 'AllUser' to 'AllGroup' for SNMP Version 2c
    # sec.model sec.name
    group ConfigGroup v2c ConfigUser
    group AllGroup v2c AllUser
    # Define 'SystemView', which includes everything under .1.3.6.1.2.1.1 (or .1.3.6.1.2.1.25.1)
    # Define 'AllView', which includes everything under .1
    # incl/excl subtree
    view SystemView included .1.3.6.1.2.1.1
    view SystemView included .1.3.6.1.2.1.25.1.1
    view AllView included .1
    # Give 'ConfigGroup' read access to objects in the view 'SystemView'
    # Give 'AllGroup' read access to objects in the view 'AllView'
    # context model level prefix read write notify
    access ConfigGroup "" any noauth exact SystemView none none
    access AllGroup "" any noauth exact AllView none none

    3) Перезапуск службы и в автозагрузку

    #service snmpd restart

    #сhkconfig snmpd on

    4) Открываем порты snmp 161 и 162 в iptables

    #vim /etc/sysconfig/iptables

    iptables -I INPUT -p tcp --dport 161 -m state --state NEW -j ACCEPT

    iptables -I INPUT -p tcp --dport 162 -m state --state NEW -j ACCEPT

    5) Перегружаем iptables

    #systemctl restart iptables

    6) Настройка активного устройства (cisco)

    conf t
    int fa0/0
    ip add 192.168.1.1 255.255.255.0
    no shut

    snmp-server community Brotherhood ro
    snmp-server contact Brother
    snmp-server location Brothers

    7) Проверка snmp

    snmpwalk -v 2c -c Brotherhood -O e 127.0.0.1
    snmpwalk -v 2c -c Brotherhood -O e 172.16.10.1

    8) Далее в Zabbix узел сети добавляется точно также, только опрос
    нужно делать не по ip адресу а по SNMP

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

    А не могли бы Вы при наличии свободного времени написать подробную статью об установке и настройке системы резервного копирования Bareos? Дело в том, что все статьи которые есть об этом, заканчиваются на установке. Это несложно, а вот сам процесс бэкапа либо не описан, либо практически ничего не понятно. Cистема эта весьма интересная. Заранее спасибо, с уважением, Петр.

  25. Здравствуйте. Огромное спасибо за статью. Все делал строго по ней. Но к сожалению возникли следующие проблемы.

    1) Если обновить php с 5.4 до 5.6 то вообще ничего не устанавливается

    2) Если оставить php 5.4 то устанавливается и все работает, но по веб-интерфейсу к zabbix подключиться не удается

    По любому из этих адресов - http://127.0.0.1/zabbix http://localhost/zabbix http://192.168.1.25/zabbix

    пишет - "Not Found The requested URL /zabbix was not found on this server."

    По адресам - http://127.0.0.1 http://localhost http://192.168.1.25

    пишет как и должно быть по инструкции - Апач настроен!

    Состояние службы zabbix-server

    [root@centos7-test piter]# systemctl status zabbix-server
    ● zabbix-server.service - Zabbix Server
       Loaded: loaded (/usr/lib/systemd/system/zabbix-server.service; enabled; vendor preset: disabled)
       Active: active (running) since Sun 2018-01-21 12:38:35 MSK; 13min ago
     Main PID: 3548 (zabbix_server)
       CGroup: /system.slice/zabbix-server.service
               ├─3548 /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf
               ├─3561 /usr/sbin/zabbix_server: configuration syncer [synced configuratio...
               ├─3562 /usr/sbin/zabbix_server: alerter #1 started
               ├─3563 /usr/sbin/zabbix_server: alerter #2 started
               ├─3564 /usr/sbin/zabbix_server: alerter #3 started
               ├─3565 /usr/sbin/zabbix_server: housekeeper [startup idle for 30 minutes]...
               ├─3566 /usr/sbin/zabbix_server: timer #1 [processed 0 triggers, 0 events ...
               ├─3567 /usr/sbin/zabbix_server: http poller #1 [got 0 values in 0.000528 ...
               ├─3568 /usr/sbin/zabbix_server: discoverer #1 [processed 0 rules in 0.000...
               ├─3569 /usr/sbin/zabbix_server: history syncer #1 [synced 0 items in 0.00...
               ├─3570 /usr/sbin/zabbix_server: history syncer #2 [synced 0 items in 0.00...
               ├─3571 /usr/sbin/zabbix_server: history syncer #3 [synced 0 items in 0.00...
               ├─3572 /usr/sbin/zabbix_server: history syncer #4 [synced 0 items in 0.00...
               ├─3573 /usr/sbin/zabbix_server: escalator #1 [processed 0 escalations in ...
               ├─3574 /usr/sbin/zabbix_server: proxy poller #1 [exchanged data with 0 pr...
               ├─3575 /usr/sbin/zabbix_server: self-monitoring [processed data in 0.0000...
               ├─3576 /usr/sbin/zabbix_server: task manager [processed 0 task(s) in 0.00...
               ├─3577 /usr/sbin/zabbix_server: poller #1 [got 0 values in 0.000003 sec, ...
               ├─3578 /usr/sbin/zabbix_server: poller #2 [got 0 values in 0.000003 sec, ...
               ├─3579 /usr/sbin/zabbix_server: poller #3 [got 0 values in 0.000003 sec, ...
               ├─3580 /usr/sbin/zabbix_server: poller #4 [got 0 values in 0.000005 sec, ...
               ├─3581 /usr/sbin/zabbix_server: poller #5 [got 0 values in 0.000004 sec, ...
               ├─3582 /usr/sbin/zabbix_server: unreachable poller #1 [got 0 values in 0....
               ├─3583 /usr/sbin/zabbix_server: trapper #1 [processed data in 0.000000 se...
               ├─3584 /usr/sbin/zabbix_server: trapper #2 [processed data in 0.000000 se...
               ├─3592 /usr/sbin/zabbix_server: trapper #3 [processed data in 0.000000 se...
               ├─3593 /usr/sbin/zabbix_server: trapper #4 [processed data in 0.000000 se...
               ├─3594 /usr/sbin/zabbix_server: trapper #5 [processed data in 0.000736 se...
               ├─3595 /usr/sbin/zabbix_server: icmp pinger #1 [got 0 values in 0.000003 ...
               ├─3596 /usr/sbin/zabbix_server: alert manager #1 [sent 0, failed 0 alerts...
               ├─3597 /usr/sbin/zabbix_server: preprocessing manager #1 [queued 0, proce...
               ├─3598 /usr/sbin/zabbix_server: preprocessing worker #1 started
               ├─3599 /usr/sbin/zabbix_server: preprocessing worker #2 started
               └─3600 /usr/sbin/zabbix_server: preprocessing worker #3 started
    
    Jan 21 12:38:35 centos7-test.xs.local systemd[1]: Starting Zabbix Server...
    Jan 21 12:38:35 centos7-test.xs.local systemd[1]: PID file /run/zabbix/zabbix_serve....
    Jan 21 12:38:35 centos7-test.xs.local systemd[1]: Started Zabbix Server.
    Hint: Some lines were ellipsized, use -l to show in full.

    Лог-файл

    vim /var/log/zabbix/zabbix_server.log
    
    3041:20180121:123351.991 Starting Zabbix Server. Zabbix 3.4.6 (revision 76823).
      3041:20180121:123351.991 ****** Enabled features ******
      3041:20180121:123351.991 SNMP monitoring:           YES
      3041:20180121:123351.991 IPMI monitoring:           YES
      3041:20180121:123351.992 Web monitoring:            YES
      3041:20180121:123351.992 VMware monitoring:         YES
      3041:20180121:123351.992 SMTP authentication:       YES
      3041:20180121:123351.992 Jabber notifications:      YES
      3041:20180121:123351.992 Ez Texting notifications:  YES
      3041:20180121:123351.992 ODBC:                      YES
      3041:20180121:123351.992 SSH2 support:              YES
      3041:20180121:123351.992 IPv6 support:              YES
      3041:20180121:123351.992 TLS support:               YES
      3041:20180121:123351.992 ******************************
      3041:20180121:123351.992 using configuration file: /etc/zabbix/zabbix_server.conf
      3041:20180121:123352.057 current database version (mandatory/optional): 03040000/03040006
      3041:20180121:123352.057 required mandatory version: 03040000
      3041:20180121:123352.075 server #0 started [main process]
      3066:20180121:123352.096 server #13 started [escalator #1]
      3063:20180121:123352.100 server #10 started [history syncer #2]
      3058:20180121:123352.101 server #5 started [housekeeper #1]
      3059:20180121:123352.101 server #6 started [timer #1]
      3055:20180121:123352.107 server #2 started [alerter #1]
      3056:20180121:123352.107 server #3 started [alerter #2]

    Состояние службы апач (httpd)

    [root@centos7-test piter]# systemctl status httpd
    ● httpd.service - The Apache HTTP Server
       Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
       Active: active (running) since Sun 2018-01-21 12:24:26 MSK; 28min ago
         Docs: man:httpd(8)
               man:apachectl(8)
     Main PID: 1055 (httpd)
       Status: "Total requests: 17; Current requests/sec: 0; Current traffic:   0 B/sec"
       CGroup: /system.slice/httpd.service
               ├─1055 /usr/sbin/httpd -DFOREGROUND
               ├─1621 /usr/sbin/httpd -DFOREGROUND
               ├─1622 /usr/sbin/httpd -DFOREGROUND
               ├─1624 /usr/sbin/httpd -DFOREGROUND
               ├─1625 /usr/sbin/httpd -DFOREGROUND
               ├─1626 /usr/sbin/httpd -DFOREGROUND
               └─3392 /usr/sbin/httpd -DFOREGROUND
    
    Jan 21 12:24:18 centos7-test.xs.local systemd[1]: Starting The Apache HTTP Server...
    Jan 21 12:24:22 centos7-test.xs.local httpd[1055]: AH00557: httpd: apr_sockaddr_inf...l
    Jan 21 12:24:22 centos7-test.xs.local httpd[1055]: AH00558: httpd: Could not reliab...e
    Jan 21 12:24:26 centos7-test.xs.local systemd[1]: Started The Apache HTTP Server.
    Hint: Some lines were ellipsized, use -l to show in full.

    Состояние службы mysql (mariadb)

    [root@centos7-test piter]# systemctl status mariadb
    ● mariadb.service - MariaDB database server
       Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
       Active: active (running) since Sun 2018-01-21 12:24:27 MSK; 34min ago
     Main PID: 1163 (mysqld_safe)
       CGroup: /system.slice/mariadb.service
               ├─1163 /bin/sh /usr/bin/mysqld_safe --basedir=/usr
               └─1414 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plug...
    
    Jan 21 12:24:17 centos7-test.xs.local systemd[1]: Starting MariaDB database server...
    Jan 21 12:24:18 centos7-test.xs.local mariadb-prepare-db-dir[1043]: Database MariaDB...
    Jan 21 12:24:19 centos7-test.xs.local mysqld_safe[1163]: 180121 12:24:19 mysqld_safe...
    Jan 21 12:24:19 centos7-test.xs.local mysqld_safe[1163]: 180121 12:24:19 mysqld_safe...
    Jan 21 12:24:27 centos7-test.xs.local systemd[1]: Started MariaDB database server.
    Hint: Some lines were ellipsized, use -l to show in full.

    Службы zabbix server и agent работают:

    [root@centos7-test piter]# netstat -nat | grep 10050
    tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN     
    tcp6       0      0 :::10050                :::*                    LISTEN     
    [root@centos7-test piter]# netstat -nat | grep 10051
    tcp        0      0 0.0.0.0:10051           0.0.0.0:*               LISTEN     
    tcp6       0      0 :::10051                :::*                    LISTEN     
    [root@centos7-test piter]# 

    firewall и selinux отключены

    В чем может быть причина? Куда копать?

    C уважением Петр

    • Судя по всему, вы что-то напутали с настройкой apache. У вас не работает конфиг с zabbix, где описан алиас /zabbix. Что-то более конкретное подсказать не могу.

  26. Владимир

    Настраиваю боевой сервер заббикса и возникла заминка по теме оповещения по почте. Использую корпоративную почту которая хостится далеко не на самых известных ресурсах типа яндекса и гугла, а использует ресурсы одной не сильно известной компании. Так вот при настройках на шифрованый порт требуется принят их(компании предоставляющего хостинг услуги и услуги по администрированию сервера) сертификат вручную ибо ребята не заморачивались особо на эту тему. В обычных почтовых клиентах на ПК и смартфонах (за исключением некоторых моделей iPhone и WindowsPhone) принять сертификат не проблема. Но как быть с командной строкой линукса и веб-настройками забикса я пока не понимаю. Пните меня в нужном направлении, а то не охота оставлять заббикс работать на 25 порту без всякой защиты корреспонденции.

    • Я даже не проверял никогда, как отправка будет проходить с использованием недоверенного сертификата. Возможно и не будет проблем и предупреждений. Но честно говоря, я не вижу проблемы, слать оповещения по незащищенному протоколу. Конечно, от специфики организации зависит, но в общем случае не вижу никакой секретности в этих оповещениях, даже если их вдруг кто-то и прочитает.

      • Владимир

        У меня оповещения начинают работать только если убрать в настройках шифрование на поставить 25 порт. Ну значит так и будет работать дальше пока в какой-то момент не найду способа разрулить все это. Я года 3 назад как то снифером баловался и ловил свою же почту по не шифрованному каналу, так там и пароль и текст сообщения в пакетах летал в открытом виде))
        Спасибо за статью, работу в целом и быстрый фидбек!

  27. Андрей

    Замечательный мануал, делаю по нему не в первый раз.
    Сделайте пожалуйста статью по добавлению оповещений в телеграмм, думаю многим будет полезна.

    • Были мысли об этом. Сделаю. Хотя самому почты хватает. Телеграмм вообще жить нормально не даст, если еще туда оповещения сыпать :)

      • Андрей

        А у меня наоборот, почта захламляется и оповещения не оперативные, а в телеграмм прилетает пуш на который можно быстро отреагировать.

  28. Прошу помощи. Настроил Zabbix 3.4 по вашей статье. Агент на сервере нормально отрабатывает. А вот пытаюсь подключить в мониторинг Mikrotik Cloud Core CCR1036-12G-4s по SNMP и Zabbix пишет Timeout. Хз как его оттестить. Научите плз.

    • Нужно настроить мониторинг агента по snmp. Ничего сложного, но конкретно по микротикам у меня нет готовой инструкции.

  29. Сорри разобрался, не правильно понял применение шаблонов к хостам на вкладке configuration

  30. Доброе время суток, не подскажешь в моменте присоединения винды к мониторингу все ок ошибок служба пускается нет в файле(конфе прописал 2 раза ip zabbixa и свой хостнэйм) но в панели configuration - host при добавлении метка агента не загорается сам хост энэйбл.
    на хосте ни антивиря ни барандмауера.

    Винда на вируталке esxi 5.0 куда капнуть не подскажешь? журнал пуст ну в смыле по службе ничего.

  31. # zcat /usr/share/doc/zabbix-server-mysql-3.4.*/create.sql.gz | mysql -uroot -ptopsecret zabbix

    Нету create.sql.gz в данном месте.
    Где его взять?
    Без звёздочки заходил, там тоже его нет. Только GPL

    • Специально проверил только что на версии 3.4.4

      # ll /usr/share/doc/zabbix-server-mysql-3.4.4
      total 2064
      -rw-r--r-- 1 root root      98 Nov  9 13:37 AUTHORS
      -rw-r--r-- 1 root root  808176 Nov  9 13:37 ChangeLog
      -rw-r--r-- 1 root root   17990 Nov  9 13:37 COPYING
      -rw-r--r-- 1 root root 1266709 Nov  9 13:41 create.sql.gz
      -rw-r--r-- 1 root root      52 Nov  9 13:37 NEWS
      -rw-r--r-- 1 root root     188 Nov  9 13:37 README

      Не знаю, почему у вас нет этого файла.

  32. Валерий

    А шаблоны вы меняете? Добавляете ли какие либо триггеры, графики, комплексные экраны, карты сети или используете все по умолчанию?
    Мне например не нравится, что мониторинг постоянно ругается на сервисы "ShellHWDetection" и "sppsvc" и пр. Это наверняка отключается, я еще не углублялся, только установил, но все же интересно. Мне кажется, хорошая тема для новой статьи)

    • Конечно, я все делаю, что мне надо и отключаю лишнее. У меня целый раздел про то, что я настраиваю в zabbix - https://serveradmin.ru/category/zabbix/
      Мониторинг служб windows я обычно отключаю. Оставляю только те службы, что реально нужны. Графики, схемы, комплексные экраны настраиваю по месту, в зависимости от потребностей.

  33. Валерий

    Все шло гладко до момента установки клиента windows. Попробовал на нескольких машинах - результат один и тот же. Данные почему-то не передаются. Клиент устанавливается успешно, сервис запускается, но в мониторинге пусто. Конфиг прописал как положено: указал ip сервера, activeserver и Host. Последний (10 раз проверил) совпадает в точности с тем, который добавил на сервере. Единственная подозрительная запись в логе клиента: no active checks on server [192.168.35.111:10051]: host [PC-213] not found. В логе на сервере, все чисто. При этом агент на сервере zabbix передает все исправно. iptables и firewalld отключены, на клиентских win-os брандмауэр отключен.

  34. Добрый день!Постоянно отключаю этот тригер а он появляется. http://piccy.info/view3/11800902/1f5f078d4133acfd7dc91f0abf3b4b95/

    • Мелко, ничего на скриншоте не видно. Автоматически могут появляться только те элементы, которые добавляет автообнаружение. Но если их отключить, то они перестают работать.

      • а как отключить автообнаружение?

        • Либо в свойствах хоста, либо шаблона, есть раздел "Правила обнаружения". Там их можно отключить либо только на хосте, либо на всем шаблоне. Можно зайти внутрь правил обнаружения и там отключить только создание триггеров, оставив все остальное.

  35. Добрый день!Спасибо за отличный материал!Как отключить уведомления о падение сервисов на имейл, а оставить только уведомления когда хост падает.

    • Смотреть шаблоны надо и отключать ненужные триггеры. Если применить надо только к одному хосту, что тогда идти в него и у него отключать ненужные триггеры, а шаблоны не трогать. В общем, все уведомления живут в триггерах, там и нужно разбираться.

      • Спасибо!Сделал все по вашему шаблону но на почту уведомления не отсылает, пишет Couldn't resolve host name: Could not resolve host: smtp.gmail.com; Unknown error.В чем может быть проблема?

        • Так в самой ошибке и написано в чем проблема. Сервер не может отрезолвить имя smtp.gmail.com. Либо интернет, либо dns не настроены на сервере с заббиксом.

  36. Михаил

    Спасибо буду пробовать

  37. Михаил
    login as: root
    root@10.6.1.43's password:
    Last login: Thu Nov  2 13:06:17 2017 from 10.2.1.72
    [root@localhost ~]# mc
    /var/log/zabbix/zabbix_server.log                                                                                                                                                                               254560/17M                 1%
     45356:20171102:113645.110 This listing can be produced with, e.g., objdump -DSswx zabbix_server.
     45356:20171102:113645.110 ================================
     45348:20171102:113645.113 One child process died (PID:45356,exitcode/signal:1). Exiting ...
     45348:20171102:113647.114 syncing history data...
     45348:20171102:113647.114 syncing history data done
     45348:20171102:113647.114 syncing trend data...
     45348:20171102:113647.114 syncing trend data done
     45348:20171102:113647.114 Zabbix Server stopped. Zabbix 3.4.3 (revision 73588).
     45417:20171102:113657.250 Starting Zabbix Server. Zabbix 3.4.3 (revision 73588).
     45417:20171102:113657.250 ****** Enabled features ******
     45417:20171102:113657.250 SNMP monitoring:           YES
     45417:20171102:113657.250 IPMI monitoring:           YES
     45417:20171102:113657.250 Web monitoring:            YES
     45417:20171102:113657.250 VMware monitoring:         YES
     45417:20171102:113657.250 SMTP authentication:       YES
     45417:20171102:113657.250 Jabber notifications:      YES
     45417:20171102:113657.250 Ez Texting notifications:  YES
     45417:20171102:113657.250 ODBC:                      YES
     45417:20171102:113657.250 SSH2 support:              YES
     45417:20171102:113657.250 IPv6 support:              YES
     45417:20171102:113657.250 TLS support:               YES
     45417:20171102:113657.250 ******************************
     45417:20171102:113657.250 using configuration file: /etc/zabbix/zabbix_server.conf
     45417:20171102:113657.256 current database version (mandatory/optional): 03040000/03040005
     45417:20171102:113657.256 required mandatory version: 03040000
     45417:20171102:113657.274 server #0 started [main process]
     45422:20171102:113657.275 server #1 started [configuration syncer #1]
     45423:20171102:113657.275 server #2 started [alerter #1]
     45424:20171102:113657.276 server #3 started [alerter #2]
     45425:20171102:113657.276 server #4 started [alerter #3]
     45426:20171102:113657.277 server #5 started [housekeeper #1]
     45427:20171102:113657.278 server #6 started [timer #1]
     45428:20171102:113657.279 server #7 started [http poller #1]
     45433:20171102:113657.281 server #10 started [history syncer #2]
     45434:20171102:113657.281 server #11 started [history syncer #3]
     45437:20171102:113657.282 server #12 started [history syncer #4]
     45438:20171102:113657.283 server #13 started [escalator #1]
     45440:20171102:113657.288 server #14 started [proxy poller #1]
     45443:20171102:113657.292 server #17 started [poller #1]
     45430:20171102:113657.295 server #8 started [discoverer #1]
     45445:20171102:113657.303 server #19 started [poller #3]
     45432:20171102:113657.306 server #9 started [history syncer #1]
     45441:20171102:113657.306 server #15 started [self-monitoring #1]
     45442:20171102:113657.307 server #16 started [task manager #1]
     45444:20171102:113657.310 server #18 started [poller #2]
     45448:20171102:113657.314 server #21 started [poller #5]
     45447:20171102:113657.321 server #20 started [poller #4]
     45451:20171102:113657.325 server #24 started [trapper #2]
     45454:20171102:113657.329 server #26 started [trapper #4]
     45449:20171102:113657.332 server #22 started [unreachable poller #1]
     45455:20171102:113657.335 server #27 started [trapper #5]
     45456:20171102:113657.340 server #28 started [icmp pinger #1]
     45450:20171102:113657.343 server #23 started [trapper #1]
     45452:20171102:113657.347 server #25 started [trapper #3]
     45457:20171102:113657.352 server #29 started [alert manager #1]
     45458:20171102:113657.363 server #30 started [preprocessing manager #1]
     45460:20171102:113658.064 server #32 started [preprocessing worker #2]
     45461:20171102:113658.076 server #33 started [preprocessing worker #3]
     45424:20171102:113658.098 Got signal [signal:11(SIGSEGV),reason:1,refaddr:0x50]. Crashing ...
     45424:20171102:113658.098 ====== Fatal information: ======
     45424:20171102:113658.098 Program counter: 0x7f3c108d5edf

    постоянно появляется эта строка
    45424:20171102:113658.098 Got signal [signal:11(SIGSEGV),reason:1,refaddr:0x50]. Crashing ...

    • Крашится сервер. Я бы начал с того, что поставил предыдущую версию - 3.4.2.

    • Михаил, столкнулся с той-же проблемой. Вы уже разобрались? Откатываться на раннюю версию не хочу, пробую найти решение.

  38. Михаил

    Доброго времени суток. Делаю все по инструкции. Через некоторое время выдает следующее:

    [root@localhost ~]# systemctl status zabbix-server
    ● zabbix-server.service - Zabbix Server
    Loaded: loaded (/usr/lib/systemd/system/zabbix-server.service; enabled; vendor preset: disabled)
    Active: activating (auto-restart) (Result: exit-code) since Чт 2017-11-02 11:56:40 MSK; 437ms ago
    Process: 51618 ExecStop=/bin/kill -SIGTERM $MAINPID (code=exited, status=1/FAILURE)
    Process: 51553 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=0/SUCCESS)
    Main PID: 51555 (code=exited, status=0/SUCCESS)

    ноя 02 11:56:40 localhost.localdomain kill[51618]: -s, --signal send specified signal
    ноя 02 11:56:40 localhost.localdomain kill[51618]: -q, --queue use sigqueue(2) rather than kill(2)
    ноя 02 11:56:40 localhost.localdomain kill[51618]: -p, --pid print pids without signaling them
    ноя 02 11:56:40 localhost.localdomain kill[51618]: -l, --list [=] list signal names, or convert o...name
    ноя 02 11:56:40 localhost.localdomain kill[51618]: -L, --table list signal names and numbers
    ноя 02 11:56:40 localhost.localdomain kill[51618]: -h, --help display this help and exit
    ноя 02 11:56:40 localhost.localdomain kill[51618]: -V, --version output version information and exit
    ноя 02 11:56:40 localhost.localdomain kill[51618]: For more details see kill(1).
    ноя 02 11:56:40 localhost.localdomain systemd[1]: Unit zabbix-server.service entered failed state.
    ноя 02 11:56:40 localhost.localdomain systemd[1]: zabbix-server.service failed.
    Hint: Some lines were ellipsized, use -l to show in full.

    может сталкивался кто с этой проблемой?
    Заранее спасибо.

    • Ни разу не сталкивался с тем, чтобы падала сама служба заббикс сервера. В логе /var/log/zabbix/zabbix_server.log есть что-то еще на эту тему?

  39. Отличный мануал, большое спасибо автору! Не грех и денежку закинуть за работу, только было бы очень желательно добавить в возможности оплаты Qiwi.
    Сервер и агент завелись, осталось прицепить к мониторингу циску, разбираюсь.
    И да, для совсем уж нубов, немного понятнее бы по поводу паролей, а то мне пришлось через phpmyadmin их менять, иначе база не коннектилась )

  40. Есть ли какое-либо преимущество или дополнительные фишки, если устанавливать GUI сервер Zabbix (Gnome, KDE)?

  41. Спасибо за мануал!

    Хотел только уточнить касательно настройки Email -оповещания "Указываем следующие настройки для отправки почты через gmail."

    Предварительно нужно поднять почтовый агент на самом сервере Zabbix или не обязательно для того, чтобы почта приходила от сервера на ящик адмиина?

    Кроме этого нужно еще предварительно сам ящик создать на том же сервере Gmail для отправки сообщений? В в ашем примере это ящик zabbix.zeroxed@gmail.com

    Есть ли в этой версии готовый шаблон для отслеживания какого-либо процесса в Windows 10? Например, если процесс "test.exe" перестал работать (завис), то его перегрузить. В крайнем случае, если не получается перегрузить сам процесс принудительно, то перегрузить весь ПК с Windows. При это сам процесс test.exe висит в автозагрузке Windows.

  42. Замечательный мануал! Спасибо за работу.
    Вот только "гладко было на бумаге" :)
    У меня возник конфликт mysql vs mysqlnd
    yum говорит так:

    Пакет php-mysql заменён php-mysqlnd, но последний не отвечает зависимостям
    Пакеты пропущены из-за проблем с зависимостями:
    gd-last-2.2.5-1.el7.remi.x86_64 из remi-safe
    php-bcmath-7.1.10-1.el7.remi.x86_64 из remi-php71
    php-gd-7.1.10-1.el7.remi.x86_64 из remi-php71
    php-ldap-7.1.10-1.el7.remi.x86_64 из remi-php71
    php-mbstring-7.1.10-1.el7.remi.x86_64 из remi-php71
    php-xml-7.1.10-1.el7.remi.x86_64 из remi-php71
    zabbix-web-3.4.3-1.el7.noarch из zabbix
    zabbix-web-mysql-3.4.3-1.el7.noarch из zabbix

    Ну и в общем не работает web-интерфейс.
    Подскажете куда копать?

    • Налицо проблемы с пакетами и зависимостями. Надо разбираться, что когда и как ставилось. Возможно что-то надо удалить и поставить заново со всеми зависимостями. Тут я не помогу. У меня zabbix всегда это отдельный сервер и там никаких экспериментов с альтернативными зеркалами для php 7.1 и прочими нововведениями нет.

      • Вот спасибо за оперативность!
        Я тоже обратил внимание на "мутный" пакет от Remi. Может стоит попробовать отключить эту репу и переустановить php7.1?
        Система-то чистая, только утром инсталлировал.

        • Как это чистая? :) А репа remi откуда? php71 как раз из нее. Если он не нужен, то рекомендую его и все, что с ним связано удалить, потом удалить сам репозиторий remi, потом сделать yum clean all, а потом заново поставить заббикс.

  43. Дмитрий

    что нужно исправить/настроить, чтоб вместо тестовой страницы Apache окрывалась страница заббикса?
    Сейчас она открывается как http://ip_адресс/zabbix

    • Не понял вопрос. Нужно чтобы заббикс открывался по адресу http://ip_адресс?

      • Дмитрий

        сейчас заббикс открывается по адресу http://192.168.0.1/zabbix, а по адресу http://192.168.0.1/ открывается тестовая страница Apache. Как сделать, чтоб Заббикс открывался по адресу http://192.168.0.1/?
        Апач ставил по вашей статье про настройку вебсервера на CentOs 7.

        • Самый простой способ - удалить папку /var/www/html, а вместо нее сделать символьную ссылку с /usr/share/zabbix на /var/www/html и перезапустить апаче.

        • Только надо не забыть в основной файл конфигурации /etc/httpd/conf/httpd.conf добавить настройки php из /etc/httpd/conf.d/zabbix.conf. То есть просто удалить все, что в первом файле стоит в параметре директории /var/www/html и заменить на то, что стоит во втором файле конфига заббикса.

  44. Login denied: Authentication failed: 535

    Добавил аккаунт гугла, оповещения работали пол дня. После обеда перестали отправляться с ошибкой Login denied: Authentication failed: 535

    • Дмитрий

      Когда используешь гугловские аки на новом устройстве или ПО, гугл блочит активность с них до подтверждения тобой, что это ты делаешь а не у тебя угнали УЗ. если хочешь проще, то используй smtp.mail.ru порт 465, укажешь ящик mail.ru с логопасом и никаких проблем с 535 ошибкой

  45. Владимир

    Уважаемый Zerox, а не подскажете ли как опытный пользователь Zabbix'а начинающему как обстоит ситуация у последней версии с Linux-агентами? Подходят ли агенты с предыдущих версий или нужно собирать, а то я на сайте Zabbix'а не увидел агента для Linux'а.

    • Новые версии заббикса всегда поддерживают старые версии агента. Еще ни разу не было, чтобы не поддерживали. На сайте для загрузки есть все последние версии агентов под поддерживаемые дистрибутивы.

  46. Владимир

    Огромное спасибо за полезную статью. Поставил на виртуалке пока, поверх веб-сервера что месяц назад настраивал по статье "Настройка web сервера в CentOS 7". Стало аж бегом)) Теперь руки чешутся развернуть боевой сервер и проверить его возможности на полную!

  47. как и всегда - отличный материал, спасибо
    можете посоветовать какой-то ресурс или "курс" видео, либо статьи (в общем информацию)
    про настройку zabbix на мониторинг сетей cisco/huawei
    ну и кастомизация какая-то начальная >> продвинутая
    спасибо ещё раз

    • Мониторинг сетевых устройств реализован через snmp. В последней версии заббикса 3.4 уже есть готовые шаблоны для мониторинга по snmp, в том числе cisco. Так что достаточно просто добавить устройство в систему по ip и назначить ему соответствующий шаблон. А на устройстве включить snmp.

      • Не для всех устройств есть подходящие шаблоны, так что инфа по созданию своего была бы кстати.
        Подскажете, где почитать об этом?

        • Шаблон напрямую зависит от того, что за устройство будет мониториться. Подход везде разный, универсального совета нет. Все будет зависеть от того, каким образом вы будете получать информацию - от агента zabbix, по snmp, zabbix trapper, ipmi агент и т.д.

  48. Добрый день! Подскажите, при yum install zabbix-server-mysql zabbix-web-mysql
    выдало:
    http://clip2net.com/clip/m510581/79cfb-clip-59kb.png?nocache=1

    что может быть?

    • Ключ репозитория почему-то не добавлен. Хотя он должен добавляться при установке пакета zabbix-release-3.4-1.el7.centos.noarch.rpm
      Попробуйте очистить кэш yum, обновить и установить zabbix:
      # yum clean all
      # yum update
      # yum install zabbix-server-mysql zabbix-web-mysql

  49. Спасибо! Обратил внимание, что отдельно PHP не ставился. Он вместе с каким-то пакетом идёт?

  50. А дополнить этот великолепный мануальчик настройками для указанной Вами связки можете?

    • Не понял, о какой связке идет речь?

      • Простите, промазала с ответом.
        Я про это: Гораздо шустрее связка nginx + PHP 7.x + postgresql + redis для кэша

        • Настроить заббикс на nginx не сложно, у меня есть статья https://serveradmin.ru/ustanovka-zabbix-3-na-nginx-php-fpm/ Если надо именно php7, то тоже описывал как поставить - https://serveradmin.ru/ustanovka-i-obnovlenie-php-7-na-centos-7/ Для использования вместо mysql posgressql ничего особенного не надо, просто установить другую базу и в настройках указать ее. Про redis ничего не знаю, никогда им не пользовался.

          Конечно, было бы любопытно увидеть готовый материал и протестировать, но я писать в ближайшее время об этом точно не буду, так как нет потребности в этой связке. Не хочется тратить время на то, что не использую в своей работе.

  51. Доброе.
    Гораздо шустрее связка nginx + PHP 7.x + postgresql + redis для кэша

    • С какого количества новых значений в секунду имеет смысл перебираться на postgresql? У меня нет больших инсталляций, где бы производительность mysql была недостаточной.

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

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

Нажимая кнопку "Отправить комментарий" Я даю согласие на обработку персональных данных.
Используешь Telegram? Подпишись на канал автора →
This is default text for notification bar