Zabbix установка сервера на windows

Zabbix это open-source система мониторинга корпоративного уровня. На текущий момент Zabbix одна из самых популярных и функциональных бесплатных систем мониторинга. Благодаря простой установке и настройке Zabbix можно использовать для мониторинга крупных инфраструктур с сотнями серверов, так и для мелких конфигураций. В этой статье мы рассмотрим, как выполнить установку и базовую настройку сервера Zabbix 4.4 с веб-интерфейсом на базе Linux Ubuntu и CentOS, установить агенты Zabbix на сервере Windows и Linux, и добавить новые хосты в систему мониторинга.

Общий интерфейс Zabbix сервера представлен на скриншоте ниже.

веб интерфейс системы мониторинга zabbix

Содержание:

  • Из чего состоит Zabbix и что он может?
  • Установка Zabbix Server в Linux (Ubuntu, CentOS)
  • Настройка веб-интерфейса Zabbix
  • Установка Zabbix Agent в Windows
  • Добавление устройства на Zabbix-сервере
  • Установка Zabbix Agent в Linux

Из чего состоит Zabbix и что он может?

Zabbix простой установке и настройке, написан на C (сервер, прокси и агент) и PHP (фронтенд). Zabbix Server и Zabbix Proxy может работать только на Linux системах. Агент можно установить на большом количестве поддерживаемых ОС и платформах.

Инсталляция Zabbix сервера состоит из:

  • бинарника zabbix_server (обычно работает как сервис);
  • MySQL (MariaDB)/PostgreSQL базы данных;
  • Веб сервера Apache2/Nginx с обработчиком PHP;
  • Файлов самого frontend сайта (.php, .js, .css и т.д.).

Обычно схема работы выглядит так:

  1. Агент Zabbix посылает данные на сервер
  2. Сервер Zabbix получает и обрабатывает данные.
  3. Если полученные данные подпадают под заданные условия, то срабатывает триггер;
  4. Активный триггер сигнализирует о проблеме. Отображается уведомление на фронтенде (сайте), и в зависимости от конфигурации рассылается сообщение по почте и выполняется какие-либо действия (например, перезапуск службы, которая мониторится).

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

Установка Zabbix Server в Linux (Ubuntu, CentOS)

В этой статье мы рассмотрим пример установки Zabbix Server 4.4 на Linux (на примере Ubuntu Server 18.4 и CentOS) через пакетный менеджер.

Перейдите на страницу загрузки https://www.zabbix.com/download и выберите репозиторий, соответствующий вашему дистрибутиву Linux. Готовые пакеты есть для всех популярных дистрибутивов.

Например, для установки Zabbix на Ubuntu 18.04 нужно последовательно выбрать :

Zabbix Version (4.4) -> OS Distribution (Ubuntu) -> OS Version (18.04 Bionic) -> Database (MySQL) -> Веб сервер (Nginx или Apache).

инструкция по установке zabbix, получение репозиториев

Скачем и добавим репозиторий:

# wget https://repo.zabbix.com/zabbix/4.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.4-1+bionic_all.deb
# dpkg -i zabbix-release_4.4-1+bionic_all.deb
# apt update

Теперь можно установить необходимые пакеты:

# apt install zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-agent

установка zabbix-server в linux ubuntu

Для установки Zabbix в CentOS 8/RHEL 8 нужно подключить репозиторий с актуальной версией Zabbix (можно установить Zabbix из ветки 4.0 LTS или последнюю версию Zabbix 4.4):

# rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/8/x86_64/zabbix-release-4.4-1.el8.noarch.rpm
# dnf clean all

Предполагаем, что на сервере уже установлены: nginx, MySQL/MariaDB, php и php-fpm. Теперь через пакетный менеджер установим сам сервер Zabbix и агент:

# dnf install zabbix-server-mysql zabbix-web-mysql zabbix-agent

Осталось создать базу данных для Zabbix в MySQL (вместо MySQL можно использовать PostgreSQL, просто замените в командах ‘mysql’ на ‘pgsql’).

Создайте базу данных и дайте права пользователю, из-под которого Zabbix будет обращаться к базе данных:

mysql -uroot
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'ВашПароль';
mysql> quit;

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

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p Zabbix

Измените конфигурационный файл /etc/zabbix/zabbix_server.conf, укажите пароль от вновь созданного пользователя.

DBPassword=Пароль_Пользователя_Zabbix

Так как в моем случае веб сервером служит nginx, нужно изменить nginx.conf, раскомментировав следующие строчки

# listen 80;
# server_name example.com;

Уберите # и поменяйте example.com на домен, по которому вы хотите заходить на Zabbix, в моём случае это
test.zabbix.local
.

Для Apache файл нужно править файл конфигурации /etc/httpd/conf.d/zabbix.conf .

Выставим временную зону в PHP. В файле /etc/zabbix/php-fpm.conf раскомментируем строчку

php_value[date.timezone] = Europe/Moscow

Дополнительно можно выставить следующие параметры PHP в
/etc/php.ini
:

memory_limit 128M
upload_max_filesize 8M
post_max_size 16M
max_execution_time 300
max_input_time 300
max_input_vars 10000

Добавьте службу zabbix-server в автозапуск и запустите ее:

# systemctl enable zabbix-server zabbix-agent nginx php7.2-fpm
# systemctl restart zabbix-server zabbix-agent nginx php7.2-fpm

Настройка веб-интерфейса Zabbix

Теперь нужно настроить frontend (веб-интерфейс) Zabbix. В браузере откройте указанный ранее URL адрес zabbix сервера. В моем случае это test.zabbix.local (или на домен, который вы указывали. Не забудьте прописать его у себя в hosts файле или на DNS сервере).

zabbix веб installer

Убедитесь, что во всех требования инсталлятора указано ОК.

zabbix check pre-requisites

Укажите данные для подключения к БД. Используйте пользователя и пароль, который создали ранее.

данные для подключения к базе данных zabbix

Укажите название Zabbix сервера. Порт рекомендую оставлять стандартный – TCP 10051.

Система Zabbix по-умолчанию использует два порта:

  • TCP 10050 — порт пассивного агента, по нему zabbix сервер опрашивает клиентов;
  • TCP 10051 — порт, на котором zabbix сервер получает данные от клиентов (активный агент).

Не забудьте открыть данные порты. Например, на Zabbix сервере на базе CentOS можно открыть порты в firewalld с помощью firewall-cmd:

# firewall-cmd --add-service={http,https} --permanentfirewall-cmd --add-port={10051/tcp,10050/tcp} –permanent

А на агенте достаточно открыть 10050:

# firewall-cmd --permanent --add-port=10050/tcp

Не забудьте перезагрузить firewalld:

# firewall-cmd –reload

имя и порты zabbix сервера

После этого жмите Next Step и Finish. После успешной установки вас попросит залогиниться. По-умолчанию логин
Admin
, пароль
zabbix
(замените его).

авторизация веб-интерфейсе в zabbix

zabbix dashboard

На этом установка сервера Zabbix Server завершена.

На странице https://www.zabbix.com/download есть пошаговые инструкции для установки Zabbix Server на другие операционные системы, а так же инструкции как собрать zabbix-server из исходного кода или запустить его в docker контейнерах.

Установка Zabbix Agent в Windows

Попробуем установить Zabbix агент на сервер Windows и добавим его на наш сервер мониторинга Zabbix. Скачать версию Zabbix агент для Windows можно здесь: https://www.zabbix.com/download_agents. агенты zabbix для windows

Выберите нужную версию агента под Windows. Я выберу формат msi (amd64) (без OpenSSL). Если вы планируете устанавливать zabbix agent на сервера/компьютеры домена через групповые политики или SCCM, то можете скачать zip архив с бинарными файлами и конфигурационными файлами.

Запустите инсталлятор, примите лицензионное соглашение, укажите запрошенные данные. Обратите внимание, что в поле “Server or Proxy for active checks” я указал IP адрес в формате IP:PORT. Поскольку порт я оставлял стандартный, я пишу IP:10051.

настройка параметров zabbix сервера при установке агента в windows

Далее еще пару раз нажмем Next и Install.

После этого убедимся, что наш агент установлен. В списке служб должен появиться сервис Zabbix Agent.

служба zabbix agent в windows

На клиенте Windows нужно разрещить входящие подключения с IP адреса сервера Zabbix в Брандмауэре Windows:

New-NetFirewallRule -DisplayName "ZabbixMonitoring" –RemoteAddress 192.168.1.100 -Direction Inbound -Protocol TCP –LocalPort 10050 -Action Allow

Добавление устройства на Zabbix-сервере

Чтобы убедиться в работоспособности агента, нужно добавить хост testnode2 на Zabbix сервер и назначить ему проверки (checks).

Заметка. В заббиксе есть 2 типа проверок:

  • Пассивные – Zabbix сервер запрашивает у агента какие-либо данные;
  • Активные – агент посылает на сервер данные;

При установке агента мы указывали сервер в формате IP:PORT как раз для активных проверок.

Добавление нового устройства для мониторинга в Zabbix выполняется через Web-интерфейс. Перейдите в раздел Configuration -> Hosts.

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

Нажмите Create host и заполните данные. Обратите внимание, что Host name хоста должен полностью совпадать с hostname машины или значением параметра Hostname в конфиге агента.

добавление windows устройства в Zabbix сервере

Во вкладке Templates добавить несколько встроенных Windows шаблонов. Шаблоны в Zabbix это наборы значений, триггеров, графов и правил обнаружения, которые могут быть назначены одному или нескольким хостам.

Эти интегрированные шаблоны имеют постфикс “active”, значит, будут использоваться активные проверки.

шаблоны zabbix для windows

Нажмите Add. Чтобы не ждать пока сервер и агент увидят друг друга (обычно занимает пару минут), перезагрузите службу Zabbix Agent на testnode2 и проверьте лог агента (C:\Program Files\Zabbix Agent\zabbix_agentd.txt).

перезапуск службы Zabbix agent

лог zabbix_agentd.txt

Сообщение “started [active checks #1]” говорит о том, что на сервере найдены активные проверки для этого хоста. Теперь посмотрим на данные, которые пришли на сервер Zabbix от агента. Для этого в Zabbix перейдите на Monitoring -> Latest Data и выберете нужный вам хост в поле Hosts.

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

данные об устройстве в веб интерфейсе zabbix

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

Обратите внимание на то, что в дашборде Zabbix висит уведомление о том, что служба BITS не запущена. Это уведомление появилось потому что мы назначили стандартные шаблоны нашему хосту. В одном из шаблонов был мониторинг сервиса BITS и соответствующий триггер, который срабатывает если служба BITS находится не в статусе Running.

события в dashboard zabbix

На этом настройка Windows Agentа завершена.

Установка Zabbix Agent в Linux

Теперь установим агент Zabbix в Linux. Для установки Zabbix агента в Ubuntu Server 18.04 с помощью пакетного менеджера нужно скачать и установить репозиторий Zabbix. Затем из репозитория установим zabbix agent:
# wget https://repo.zabbix.com/zabbix/4.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.4-1+bionic_all.deb
# dpkg -i zabbix-release_4.4-1+bionic_all.deb
# apt update
# apt install zabbix-agent

В CentOS для добавления репозитория и установки агента zabbix используется команды:
# rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/8/x86_64/zabbix-release-4.4-1.el8.noarch.rpm
# dnf clean all
# dnf install zabbix-agent

Перед тем как мы запустим zabbix агент, нужно отредактировать конфигурационный файл /etc/zabbix/zabbix_agentd.conf. В нем нужно указать IP адрес сервера Zabbix для активных проверок.

Server=IP
ServerActive=IP:10051
Hostname=testagent

После этого запустите сервис агента:

# service zabbix-agent start

Убедитесь, что агент успешно запустился.

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

установка zabbix agent в linux ubuntu

Строка cannot parse list of active checks говорит о том, что на сервере нет активных проверок для этого хоста.

Как и в случае с Windows агентом, вам нужно добавить ваш Linux хост в настройках сервера Zabbix. Обратите внимание на параметр Host name в настройка хоста в интерфейсе заббикс сервера — этот параметр должен совпадать с Hostname параметром, который мы указываем в конфиге Zabbix -агента. В конфиге выше я указывал имя хоста testagent.

добавление ubuntu в мониторинг zabbix

23

Перезагрузите Zabbix агент и проверьте лог.

лог zabbix_agentd

Проверьте, что данные от агента появились на сервере Zabbix.

данные с linux сервера появились в веб интерфейсе zabbix

На этом настройка Zabbix-агента на Linux системе завершена. В следующей статье мы рассмотрим безагентный мониторинг доступности узлов в Zabbix через ICMP Ping.

В этой статье мы расскажем об установке и настройке Zabbix с нуля на сервер с ОС CentOS, в виде Docker-контейнера и в виде образа виртуальной машины в формате OVF.

Дополнительно разберемся с Zabbix-прокси, установкой Zabbix-агента на Windows, базовыми настройками и интеграцией с системой визуализации Grafana. После прочтения статьи вы сможете самостоятельно настроить мониторинг и оповещения на почту или в мессенджер, как следствие, начнете контролировать свои серверы, сайты, приложения и другие элементы инфраструктуры.

Оглавление:

  • Знакомство с системой
  • Установка Zabbix и его компонентов
    • Установка Zabbix-сервера на CentOS
    • Установка Zabbix в виде Docker-контейнера
    • Установка Zabbix из готовых образов
    • Установка агента Zabbix на Windows
  • Настройка и интеграция Zabbix 5
    • Добавление пользователя
    • Низкоуровневое обнаружение (Low Level Discovery, LLD)
    • Изменение шаблонов Zabbix
    • Zabbix Proxy
  • Интеграция Zabbix с внешними системами
  • Заключение

Знакомство с системой

Zabbix — популярная система мониторинга ИТ-инфраструктуры и приложений с открытым исходным кодом, которой пользуются малые, средние, крупные и очень крупные компании по всему миру. Основное преимущество продукта — большое сообщество пользователей и, как следствие, много полезной информации о подходах к использованию, настройке, созданию шаблонов мониторинга и многом другом.

Получить Zabbix можно на официальном сайте. Скачивание доступно в различных форматах. Кроме CentOS, установка Zabbix-сервера из бинарного файла возможна на следующие операционные системы:

  • Red Hat Enterprise Linux;
  • Oracle Linux;
  • Ubuntu;
  • Debian;
  • SUSE Linux Enterprise Server;
  • Raspbian.

В середине мая 2020 года вышла 5-я версия Zabbix, установку которой мы и разберем в статье.

Установка Zabbix и его компонентов

Zabbix — распределенная система мониторинга, состоящая из четырех основных компонентов:

  1. Zabbix-сервер. Ядро системы мониторинга. Компонент отвечает за визуализацию, агрегацию и аналитику данных, оповещения, управление распределенными компонентами (прокси и агентами). В качестве веб-сервера вендор позволяет использовать Apache или Nginx.
  2. Zabbix-прокси. Этот компонент отвечает за управление Zabbix-агентами. Использование прокси необязательно, но позволяет снизить нагрузку на Zabbix-сервер за счет переноса с него функций управления агентами и предобработки данных (этот функционал появился в пятой версии Zabbix).
  3. Zabbix-агент. Агент — конечный компонент инфраструктуры мониторинга. Выполняет сбор и отправку данных о производительности на Zabbix-прокси или Zabbix-сервер.
  4. База данных Zabbix. Хранилище метрик производительности. Вендор поддерживает реляционные базы данных: MySQL, PostgreSQL, SQL Server, Oracle. Обращаем внимание, что с версии 5.0 прекращена поддержка базы данных IBM DB2.

Установка Zabbix-сервера на CentOS

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

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

Затем откроется следующее представление, где для установки Zabbix-сервера выберем CentOS 7 64-bit.

После выбора операционной системы можно прокрутить колесико мышки вниз и выбрать плавающий IP-адрес для возможности подключения к серверу через SSH и к веб-консоли Zabbix через браузер. На этом же экране можно скопировать пароль root для дальнейшего доступа к серверу по SSH. Нажимаем на кнопку Создать.

Как только сервер будет создан и его статус сменится на Active, можно подключаться к внешнему плавающему IP-адресу по протоколу SSH.

Далее установим репозитории ПО. Это необходимо для получения актуального набора пакетов с компонентами Zabbix и PostgreSQL.

Выполним команды:

# yum install https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# yum clean all

Репозитории с актуальными версиями устанавливаемых компонентов для различных платформ можно найти на сайте производителей:

  • Zabbix;
  • PostgreSQL.

Следующий шаг — установка Zabbix-сервера и Zabbix-агента:

# yum install zabbix-server-pgsql zabbix-agent

Теперь внесем изменения в конфигурацию репозитория Zabbix: нужно включить zabbix frontend в файле конфигурации /etc/yum.repos.d/zabbix.repo, изменив значение ключа enabled со значения 0 на значение 1.

[zabbix-frontend]
name=Zabbix Official Repository frontend - $basearch
baseurl=http://repo.zabbix.com/zabbix/5.0/rhel/7/$basearch/frontend
enabled=1
gpgcheck=1
gpgkey=file://etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591

Установим Red Hat Software Collections для упрощения процесса дальнейшей настройки:

# yum install centos-release-scl

Следующий шаг — установка PostgreSQL и других необходимых пакетов. Обратите внимание, что в нашем примере мы работаем с локальным хранилищем на базе PostgreSQL (в случае с MySQL имя пакета для Zabbix-сервера будет отличаться).

# yum install postgresql12-server zabbix-web-pgsql-scl zabbix-nginx-conf-scl

Инициализируем, настроим автозапуск и запустим БД PostgreSQL:

# /usr/pgsql-12/bin/postgresql-12-setup initdb
# systemctl enable postgresql-12
# systemctl start postgresql-12

После успешного запуска создадим базу данных для Zabbix и пользователя в ней. Первая команда запросит пароль:

# sudo -i -u postgres createuser --pwprompt zabbix
# sudo -i -u postgres createdb -O zabbix zabbix

Внесем изменения в конфигурационный файл /var/lib/pgsql/12/data/pg_hba.conf для корректного подключения к БД PostgreSQL с паролем. Метод для обоих подключений должен быть md5:

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     md5
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5

После создания пользователя организуем для него схему по умолчанию:

# sudo -i -u postgres psql -U zabbix
# zabbix=> create schema zabbix;
# zabbix=> ALTER ROLE zabbix SET search_path = zabbix;
# zabbix=> \q

Следующий шаг — установка в БД схемы данных:

# zcat /usr/share/doc/zabbix-server-pgsql*/create.sql.gz | sudo -u zabbix psql zabbix

Теперь впишите созданный для БД пароль в конфигурационный файл Zabbix /etc/zabbix/zabbix_server.conf в параметры DBHost, DBName, DBSchema, DBUser и DBPassword.

Настроим NGINX для его корректной работы в Zabbix. Настройки выполняются в конфигурационном файле /etc/opt/rh/rh-nginx116/nginx/conf.d/zabbix.conf. Необходимо раскомментировать две строки и указать IP-адрес или имя сервера:

listen 80;
server_name <ip адрес или имя сервера>;

Следующий файл, который нужно скорректировать, — /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf. Вносим изменения в двух местах:

listen.acl_users = apache,nginx
php_value[date.timezone] = Europe/Moscow

Теперь запускаем сервисы Zabbix и добавляем их в автозапуск:

# systemctl restart zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpm
# systemctl enable zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpm

Если на предыдущих шагах все было сделано верно, при переходе по имени или адресу сервера в браузере откроется начальное окно настройки Zabbix 5.0:

Переходим на экран Configure DB connection и указываем реквизиты подключения к БД:

На экране Zabbix server details — имя хоста, на котором установлен Zabbix, порт должен остаться указанным по умолчанию:

Переходим на последний экран и нажимаем Finish. Настройка завершена.

Стандартная учетная запись для входа: Admin с паролем zabbix.

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

Установка Zabbix в виде Docker-контейнера

Быстрая установка — выполняется за 10 минут или меньше. Добавим репозиторий Docker и установим необходимые пакеты:

# yum-config-manager     --add-repo     https://download.docker.com/linux/centos/docker-ce.repo
# yum install docker-ce docker-ce-cli containerd.io docker-compose

Следующий шаг — клонирование репозитория Zabbix с Github:

# git clone https://github.com/zabbix/zabbix-docker.git

Перейдем в клонированный репозиторий. Команда ls покажет имеющиеся объекты:

# cd zabbix-docker/
# ls

agent                                       docker-compose_v3_centos_mysql_local.yaml   java-gateway     snmptraps
agent2                                      docker-compose_v3_centos_pgsql_latest.yaml  kubernetes.yaml  web-apache-mysql
build.sh                                    docker-compose_v3_centos_pgsql_local.yaml   LICENSE          web-apache-pgsql
docker-compose_v3_alpine_mysql_latest.yaml  docker-compose_v3_ubuntu_mysql_latest.yaml  proxy-mysql      web-nginx-mysql
docker-compose_v3_alpine_mysql_local.yaml   docker-compose_v3_ubuntu_mysql_local.yaml   proxy-sqlite3    web-nginx-pgsql
docker-compose_v3_alpine_pgsql_latest.yaml  docker-compose_v3_ubuntu_pgsql_latest.yaml  README.md        zabbix-appliance
docker-compose_v3_alpine_pgsql_local.yaml   docker-compose_v3_ubuntu_pgsql_local.yaml   server-mysql     zbx_env
docker-compose_v3_centos_mysql_latest.yaml  generate-stackbrew-library.sh               server-pgsql

Запустим демон Docker:

# systemctl start docker

Соберем и запустим контейнеры с Zabbix:

# docker-compose -f docker-compose_v3_centos_pgsql_latest.yaml up -d

После выполнения команды выше запустятся компоненты Zabbix, можно переходить в веб-интерфейс:

Установка Zabbix из готовых образов

Это самый быстрый тип установки — разворачивание займет не более 5 минут. В этом разделе рассмотрим установку готового Zabbix-сервера из образа в формате Open virtualization format (OVF). Образ можно скачать на сайте Zabbix.

Для разворачивания OVF-образа на локальной машине потребуется установленный VirtualBox, который доступен для различных платформ на сайте Oracle. После загрузки образа Zabbix в интерфейсе VirtualBox нужно нажать кнопку Импортировать.

Выбираем образ zabbix_appliance-5.0.0.ovf (рядом с ним должен находиться zabbix_appliance-5.0.0-disk001.vmdk).

На следующем экране все параметры должны остаться по умолчанию. Теперь можно нажать кнопку Импорт. После успешного импорта виртуальную машину можно Запустить. Обратите внимание, что для корректного подключения к интерфейсу Zabbix или виртуальной машине по SSH в сетевых настройках должен быть указан тип подключения Сетевой мост.

Дожидаемся успешного запуска виртуальной машины, входим под учетными данными root / zabbix в консоли VirtualBox и выполняем команду:

# ip a

В результате отобразятся настройки сети на виртуальной машине с установленным Zabbix.

Теперь можно выполнить подключение к Zabbix-серверу через браузер. Учетные данные стандартные — Admin / zabbix.

Данные по производительности сразу же начинают собираться.

Таким образом, установка завершена.

Установка агента Zabbix на Windows

Перед началом установки создадим в панели управления Selectel сервер с ОС Windows. Для этого в представлении Серверы нажмем на кнопку Создать сервер.

В открывшемся представлении нажимаем Выбрать тип источника и выбираем один из доступных образов операционных систем Windows.

Выбираем плавающий IP-адрес для подключения к серверу через RDP. На этом же экране можно скопировать пароль учетной записи Administrator для дальнейшего доступа к серверу по RDP. Нажимаем на кнопку Создать.

После выполнения перечисленных действий ожидаем создания сервера. После его создания и перехода в статус Active можно подключаться к внешнему плавающему IP-адресу по протоколу RDP к созданному серверу.

Установка и настройка Zabbix-агента на Windows-сервер в ручном режиме занимает около 10 минут. Скачивание дистрибутива доступно на сайте Zabbix. После скачивания архива его необходимо распаковать в созданную директорию (в нашем примере это C:\Zabbix):

В папке conf хранится конфигурационный файл, в который необходимо внести изменение:

Server=<ip адрес Zabbix-сервера>

Далее установим агент в виде сервиса и запустим его. Для этого выполним zabbix_agentd со специальными реквизитами:

> zabbix_agentd.exe -c C:\Zabbix\conf\zabbix_agentd.conf -i
> zabbix_agentd.exe -c C:\Zabbix\conf\zabbix_agentd.conf --start

Следующий шаг — добавление данного агента в интерфейсе Zabbix. Переходим на представление ConfigurationHosts, затем в верхнем правом углу нажимаем Create Host:

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

Далее переходим на вкладку Templates. Так как речь идет об ОС Windows, применим к узлу соответствующий шаблон Template OS Windows by Zabbix agent. Сохраняем изменения и ожидаем начала сбора метрик.

Собираемые по узлам метрики доступны на представлении MonitoringLatest Data.

Напротив каждой метрики (Item) есть кнопка Graph, при нажатии на которую открывается соответствующий график.

Настройка мониторинга узла с ОС Windows завершена.

Настройка и интеграция Zabbix 5

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

Добавление пользователя

Каждому пользователю в Zabbix соотнесены имя пользователя и пароль — реквизиты, с которыми можно войти в систему. Все пароли в Zabbix хранятся в зашифрованном виде. При необходимости можно настроить авторизацию пользователей через Active Directory или LDAP. В этой статье мы рассмотрим работу встроенных в Zabbix пользователей.

В Zabbix каждый пользователь должен входить в группу. На основе групп в Zabbix присваиваются те или иные права.

Для добавления пользователя в веб-интерфейсе Zabbix необходимо перейти на представление Administration Users и в верхнем правом углу нажать Create User.

Теперь появятся поля, в которых важно указать имя пользователя, группу и пароль. Остальное можно оставить по умолчанию.

Для каждого пользователя можно указать его данные для оповещения: электронную почту, аккаунт в Telegram, имя в Slack и т. д. Чтобы привязать эти данные к пользователю, перейдем на вкладку Media, нажмем Add и добавим адрес электронной почты. Здесь можно указать критичность событий, по которым нужно отправлять уведомления, и интервал оповещений.

После сохранения этих данных можно нажать Add на вкладке User и сохранить созданного пользователя.

Чтобы сменить пароль любого пользователя, на представлении AdministrationUsers нужно кликнуть на соответствующего пользователя, нажать Change password и ввести новый пароль.

Аналогичным образом создаем группу пользователей. На представлении AdministrationGroups в верхнем правом углу нажмем Create user group.

Указываем имя группы и созданного пользователя. Далее переходим на вкладку Permissions.

На вкладке Permissions указываем имя группы хостов, к данным по которой у создаваемой группы будет доступ. После добавления группы нажимаем Add.

Таким образом, группа создана, ей предоставлен требуемый уровень прав и привязан пользователь.

Низкоуровневое обнаружение (Low Level Discovery, LLD)

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

Ниже, в качестве примера, Discovery Rules (правила обнаружения) для шаблона Windows. Здесь их четыре для следующих сущностей:

  • файловых систем,
  • сетевых интерфейсов,
  • физических дисков,
  • сервисов.

Рассмотрим устройство правила обнаружения для файловых систем. В поле Key указан элемент данных vfs.fs.discovery, встроенный в Zabbix. Этот элемент возвращает список файловых систем, примонтированных к серверу. Другие встроенные элементы данных собраны на специальной странице производителя.

На вкладке Filters перечислены прототипы данных, которые в случае обнаружения новых элементов распознают их и записывают в БД.

В Zabbix возможно добавление собственных элементов данных, собственных фильтров и макросов.

Изменение шаблонов Zabbix

Шаблоны включают в себя:

  • приложения (Applications),
  • экземпляры (Items),
  • макросы (Macros),
  • триггеры (Triggers),
  • правила обнаружения (Discovery rules),
  • другие элементы данных.

Каждый из этих элементов отвечает за те или иные возможности. В статье мы разберем формирование пороговых схем в триггерах на примере шаблона для Windows и его части — шаблона для файловых систем.

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

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

Zabbix Proxy

Zabbix Proxy — это специальный сервис, который работает на выделенном сервере. Он обеспечивает буферизацию поступающих от агентов данных и их дальнейшую трансляцию в сторону Zabbix-сервера. Zabbix Proxy использует отдельную базу данных и поддерживает SQLite, MySQL и PostgreSQL.

Сервис эффективно использовать для сбора метрик с агентов в выделенных или удаленных сетях (за файерволом), участков инфраструктуры с ненадежной связью и для снижения нагрузки на Zabbix-сервер. Начиная с версии 5.0 прокси поддерживает предобработку данных на своей стороне.

Интеграция Zabbix с внешними системами

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

# docker run -d -p 3000:3000 grafana/grafana

После установки удостоверимся, что контейнер с Grafana выполняется:

# docker ps | grep grafana
1592a00802b5 grafana/grafana "/run.sh" 2 minutes ago Up 21 minutes 0.0.0.0:3000->3000/tcp optimistic_diffie

Используя ID контейнера, установим специализированный плагин для Zabbix и перезагрузим контейнер:

# docker exec 1592a00802b5 grafana-cli plugins install alexanderzobnin-zabbix-app
# docker restart 1592a00802b5

Входим в Grafana через браузер (учетные данные по умолчанию admin / admin):

Далее нужно активировать плагин для Zabbix. Чтобы это сделать, перейдем в ConfigurationsPlugins и включим плагин для Zabbix:

Плагин включен, осталось его настроить. Важные поля для заполнения — URL, User, Password:

После выполненных настроек можно добавлять на дашборды различные элементы данных на основе метрик из Zabbix.

У Grafana есть много готовых дашбордов, их можно найти на сайте проекта и импортировать через интерфейс Grafana.

Заключение

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

Для визуализации, например, статусов доступности и производительности мы рекомендуем использовать удобный и мощный инструмент Grafana. Он легко устанавливается и настраивается. Кроме того, есть мобильное приложение, в котором можно просматривать «здоровье» инфраструктуры в режиме реального времени.

Zabbix is an enterprise-level open-source monitoring system. Currently, Zabbix is one of the most popular and powerful free monitoring systems. Due to its simple installation and configuration, Zabbix may be used to monitor large infrastructures with hundreds of hosts, as well as small configurations. In this article we’ll show you how to install and configure basic features of a Zabbix server 5.0  with a web interface on Linux Ubuntu and CentOS, and how to install Zabbix agent on a server running Windows or Linux and add new hosts for monitoring.

You can see the Zabbix server dashboard interface on a screenshot below.

zabbix dashboard

Contents:

  • How to Install Zabbix Server on Linux (Ubuntu, CentOS)?
  • Zabbix Web Interface Configuration
  • How to Install Zabbix Agent on Windows?
  • How to Add New Host on Zabbix Server?
  • Installing Zabbix Agent on Linux

Simple and easy-to-configure Zabbix is written on C (a server, a proxy, and an agent) and PHP (frontend). Zabbix Server and Zabbix Proxy work in Linux systems only. The Zabbix agent can be installed on a wide variety of supported operating systems and platforms.

Zabbix server installation consists of:

  • A zabbix_server binary (usually, it is working as a service);
  • MySQL/MariaDB/PostgreSQL database;
  • Apache2/Nginx web server with a PHP handler;
  • Frontend site files (.php, .js, .css, etc.).

Usually, the operating scheme looks like this:

  • A Zabbix agent sends data to a server;
  • A Zabbix server receives and processes the data;
  • If the received data meet the specified conditions, a trigger is activated;
  • The activated trigger indicates that there is a problem. A notification appears in the frontend (on a site), and depending on the configuration, an email notification is sent or some actions are performed (for example, a monitored service is restarted).

Zabbix can work with all known protocols. Thanks to the ability to use external scripts, Zabbix can execute and receive data from any executable scripts/binaries.

How to Install Zabbix Server on Linux (Ubuntu, CentOS)?

In this tutorial we’ll show how to install Zabbix Server on Linux (Ubuntu Server 18.4 and CentOS 8) using a package manager.

Go to the download page https://www.zabbix.com/download and select the repository that matches your Linux distribution. There are ready packages for all popular Linux distros.

For example, to install Zabbix on Ubuntu 18.04, select the following in turn:

Zabbix Version (5.0 LTS) -> OS Distribution (Ubuntu) -> OS Version (18.04 Bionic) -> Database (MySQL) -> Web server (Nginx or Apache).

download and install zabbix on linux

Download and add the repository:

# wget https://repo.zabbix.com/zabbix/5.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.0-1+bionic_all.deb
# dpkg -i zabbix-release_5.0-1+bionic_all.deb
# apt update

Then you can install the required packages:

# apt install zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-agent

apt install zabbix-server-mysql on ubuntu

To install Zabbix on CentOS 8/RHEL 8, connect the repository with the latest Zabbix version (you can install Zabbix from the 4.0/5.0 LTS branch or the latest Zabbix 5.2):

# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-1.el8.noarch.rpm
# dnf clean all

Suppose that nginx, MySQL/MariaDB, php and php-fpm are already installed on the server. Use the dnf (yum) package manager to install Zabbix Server and the agent:

# dnf install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-agent

Then create a database for Zabbix in MySQL (you can use PostgreSQL instead of MySQL, just replace ‘mysql’ with ‘pgsql’ in the previous commands).

Create a database and grant permissions to the user account, under which Zabbix will access the DB:

mysql -uroot
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'ZabbixP@$$w0rd';
mysql> quit;

Import the Zabbix database. Enter the password you specified when you created a user.

# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p Zabbix

Edit /etc/zabbix/zabbix_server.conf, specify the password of the user you have created.

DBPassword=Zabbix_User_Password

Since in my case nginx is used as a web server, edit nginx.conf by uncommenting the following lines:

# listen 80;
# server_name example.com;

Remove # and replace example.com with the Zabbix server hostname. In my case it is test.zabbix.local.

For Apache, edit /etc/httpd/conf.d/zabbix.conf.

Set the time zone in PHP. Uncomment the following line in /etc/zabbix/php-fpm.conf:

php_value[date.timezone] = Canada/Pacific

You can also set these PHP parameters in /etc/php.ini:

memory_limit 128M
upload_max_filesize 8M
post_max_size 16M
max_execution_time 300
max_input_time 300
max_input_vars 10000

Add the zabbix-server service to startup and run it:

# systemctl enable zabbix-server zabbix-agent nginx php7.2-fpm
# systemctl restart zabbix-server zabbix-agent nginx php7.2-fpm

Zabbix Web Interface Configuration

Now you must configure Zabbix frontent (web interface). Open the Zabbix server URL specified earlier in a browser. In my case, it is test.zabbix.local (or the domain you have specified. Remember to register it in your hosts file or on the DNS server). Make sure that OK is shown next to all installer requirements.

zabbix install script

Specify the database connection parameters and user credentials to connect to the DB. Use the username and password created earlier.

configure zabbix connection to mysql database

Specify the name of your Zabbix server. I recommend to leave the default port – TCP 10051.

By default, Zabbix uses two network ports:

  • TCP 10050 — passive agent port, which Zabbix server uses to poll clients;;
  • TCP 10051 — port through which Zabbix server receives data from clients (active agents).

Remember to open these ports on firewall. For example, on a Zabbix server running CentOS you can open the ports in firewalld using firewall-cmd:

# firewall-cmd --add-service={http,https} --permanentfirewall-cmd --add-port={10051/tcp,10050/tcp} –permanent

It is enough to open port 10050 on the agent:

# firewall-cmd --permanent --add-port=10050/tcp

Restart firewalld:

# firewall-cmd –reload

set zabbix server hostname and port 10051

Then click Next Step and Finish. After the installation, you will be prompted to login. The default login is Admin, the default password is zabbix (change it).

zabbix dashboard login webpage

Zabbix Server installation is over.

You can find step-by-step instructions on Zabbix Server installation on other OS and the guides on how to build zabbix-server from the source code or run it in docker containers on https://www.zabbix.com/download.

How to Install Zabbix Agent on Windows?

Let’s try to install a Zabbix agent on a server running Windows and add it to our Zabbix monitoring server. You can download a Zabbix agent version for Windows here: https://www.zabbix.com/download_agents. download zabbix agent for windows server

Select the agent version you need. I will choose msi (amd64) (without OpenSSL). If you are going to install Zabbix Agent on domain servers/computers using GPO or SCCM, you can download a ZIP archive with binary and configuration files.

Run the installer, accept the license agreement and specify the settings for connecting to the Zabbix server. Please note that in the “Server or Proxy for active checks” field I have entered an IP address in the IP:PORT format. Since I left a default port, I have entered 192.168.20.30:10051.

configure zabbix agent settings on windows

Click Next a couple of times, then click Install.

Make sure that the agent has been installed. Zabbix Agent must appear in the list of services.

zabbixagent windows service

Allow inbound connections from your Zabbix server IP address in Windows Firewall on your Windows host:

New-NetFirewallRule -DisplayName "ZabbixMonitoring" –RemoteAddress 192.168.20.30 -Direction Inbound -Protocol TCP –LocalPort 10050 -Action Allow

How to Add New Host on Zabbix Server?

To make sure that the agent is operable, add testnode2 host to your Zabbix server and assign some checks (templates) to it.

Note. There are 2 types of checks in Zabbix:

  • Passive — a Zabbix server requests some data from the agent;
  • Active — the agent is sending data to the server.

During the agent installation, we specified the server as IP:PORT for active checks.

You can add a new monitoring host via Zabbix web interface. Go to Configuration -> Hosts.

Click Create host and fill in the details. Note that the Host name must exactly match the device hostname or the value of the Hostname parameter in the agent configuration file.

adding new host to zabbix

Add built-in Windows templates in the Templates tab. Templates in Zabbix are sets of values, triggers, graphs and discovery rules that may be assigned to one or more hosts.

The built-in templates have “active” label, and it means that active checks will be used.

linking zabbix templates to host

Click Add. In order not to wait till the server and agent see each other (it usually takes a couple of minutes), restart Zabbix Agent service on the testnode2 and view the agent log (C:\Program Files\Zabbix Agent\zabbix_agentd.txt).

restart zabbix agent on linux

zabbix_agentd log file

The “started [active checks #1]” message means that some active checks for the host have been found on the server. Then have a look at the data that your Zabbix server received from the agent. To do it, go to Monitoring -> Latest Data and select the host in the Hosts field.

zabbix host dashboard

This section shows the latest data on the selected host or groups of hosts that have come to the Zabbix server.

Please note that in my case the Zabbix dashboard contains a notification that the BITS service is not running. The notification appeared since we assigned built-in templates to our host. One of the templates has a BITS check, and the corresponding trigger activated if the BITS service is no in the Running state.

view dashboard in zabbix

The Agent for Windows is configured.

Installing Zabbix Agent on Linux

Let’s install Zabbix Agent on Linux. To install Zabbix Agent on Ubuntu Server 18.04 using a package manager, download and the install Zabbix repo. Then install Zabbix Agent from the repository:
# wget https://repo.zabbix.com/zabbix/5.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.0-1+$(lsb_release -sc)_all.deb
# sudo dpkg -i zabbix-release_5.0-1+$(lsb_release -sc)_all.deb
# sudo apt update
# sudo apt -y install zabbix-agent

To add the repository and install Zabbix Agent on CentOS, use these commands:
# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-1.el8.noarch.rpm
# dnf clean all
# dnf install zabbix-agent

Prior to starting Zabbix agent, edit the configuration file /etc/zabbix/zabbix_agentd.conf. Specify the IP address of your Zabbix server for active checks.

Server=IP
ServerActive=192.168.20.30:10051
Hostname=testagent

Then start the agent service:

# service zabbix-agent start

Make sure that the agent has started successfully.

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

zabbix_agentd.log - cannot parse list of active checks

The line “cannot parse list of active checks” means that there are no active checks for the host on the server.

Like with Windows agent, you must add your Linux host to Zabbix . Note the Host name parameter in the host settings of your Zabbix server: it must match the Hostname parameter we have specified in the Zabbix Agent configuration file. In the config file above I specified the host name as testagent.

linking zabbix template to linux host

Restart your Zabbix agent and check the log. Make sure that data from the agent have appeared on your Zabbix server. Zabbix agent on Linux is configured.
In the next article we’ll look at agentless monitoring of host availability in Zabbix via ICMP Ping.

Время на прочтение
12 мин

Количество просмотров 52K

Система мониторинга Zabbix уже давно зарекомендовала себя как простое в установке и настройке решение, которое помогает поддерживать работоспособность серверов, сайтов, сети и т. д. Многие администраторы выбирают ее для решения своих задач благодаря стабильной работе 24/7 и гибким возможностям настройки. Несмотря на это, в сети крайне мало инструкций по настройке zabbix для видеонаблюдения, что и подтолкнуло нас к написанию этой статьи.

Зачем нужен мониторинг

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

Мы расскажем об установке сервера и агента Zabbix на Windows и Linux. Ответим на вопрос, как настроить оповещения о потере связи с камерами, высокой нагрузкой центрального процессора на сервере, проблемах с клиентскими местами, и немного коснемся стандартных шаблонов.

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

Zabbix: запуск и настройка

Итак, программное обеспечение Zabbix строится по принципу «сервер – агент».

Сервер собирает и хранит всю информацию, с его помощью можно быстро просмотреть историю мониторинга, настроенных узлов, а также добавить новые узлы, правила и т. д.

Агент устанавливается на компьютер, информация с которого вас интересует.

Серверная часть Zabbix работает под системой Linux. Так как данная статья рассчитана на людей, которые впервые столкнусь с данной ОС, рекомендуем начать с операционной системы Ubuntu, она более дружелюбна к новичкам. Всю информацию по ней можно найти в официальном русском сообществе ubuntu.ru. Там также можно посмотреть инструкцию по установке на ПК или на виртуальную машину, например Oracle VM VirtualBox.

После запуска системы необходимо сразу же обновить пакеты вашей ОС.

Для этого открываем консоль ctrl + alt + t и вводим команду

sudo apt update && sudo apt upgrade

Возможно, придется несколько минут подождать, пока будут обновлены все пакеты.

Также нам понадобится текстовый редактор:

sudo apt-get install mcedit

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

sudo locale-gen ru_RU

Для работы с zabbix нужно установить базу данных MySQL и веб-сервер Apache:

sudo apt install mysql-server mysql-client apache2

Установим пароль для пользователя root от MySQL.

Теперь установим нужные PHP-зависимости:

sudo apt install php-mbstring php-bcmath php-xml

И перезапустим Apache:

sudo service apache2 reload

Далее можно приступить к установке самой системы мониторинга. Пошаговая инструкция описана на официальном сайте Zabbix, давайте пройдем их вместе:

1) Выбираем нашу платформу для сервера Zabbix. В качестве базы данных используем MySQL.

2) Скачиваем и устанавливаем репозиторий Zabbix:

wget http://repo.zabbix.com/zabbix/3.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.4-1+xenial_all.deb
sudo dpkg -i zabbix-release_3.4-1+xenial_all.deb
sudo apt update

3) Устанавливаем zabbix-server-mysql, zabbix-frontend-php и zabbix-agent,

sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-agent

4) Cоздаем базу данных MySQL для Zabbix:

sudo mysql -uroot –p
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'пароль';
mysql> quit

Теперь заполняем базу данных, это займет некоторое время:

cd /usr/share/doc/zabbix-server-mysql/
zcat create.sql.gz | mysql -uzabbix -p zabbix

5) Настройка конфигураций сервера Zabbix:

Откроем через текстовый редактор конфигурационный файл

sudo mcedit /etc/zabbix/zabbix_server.conf

И заполним следующие поля:

DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=пароль

6) Следующие 2 шага поменяем местами.

Установим временной пояс в настройках веб-сервера:

sudo mcedit /etc/apache2/conf-available/zabbix.conf

<IfModule mod_php7.c>
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
php_value date.timezone Europe/Moscow
</IfModule>
<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/Moscow
</IfModule>

И перезапустим его:

sudo service apache2 reload

7) Готово, можно запускать сервер Zabbix:

sudo systemctl start zabbix-server
sudo systemctl enable zabbix-server

Делаем небольшую проверку:

systemctl status zabbix-server zabbix-agent

Должно появиться следующее сообщение:

Настройка веб-интерфейса Zabbix

Теперь можно зайти на web-интерфейс Zabbix, для этого в браузере нужно ввести:

http://localhost/zabbix

Нас поприветствует мастер настройки.

По большей части тут будем нажимать next.

Здесь нужно ввести установленный ранее пароль.

В конце появится окно авторизации, по умолчанию пользователь – Admin, пароль – zabbix.

Меняем язык через настройки пользователя.

Заходим в профиль.

Выбираем русский язык.

Меняем пароль с zabbix на свой и нажимаем Update.

Настройка мониторинга, шаблоны, триггеры

Zabbix-сервер

Теперь перейдем к основному пункту, а именно настройке мониторинга.

Заходим в «Настройка» — «Группы узлов сети».

Тут мы увидим заранее созданные системные группы, удалять их не надо.

Нажимаем «Создать группу узлов сети». Заполняем имя группы, например Networks. Узлы пока не добавляем. Нажимаем «Добавить».

Нам также понадобится группа для наших шаблонов, нажимаем «Создать группу узлов сети», в поле «Имя» пишем: Templates for Networks. Нажимаем «Добавить».

Шаблоны

Теперь перейдем к шаблонам: «Настройка» – «Шаблоны» – «Создать шаблон».

Так как мы работаем с IP-камерами и серверами, первым шаблоном нужно сделать проверку узла по пингу.

Вводим имя шаблона, например Ping Template. Добавляем нашу группу Templates for Networks и можем добавить описание по кнопке «Добавить».

Теперь мы можем выбрать группу для шаблонов, чтобы видеть наши шаблоны.

Добавляем в шаблон элемент данных, для этого нажимаем «Элементы данных» – «Создать элементы данных».

В поле «Имя» указываем Ping.

«Ключ» – нажимаем «Выбрать» и выбираем первый ключ. Он будет возвращать 1 в случае удачного пинга и 0 в случае неудачного, нам этого достаточно.

Все параметры установлены по умолчанию, поэтому удаляем все, что находится в квадратных скобках:

«Тип информации» – выбираем «Числовой (целое положительное)».

Поле «Единица измерения» оставляем пустым.

«Интервал обновления» – тут выбираем интервал пинга, например 60 s.

«Период хранения истории» – для уменьшения размера базы данных поставим 1 d.

«Период хранения динамики изменений» – 5 d.

Нажимаем «Добавить».

А также необходимо знать процент потерянных пакетов.

Добавим сразу еще один элемент – процент потерянных пакетов.

Нажимаем «Создать элемент данных».

В поле «Имя» указываем lost packet.

«Ключ» – нажимаем «Выбрать» и выбираем второй ключ.

Также удаляем все, что находится в квадратных скобках.

«Тип информации» – «Числовой (с плавающей точкой)».

«Единица измерения» – вписываем «%».

«Интервал обновления» – 60 s.

«Период хранения истории» – 1 d.

«Период хранения динамики изменений» – 5 d.

Нажимаем «Добавить».

Графики

Чтобы визуализировать информацию, нам понадобятся графики. Выбираем «Графики» и нажимаем «Создать график».

В поле «Имя» вводим Ping.

Снимаем галочку с «Отображать триггеры».

«Элементы данных» – «Добавить» – выбираем наш Ping.

Также добавляем lost packet.

Нажимаем «Добавить».

Настройка мониторинга удаленного сервера

Теперь приведем пример настройки мониторинга удаленного сервера

Теперь для примера добавим наш удаленный сервер, который имеет белый IP-адрес.

Заходим «Настройка» – «Узлы сети» – «Создать узел сети».

Задаем название, IP-адрес, описание (не обязательно) и переходим в добавление шаблона.

В шаблонах, в поле «Соединить с новыми шаблонами», выбираем наш шаблон для сети и дважды нажимаем «Добавить».

В узлах сети видно добавление нашего узла. У него есть два элемента данных, график и активное состояние.

Теперь специально отключим сеть на несколько минут и посмотрим графики.

«Мониторинг» – «Графики» – выбираем нашу группу, узел и график.

Настройка отправки

Чтобы получать уведомления о проблемах в работе системы, настроим отправку уведомлений

Заходим в «Администрирование» – «Способы оповещений».

Выделяем и удаляем стандартные способы.

Теперь создаем новый способ с помощью кнопки «Создать способ оповещения».

Заполняем настройки нашего smtp-сервера.

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

Переходим в «Администрирование» – «Пользователи». Выбираем своего пользователя: Admin – «Оповещения» – «Добавить» – в поле «Отправлять на» вводим свою почту – «Добавить».

Теперь создадим триггер, при срабатывании которого нужно будет выполнять отправку email-сообщения.

«Настройка» –> «Узлы сети» –> «Триггеры» –> «Создать триггер».

Добавим наш элемент.

«Имя» – вводим Ping fail.

«Важность» выставляем самостоятельно, здесь «Средняя».

«Добавить».

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

«Настройка» – «Действия» – «Источник события» – «Триггеры» – «Создать действие».

Вводим имя действия, удаляем стандартное условие и добавляем своё, тип «Триггер» – «Выбрать».

В поле «Новое условие» нажимаем «Добавить» и переходим во вкладку «Операции».

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

«Длительность шага операции по умолчанию» – ставим 10 m.

«Отправлять пользователям» – выбираем нашего пользователя.

«Отправлять только через» – email.

Добавляем наше действие.

Выключаем сеть для проверки.

Заходим в «Мониторинг» – «Проблемы» и видим нашу ошибку.

Проверяем почту и видим письмо о проблеме.

После получения письма и устранения проблемы можно в «Мониторинге проблем» нажать на «Нет» в столбце «Подтверждено» и подтвердить событие, поставив себе какую-нибудь заметку.

Zabbix-клиент

Выше показана малая часть работы с zabbix, теперь приступаем к самому интересному. Наша цель – поставить на контроль сервер, а именно нагрузку на центральный процессор.

Итак, приступим, с этим нам поможет zabbix-agent.

Windows Agent

Начнем с Windows-агента.

Его можно скачать с официального сайта Zabbix, выбрав zabbix-agent для windows.

После необходимо создать папку, в которой будет лежать наш агент, например: C:/Program Files/zabbix.

В скачанном файле перейдем в папку bin и в зависимости от разрядности вашей операционной системы перейдем в папку win32 или win64. Далее описаны действия для 64-битной ОС:

/zabbix_agents_3.4.6.win.zip/bin/win64 и с этой папки копируем 3 файла zabbix_agentd, zabbix_get и zabbix_sender в папку C:/Program Files/zabbix; далее копируем папку /zabbix_agents_3.4.6.win.zip/conf в папку C:/Program Files/zabbix.

Должно получиться вот так:

Теперь нужно настроить конфигурационный файл в C:/Program Files/zabbix/conf/. Открываем zabbix_agentd.win.conf и меняем следующие строки:

LogFile=c:/zabbix_agentd.log
меняем на
LogFile=C:/Program Files/zabbix/zabbix_agentd.log;

# LogFileSize=1
меняем на
LogFileSize=100;

# EnableRemoteCommands=0
меняем на
EnableRemoteCommands=1;

Server=127.0.0.1
указываем IP-адрес нашего сервера, на котором стоит zabbix-server
Server=192.168.1.105;

# ListenPort=10050
меняем на
ListenPort=10050;

ServerActive=127.0.0.1
указываем IP-адрес нашего сервера, на котором стоит zabbix-server
ServerActive=192.168.1.105.

Сохраняем.

Далее нам нужно открыть командную строку в режиме администратора.

Устанавливаем службу:

"C:/Program files/zabbix/zabbix_agentd.exe" --config
"C:/Program files/zabbix/conf/zabbix_agentd.conf" –install.

Запускаем службу:

"C:/Program files/zabbix/zabbix_agentd.exe" --config
"C:/Program files/zabbix/conf/zabbix_agentd.conf" –start.

Теперь нужно создать правило для брандмауэра.

Заходим в «Панель управления» – «Система и безопасность» – «Брандмауэр защитника Windows» – «Дополнительные параметры» – «Правила для входящих подключений» – «Создать правило». Выбираем «Для программы» – «Далее» – «Путь программы». Указываем путь к zabbix_agentd – «Далее» – «Разрешить подключение» – «Далее». Оставляем галочки на всех профилях – «Далее» – «Имя» – zabbix-agent – «Далее».

Готово.

Linux Agent

Для Linux установка zabbix-агента намного проще. Тем более что часть работы уже завершена на этапе установки zabbix-сервера.

На сервере видеонаблюдения нужно скачать и установить репозиторий zabbix:

wget http://repo.zabbix.com/zabbix/3.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.4-1+xenial_all.deb
sudo dpkg -i zabbix-release_3.4-1+xenial_all.deb
sudo apt update

Затем установить клиент

sudo apt install zabbix-agent

Настройка конфигурационного файла точно такая же, как и для windows-версии, за исключением параметра LogFile, который трогать не нужно:

sudo mcedit /etc/zabbix/zabbix_agentd.conf

Перезапускаем zabbix-agent:

sudo /etc/init.d/zabbix-agent restart

Готово.

Получение информации с agent

Узнаем имя узла, на котором стоит zabbix-agent. Для Windows это можно посмотреть в свойствах системы.

Для Linux можно воспользоваться командой «traceroute IP-адрес».

Теперь переходим в веб-интерфейс zabbix-сервера. Заходим в «Настройка» – «Узлы сети» – «Создать узел сети».

«Имя узла сети» – указываем имя нашего узла, например Oleg-PC.

«Видимое имя» – указываем понятное для нас имя, например Server Oleg-PC.

«Интерфейсы агента» – вводим IP-адрес нашего агента 192.168.1.100.

Переходим во вкладку «Шаблоны» и в поле «Соединить с новыми шаблонами» нажимаем «Выбрать».

Воспользуемся стандартным шаблоном.

Выбираем группу Templates/Operating Systems и выделяем шаблон Template OS Windows. Дважды нажимаем «Добавить».

Аналогично настраивается получение информации от сервера на базе Linux.

Так получаем отображение двух серверов.

Заходим в «Мониторинг» – «Графики», выбираем нашу группу Networks – узел сети server-ubuntu и смотрим, какие графики нам доступны.

На Windows-сервере смотрим так же.

У нас появились стандартные триггеры, по которым можно настроить действия. Например:

зайдем в «Настройка» – «Действия» – «Источник событий» – «Триггеры» – «Создать действие».

«Имя» – High load CPU.

Удалим стандартное условие и добавим новое.

В «Операции», так же как и раньше, настроим получение сообщений email.

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

Полную инструкцию по агенту можно получить тут.

Шаблоны для мониторинга сервера

Стандартные шаблоны могут очень помочь сэкономить время. Но лучше все-таки пользоваться своими шаблонами.

Например, создадим шаблон для мониторинга количества свободной памяти.

Добавим еще одну группу с названием My test server и шаблон с названием Test agent.

Поместим нашу группу в шаблон и создадим в нем новый элемент данных.

«Имя» – меняем например на My Free memory.

«Ключ» – выбираем vm.memory.size[<mode>], вместо <mode> ставим available.

Посмотреть полный список режимов можно в официальной документации.

«Тип информации» – «Числовой» (целое положительное).

«Единица измерения» – «B» (байты).

«Интервал обновления» – 10 m.

«Период хранения истории» – ставим количество дней, которое хотим хранить историю, например 3 d.

«Период хранения динамики изменений» – меняем на 10 d.

Нажимаем «Добавить», добавляем триггер.

«Имя» – Not enough free memory.

«Важность» – высокая.

В поле «Выражение» добавляем наш элемент данных, далее выбираем функцию «Последнее (самое новое) T значение < N» (значение N ставим «1000000000»).

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

После добавления элемента данных нажимаем «Добавить».

Присоединяем этот шаблон к нашему узлу сети, как делали это ранее.

Для наглядности создаем график, название для которого можно задать на русском языке, например «Свободная память».

Создаем действие с отправкой уведомления на почту.

Мониторинг доступности камер

В системе видеонаблюдения «Линия» имеется возможность посылать простые GET-запросы серверу и получать от него ответ, что окажет нам заметную помощь в мониторинге системы. С полной спецификацией можно ознакомиться по ссылке: devline.ru/aboutweb.

Давайте рассмотрим запрос на получение отдельного кадра с камеры № 9 на нашем сервере.

Общий вид запроса (нумерация камер с 0)

http://localhost:9786/cameras/8/image

Переходим в меню «Настройка» – «Шаблоны». У шаблона нажмем на «Веб», далее «Создать веб-сценарий».

С полным описанием полей можно ознакомиться тут.

Заполняем поля:

«Имя» – Check camera office;

«Интервал обновления» – 5 m;

«Попыток» – 3;

«Агент» – Zabbix.

Переходим в раздел «Шаги» и добавляем шаг со следующими характеристиками:

«Имя» – придумываем имя шага;

«URL» – из спецификации берем запрос на получение кадра: 127.0.0.1:9786/cameras/8/image»;

«Следовать перенаправлениям» – снимаем галочку;

«Загружать только заголовки» – отмечаем;

«Время ожидания» – 15 s;

«Требуемые коды состояния» – 200.

Переходим в раздел «Аутентификация»:

«HTTP-аутентификация» – простая;

«Пользователь» и «Пароль» – данные для подключения к серверу «Линия».

Нажимаем «Добавить».

Переходим в «Мониторинг» – «Веб».

Видим наш веб-мониторинг.

Теперь в этом шаблоне создадим триггер.

«Имя» – указываем имя для нашего триггера.

«Выражение» – создаем выражение с элементом данных Failed step of scenario – Check camera office.

«Функция» – «Последнее (самое новое) T значение NOT N».

«N» – устанавливаем 200.

Нажимаем «Добавить».

Далее настроим действие с нашим триггером.

Выключим камеру и проверим почту.

«Линия Облако»

Также дополнительно мониторинг доступности сервера можно настроить с помощью бесплатного сервиса «Линия Облако». Для этого необходимо зарегистрировать сервер на базе программного обеспечения «Линия» в сервисе.

Для этого открываем «Наблюдательный пост», затем заходим в меню «Администрирование», во вкладке «Сеть» выбираем пункт «Сервисы».

Следующим шагом необходимо поставить галочку «Включить Dynamic DNS», ввести действующий адрес электронной почты, желаемое доменное имя и нажать кнопку «Зарегистрировать».

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

После ввода кода необходимо нажать кнопку «Подтвердить».

На этом процесс включения сервиса Dynamic DNS и регистрации доменного имени завершен.

Далее заходим в сервис «Линия Облако» и переходим во вкладку «Мониторинг». Здесь ставим галочку «Включить мониторинг» и вводим email, на который будут приходить письма. Также можно указать телефонный номер для отправки sms-сообщений (стоимость одного СМС составит 3 рубля).

Реакции

Мониторинг камер можно настроить с помощью реакций в самом программном обеспечении «Линия».

Для этого нужно зайти в «Администрирование» – «Реакции» – «Добавить реакцию».

Время – оставляем «Всегда».
Условие – «Пропал сигнал с камеры».
Действие – «Отправить электронное письмо».

Заполняем свою почту, выбираем, с какой камеры отправлять кадры, и ставим интервал в 5 минут.

Zabbix и видеонаблюдение

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

Также предлагаем поделиться в комментариях своим опытом. Какие инструменты для мониторинга сети/серверов/роутеров/сайтов вы используете?

Zabbix – это система мониторинга с открытым исходным кодом корпоративного уровня. Zabbix в настоящее время является одной из самых популярных и функциональных бесплатных систем мониторинга. Благодаря простой установке и настройке Zabbix можно использовать для мониторинга больших инфраструктур с сотнями серверов, а также для небольших конфигураций. В этой статье мы увидим, как в основном установить и настроить сервер Zabbix 4.4 с веб-интерфейсом на основе Linux Ubuntu и CentOS, установить агенты Zabbix на сервер Windows и Linux и добавить новые хосты в систему мониторинга.

Общий интерфейс Zabbix сервера показан на скриншоте ниже.

веб-интерфейс системы мониторинга zabbix

Zabbix прост в установке и настройке, он написан на C (сервер, прокси и агент) и PHP (интерфейс). Zabbix Server и Zabbix Proxy могут работать только в системах Linux. Агент может быть установлен на большом количестве поддерживаемых операционных систем и платформ.

Установка Zabbix сервера состоит из:

  • бинарный zabbix_server (обычно работает как служба);
  • MySQL (MariaDB) / база данных PostgreSQL;
  • Веб-сервер Apache2 / Nginx с менеджером PHP;
  • Файлы внешнего интерфейса самого сайта (.php, .js, .css и т.д.).

Обычно схема работы выглядит так:

  1. Агент Zabbix отправляет данные на сервер
  2. Сервер Zabbix получает и обрабатывает данные.
  3. Если полученные данные соответствуют указанным условиям, срабатывает триггер;
  4. Активный триггер сигнализирует о проблеме. Уведомление появляется на веб-интерфейсе (сайте) и, в зависимости от конфигурации, отправляется сообщение по почте и выполняются некоторые действия (например, перезапуск отслеживаемой службы).

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

Установка Zabbix Server в Linux (Ubuntu, CentOS)

В этой статье мы рассмотрим пример установки Zabbix Server 4.4 в Linux (на примере Ubuntu Server 18.4 и CentOS) через диспетчер пакетов.

Перейдите на страницу загрузки https://www.zabbix.com/download и выберите репозиторий, соответствующий вашему дистрибутиву Linux. Есть готовые пакеты для всех популярных дистрибутивов.

Например, чтобы установить Zabbix на Ubuntu 18.04, вам нужно выбрать последовательно :

Версия Zabbix (4.4) -> Дистрибутив операционной системы (Ubuntu) -> Версия операционной системы (18.04 Bionic) -> База данных (MySQL) -> Веб-сервер (Nginx или Apache).

инструкция по установке zabbix, получить репозитории

Скачайте и добавьте репозиторий:

# wget https://repo.zabbix.com/zabbix/4.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.4-1+bionic_all.deb
# dpkg -i zabbix-release_4.4-1 + bionic_all.deb
# соответствующее обновление

Теперь вы можете установить необходимые пакеты:

# wget https://repo.zabbix.com/zabbix/4.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.4-1+bionic_all.deb
# dpkg -i zabbix-release_4.4-1+bionic_all.deb
# apt update

установка zabbix-сервера на Linux Ubuntu

Чтобы установить Zabbix на CentOS 8 / RHEL 8, вам необходимо подключить репозиторий с текущей версией Zabbix (вы можете установить Zabbix из ветки 4.0 LTS или из последней версии Zabbix 4.4):

# rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/8/x86_64/zabbix-release-4.4-1.el8.noarch.rpm
#dnf очистить все

Предположим, что на сервере уже установлены nginx, MySQL / MariaDB, php и php-fpm. Теперь через диспетчер пакетов мы установим сам Zabbix сервер и агент:

# apt install zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-agent

Осталось создать базу данных для Zabbix в MySQL (можно использовать PostgreSQL вместо MySQL, просто замените «mysql» на «pgsql» в командах’).

Создайте базу данных и предоставьте права пользователю, от которого Zabbix будет обращаться к базе данных:

mysql -uroot
mysql> создать набор символов zabbix для базы данных utf8 сопоставление utf8_bin;
mysql> предоставить все привилегии на zabbix. * zabbix @ localhost, идентифицированному 'YourPassword';
mysql> выход;

Импортируйте базу данных Zabbix. Вам нужно будет ввести пароль, который вы указали при создании пользователя.

# rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/8/x86_64/zabbix-release-4.4-1.el8.noarch.rpm
# dnf clean all

Отредактируйте файл конфигурации /etc/zabbix/zabbix_server.conf, укажите пароль вновь созданного пользователя.

DBPassword = Zabbix_User_Password

Поскольку в моем случае nginx действует как веб-сервер, вам необходимо отредактировать nginx.conf, раскомментировав следующие строки

# слушать 80; # имя_сервера example.com;

Удалите # и измените example.com на домен, с которым вы хотите получить доступ к Zabbix, в моем случае это

# dnf install zabbix-server-mysql zabbix-web-mysql zabbix-agent

.

Для Apache вам необходимо отредактировать файл конфигурации /etc/httpd/conf.d/zabbix.conf .

Установим часовой пояс на PHP. В файле /etc/zabbix/php-fpm.conf раскомментируйте строку

php_value [date.timezone] = Европа / Москва

Убедитесь, что время на Zabbix сервере синхронизировано с надежным источником NTP.

Кроме того, вы можете установить для следующих параметров PHP значение

mysql -uroot
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'ВашПароль';
mysql> quit;

:

memory_limit 128M upload_max_filesize 8M post_max_size 16M max_execution_time 300 max_input_time 300 max_input_vars 10000

Добавьте сервис zabbix-server в автозапуск и запустите его:

# systemctl включить zabbix-server zabbix-agent nginx php7.2-fpm
# systemctl перезапускает zabbix-сервер zabbix-agent nginx php7.2-fpm

Настройка веб-интерфейса Zabbix

Теперь вам нужно настроить веб-интерфейс Zabbix. Откройте в браузере указанный ранее URL-адрес сервера zabbix. В моем случае это test.zabbix.local (или указанный вами домен. Не забудьте зарегистрировать его в файле hosts или на своем DNS-сервере).

веб-установщик zabbix

Убедитесь, что все требования установщика в порядке.

предварительные условия для управления zabbix

Укажите данные для подключения к базе данных. Используйте созданное ранее имя пользователя и пароль.

данные для подключения к базе данных zabbix

Введите имя сервера Zabbix. Рекомендую оставить порт стандартным – TCP 10051.

Система Zabbix по умолчанию использует два порта:

  • TCP 10050 – порт пассивного агента, по которому zabbix сервер опрашивает клиентов;
  • TCP 10051 – это порт, на котором сервер zabbix получает данные от клиентов (активный агент).

Не забудьте открыть эти двери. Например, на сервере Zabbix на базе CentOS вы можете открывать порты в firewalld с помощью firewall-cmd:

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p Zabbix

А на агенте нужно просто открыть 10050:

test.zabbix.local

Не забудьте перезагрузить firewalld:

/etc/php.ini

имя и порты zabbix сервера

Затем нажмите «Далее» и «Готово». После завершения установки вам будет предложено войти в систему. По умолчанию логин

# systemctl enable zabbix-server zabbix-agent nginx php7.2-fpm
# systemctl restart zabbix-server zabbix-agent nginx php7.2-fpm

, пароль

# firewall-cmd --add-service={http,https} --permanentfirewall-cmd --add-port={10051/tcp,10050/tcp} –permanent

(замените его).

авторизация в веб-интерфейсе в zabbix

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

На этом установка Zabbix Server завершена.

На странице https://www.zabbix.com/download представлены подробные инструкции по установке Zabbix Server в других операционных системах, а также инструкции о том, как создать zabbix-сервер из исходного кода или запустить его в контейнерах докеров.

Вы можете настроить Zabbix для аутентификации пользователей через Active Directotry LDAP.

Установка Zabbix Agent в Windows

Давайте попробуем установить агент Zabbix на сервер Windows и добавить его на наш сервер мониторинга Zabbix. Вы можете скачать версию Zabbix агента для Windows здесь: https://www.zabbix.com/download_agents.

zabbix агенты для windows

Выберите необходимую версию Агента для Windows. Я выберу формат msi (amd64) (без OpenSSL). Если вы планируете установить агент zabbix на сервер / компьютер домена через групповую политику или SCCM, вы можете загрузить zip-архив с двоичными файлами и файлами конфигурации.

Запустите программу установки, примите лицензионное соглашение, введите необходимые данные. Помните, что в поле «Сервер или прокси для активных элементов управления» я указал IP-адрес в формате IP: PORT. Поскольку я оставил последовательный порт, пишу IP: 10051.

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

Затем нажмите «Далее» и «Установить» еще пару раз.

После этого убедимся, что наш агент установлен. Сервис Zabbix Agent должен появиться в списке сервисов.

служба агента zabbix в Windows

На клиенте Windows вам необходимо разрешить входящие соединения с IP-адреса Zabbix сервера в брандмауэре Windows:

# firewall-cmd --permanent --add-port=10050/tcp

Добавление устройства на Zabbix-сервере

Чтобы убедиться, что агент работает, вам нужно добавить хост testnode2 к Zabbix серверу и назначить ему элементы управления).

Заметка. В Zabbix есть 2 типа элементов управления:

  • Пассивный: Zabbix сервер запрашивает любые данные у агента;
  • Активно: агент отправляет данные на сервер;

При установке агента мы указали сервер в формате IP: PORT только для активных элементов управления.

Добавление нового устройства мониторинга в Zabbix выполняется через веб-интерфейс. Перейдите в Configuration -> Hosts.

добавить хосты в мониторинг Zabbix

Нажмите Create Host и заполните данные. Обратите внимание, что имя хоста хоста должно точно соответствовать имени хоста машины или значению параметра Hostname в конфигурации агента.

добавление устройства Windows на Zabbix сервер

На вкладке «Шаблоны» добавьте несколько встроенных шаблонов Windows. Модели Zabbix – это наборы значений, триггеров, графиков и правил обнаружения, которые могут быть назначены одному или нескольким хостам.

Эти встроенные шаблоны представляют собой «активные» суффиксы, что означает, что будут использоваться активные элементы управления.

шаблоны zabbix для Windows

Щелкните Добавить. Чтобы не ждать, пока сервер и агент увидят друг друга (обычно это занимает пару минут), перезапустите службу Zabbix Agent на testnode2 и проверьте журнал агента (C: \ Program Files \ Zabbix Agent \ zabbix_agentd.txt).

перезапустите службу агента Zabbix

журнал zabbix_agentd.txt

Сообщение «запущено [активные проверки # 1]» указывает на то, что на сервере были обнаружены активные проверки для этого хоста. Теперь давайте посмотрим на данные, которые пришли на Zabbix сервер от агента. Для этого в Zabbix перейдите в Мониторинг -> Последние данные и выберите нужный хост в поле Хост.

проверьте прием данных от хоста в zabbix

данные устройства в веб-интерфейсе zabbix

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

Обратите внимание, что панель инструментов Zabbix содержит уведомление о том, что служба BITS не запущена. Это уведомление появляется, потому что мы назначили нашему хосту предопределенные шаблоны. В одном из шаблонов был монитор службы BITS и соответствующий триггер, который срабатывает, если служба BITS не находится в состоянии выполнения.

события в панели управления zabbix

На этом настройка агента Windows завершена.

Установка Zabbix Agent в Linux

Теперь давайте установим агент Zabbix в Linux. Чтобы установить агент Zabbix на Ubuntu Server 18.04 с помощью диспетчера пакетов, вам необходимо загрузить и установить репозиторий Zabbix. Затем установите агент zabbix из репозитория:
# wget https://repo.zabbix.com/zabbix/4.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.4-1+bionic_all.deb
# dpkg -i zabbix-release_4.4-1 + bionic_all.deb
# соответствующее обновление
# apt установить zabbix-agent

В CentOS, чтобы добавить репозиторий и установить агент zabbix, используйте команды:
# rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/8/x86_64/zabbix-release-4.4-1.el8.noarch.rpm
#dnf очистить все
# dnf установить zabbix-agent

Перед запуском агента zabbix вам необходимо отредактировать файл конфигурации /etc/zabbix/zabbix_agentd.conf. В нем нужно указать IP-адрес Zabbix сервера для активных проверок.

Сервер = IP ServerActive = IP: 10051 Имя хоста = testagent

Затем запустите службу агента:

# firewall-cmd –reload

Убедитесь, что агент успешно запустился.

Admin

установка агента zabbix в linux ubuntu

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

Как и в случае с агентом Windows, вам необходимо добавить свой хост Linux в настройках Zabbix сервера. Обратите внимание на параметр Hostname в конфигурации хоста в интерфейсе Zabbix сервера: этот параметр должен соответствовать параметру Hostname, который мы указываем в конфигурации Zabbix агента. В приведенной выше конфигурации я указал имя хоста testagent.

добавить Ubuntu в мониторинг zabbix

23

Перезапустите агент Zabbix и проверьте реестр.

журнал zabbix_agentd

Убедитесь, что данные агента появились на Zabbix сервере.

данные с сервера Linux появились в веб-интерфейсе zabbix

На этом настройка агента Zabbix в системе Linux завершена. В следующей статье мы рассмотрим безагентный мониторинг доступности хостов в Zabbix с помощью ICMP Ping.

Источник изображения: winitpro.ru

  • Zabbix установка и настройка на windows сервер
  • Zabbix мониторинг журнала событий windows
  • Zabbix как установить на windows server
  • Zabbix агент для windows скачать
  • Zabbix agent windows server 2003