Zabbix agent windows запуск

Опубликовано:

Используемые термины: Zabbix, Windows.

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

Загрузка агента с официального сайта
Установка агента
    Из пакета MSI
    Из архива
Настройка брандмауэра
Проверка подключения к агенту
Другие статьи про Zabbix

Загрузка агента

Переходим на страницу загрузки агента Zabbix и выбираем платформу операционной системы (x32 или x64) и версию агента, например:

Выбираем версию агента zabbix и платформу Windows

* помимо этого, мы можем выбрать вариант дистрибутива: с использованием шифрования или нет, а также файл установки — msi пакет или архив. В данном примере мы выбрали версию 5.

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

Скачиваем агента Zabbix по ссылке Download

Ждем окончания загрузки и переходим к установке.

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

В зависимости от загрузки типа пакета (MSI или архив) будут разные методы установки. Рассмотрим оба.

Установка из MSI-пакета

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

Принимаем лицензионное соглашение, установив галочку I accept the terms in the License Agreement и нажимаем Next:

В следующем окне оставляем имя компьютера, на который устанавливается агент и вводим имя или IP-адрес сервера zabbix, после кликаем по Next:

Указываем имя компьютера и сервера Zabbix

* в данном примере имя нашего компьютера Windows PC, а сервера — zabbix-server.dmosk.local.

Выбираем компоненты, которые хотим установить — можно просто оставить все по умолчанию и нажимаем Next:

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

Подтверждаем установку, кликая по Install:

Ждем завершения процесса — агент установлен.

Установка из архива

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

Распаковываем содержимое скачанного архива в каталог, где будут находиться файлы программы, например в C:\Program Files\Zabbix Agent. В итоге, у нас получится:

Открываем WordPad от администратора и в нем открываем конфигурационный файл conf/zabbix_agentd.conf и правим опцию для сервера zabbix — находим строку:

Server=127.0.0.1

… и меняем ее на:

Server=zabbix-server.dmosk.local

* где zabbix-server.dmosk.local — имя сервера Zabbix.

Теперь открываем командную строку от администратора и выполняем команду для установки агента:

«C:\Program Files\Zabbix Agent\bin\zabbix_agentd.exe» —config «C:\Program Files\Zabbix Agent\conf\zabbix_agentd.conf» —install

* где C:\Program Files\Zabbix Agent — папка, куда мы распаковали архив.

Мы должны увидеть что-то на подобие:

zabbix_agentd.exe [468]: service [Zabbix Agent] installed successfully
zabbix_agentd.exe [468]: event source [Zabbix Agent] installed successfully

Теперь открываем службы Windows и находим «Zabbix Agent» — кликаем по ней правой кнопкой мыши и выбираем Запустить:

Запуск агента Zabbix в службах Windows

Установка завершена.

Настройка брандмауэра

Если в нашей системе работает брандмауэр Windows, необходимо разрешить порт 10050 или приложение zabbix agent.

Для этого переходим в Панель управленияСистема и безопасность — Брандмауэр Windows (или вводим команду control /name Microsoft.WindowsFirewall). Кликаем по ссылке Разрешение взаимодействия с приложением или компонентов в брандмауэре Windows — добавляем наше приложение zabbix_agentd в исключение.

Это же действие можно выполнить в powershell — запускаем ее от администратора и вводим команду:

New-NetFirewallRule -DisplayName «Разрешить приложение Zabbix Agent» -Direction Inbound -Action Allow -EdgeTraversalPolicy Allow -Program «C:\Program Files\Zabbix Agent\bin\zabbix_agentd.exe»

Или мы можем добавить в исключение порт. Это можно сделать также из командной строки poweshell:

New-NetFirewallRule -DisplayName «Разрешить порт 10050 для Zabbix» -Direction Inbound -Action Allow -EdgeTraversalPolicy Allow -Protocol TCP -LocalPort 10050

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

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

telnet 192.168.1.15 10050

* где 192.168.1.15 — IP-адрес компьютера с установленным Zabbix.

Мы должны увидеть 

Connected to nr-fs-06.
Escape character is ‘^]’.

.. и через небольшой интервал времени:

Connection closed by foreign host.

Но если агент не запущен или не работает, мы увидим ошибку:

telnet: connect to address …: Connection refused

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

Читайте также

Другие инструкции по Zabbix:

1. Установка и настройка Zabbix-агента на CentOS

2. Установка и начальная настройка сервера мониторинга Zabbix на Ubuntu Server

3. Настройка сервера Zabbix 5 на CentOS 8

Рассмотрим как установить и настроить Zabbix-агенты для наблюдения за системами ОС Windows и Linux. По данной статье у меня развернут Zabbix-сервер 3.2.5, соответственно все агенты будут устанавливаться версии 3.2.

Скачиваем с оф. сайта Zabbix-агента для Windows систем.

Распаковываем скачанный архив и запускаем Командную строку от администратора. Переходим в каталог с установочными файлами агента (для корректной работы агента, учитываем разрядности системы):

cd C:\zabbix_agents_3.2.0.win\bin\win64

Для установки одиночного экземпляра Zabbix-агента с файлом конфигурации c:\zabbix_agentd.conf по-умолчанию, выполняем:

zabbix_agentd.exe --install

Так же есть возможность при установке указать путь к файлу конфигурации, отличный от c:\zabbix_agentd.conf. для этого выполняем:

zabbix_agentd.exe --config <полный_путь_к_файлу_конфигурации> --install

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

zabbix_agentd.exe --config <файл_конфигурации_для_экземпляра_1> --install --multiple-agents
zabbix_agentd.exe --config <файл_конфигурации_для_экземпляра_2> --install --multiple-agents
...
zabbix_agentd.exe --config <файл_конфигурации_для_экземпляра_N> --install --multiple-agents
Настройка Zabbix-агента

Теперь нужно выполнить настройку файла конфигурации агента. Шаблон конфигурации находится в установочном каталоге агента в папке conf, файл zabbix_agentd.win.conf.

Если была выполнена обычная установка, то копируем шаблон zabbix_agentd.win.conf в корень диска C:\ и переименовываем файл в zabbix_agentd.conf.

Если была выполнена установка с указанием пути к файлу конфигурации, то копируем шаблон zabbix_agentd.win.conf в папку которую указывали при установке Zabbix-агента и переименовываем файл в zabbix_agentd.conf.

Выполняем настройку файла конфигурации. Приводим следующие параметры в файле к виду:

Server=[ip-адрес Zabbix-севера]
ServerActive=[ip-адрес Zabbi-сервера]
HostnameItem=system.hostname
Запуск службы Zabbix-агента

Запускаем службу Zabbix-агента. Пуск Панель управленияАдминистрированиеСлужбы. Находим службу Zabbix Agent и нажимаем Запустить.

Запустить службу можно так же из командной строки. Для запуска одиночного экземпляра Zabbix-агента с файлом конфигурации по умолчанию:

zabbix_agentd.exe --start

Для запуска одиночного экземпляра Zabbix-агента с отличным от умолчания файлом конфигурации:

zabbix_agentd.exe --config <ваш_файл_конфигурации> --start

Для запуска одного из нескольких экземпляров Zabbix-агента:

zabbix_agentd.exe --config <файл_конфигурации_этого_экземпляра> --start --multiple-agents
Остановка службы Zabbix-агента

Остановка службы Zabbix-агента. Пуск Панель управленияАдминистрированиеСлужбы. Находим службу Zabbix Agent и нажимаем Остановить

.

Остановка Zabbix-агента, который запущен с файлом конфигурации по умолчанию:

zabbix_agentd.exe --stop

Остановка Zabbix-агента, который запущен с другим файлом конфигурации:

zabbix_agentd.exe --config <ваш_файл_конфигурации> --stop

Остановка одного из нескольких экземпляров Zabbix-агента:

zabbix_agentd.exe --config <файл_конфигурации_этого_экземпляра> --stop --multiple-agents
Удаление службы Zabbix-агента

Удаления Zabbix-агента, который использует файл конфигурации по-умолчанию:

zabbix_agentd.exe --uninstall

УдаленияZabbix-агента, который не использует файлом конфигурации по-умолчанию:

zabbix_agentd.exe --config <ваш_файл_конфигурации> --uninstall

Удаления нескольких экземпляров Zabbix-агента из служб Windows:

zabbix_agentd.exe --config <файл_конфигурации_экземпляра_1> --uninstall --multiple-agents
zabbix_agentd.exe --config <файл_конфигурации_экземпляра_2> --uninstall --multiple-agents
...
zabbix_agentd.exe --config <файл_конфигурации_экземпляра_N> --uninstall --multiple-agents

Если удалить службу выше перечисленными способами не удается, то можно удалить службу средствами Windows, предварительно остановив работу службы и выполнив в командной строке с правами администратора:

sc delete [имя службы]

На этом установка Zabbix-агента на ОС Windows завершена, теперь рассмотрим как установить агента на ОС Linux.

Установка Zabbix-агента на ОС Linux (Ubuntu, Debian)

Установку Zabbix-агента буду рассматривать на Ubuntu Server 14.04.

Скачиваем необходимый пакет и устанавливаем его:

wget http://repo.zabbix.com/zabbix/3.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.2-1+trusty_all.deb
sudo dpkg -i zabbix-release_3.2-1+trusty_all.deb

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

sudo apt-get update
sudo apt-get install zabbix-agent

Выполняем настройку Zabbix-агента, файл конфигурации располагается в /etc/zabbix/zabbix_agentd.conf. Отредактируем его:

sudo nano /etc/zabbix/zabbix_agentd.conf

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

Server=[ip-адрес Zabbix-севера]
ServerActive=[ip-адрес Zabbi-сервера]
HostnameItem=system.hostname
Include=/etc/zabbix/zabbix_agentd.conf.d/

Сохраняем изменения в файле и перезапускаем службу Zabbix-агента:

sudo service zabbix-agent restart

На этом установка и настройка Zabbix-агента выполнена. Теперь рассмотрим как заводить хосты на самом Zabbix-сервере.

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

Заходим на Zabbix-сервер, посредством Web-интерфейса. Переходим Настройка (Configuration)- Узлы сети (Hosts) и нажимаем Создать узел сети (Create host)

Вкладка Узел сети (Host). Задаем Имя узла сети (Host name), добавляем узел в группу, если нужной группы нет в списке, то в поле Новая группа (New Group) указываем название группы. В поле Интерфейсы агента, можно выбрать каким методом добавить узел сети, по IP-адресу или по его DNS имени.

Переходим во вкладку Шаблоны (Templates). В пункте Соединить с новыми шаблонами (Link new templates):

  • для Windows выбираем Template OS Windows
  • для Linux выбираем Template OS Linux

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

Видим что в графе Присоединенные шаблоны (Linked templates), появился выбранный шаблон. Нажимаем Добавить (Update).

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

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

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

Понравилась или оказалась полезной статья, поблагодари автора

 

ПОНРАВИЛАСЬ ИЛИ ОКАЗАЛАСЬ ПОЛЕЗНОЙ СТАТЬЯ, ПОДДЕРЖИ АВТОРА ДОНАТОМ

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 — популярная система мониторинга IT-инфраструктуры и приложений с открытым исходным кодом, которой пользуются малые, средние и крупные компании по всему миру. В тексте мы расскажем об установке и настройке пятой версии Zabbix, которая вышла в мае 2020 года.

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

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

Поддерживаемые платформы Zabbix 5.

Поддерживаемые платформы Zabbix 5.

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

  • Alma Linux,
  • Debian,
  • Oracle Linux,
  • Raspberry Pi OS,
  • Red Hat Enterprise Linux;
  • Rocky Linux,
  • SUSE Linux Enterprise Server;
  • Ubuntu,
  • Ubuntu (arm64).

Zabbix и его компоненты

Zabbix — это распределенная система мониторинга, которая состоит из компонентов. Рассмотрим ключевые.

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

Готовые решения для установки

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

Установка системы из Docker-контейнера — быстрый способ, который займет не более 10 минут. 

1. Добавим репозиторий 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

2. Перейдем в клонированный репозиторий и просмотрим содержимое командой 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

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

    # systemctl start docker

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

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

5. После запуска компонентов Zabbix, перейдем в web-интерфейс.

Web-интерфейс Zabbix.

Web-интерфейс Zabbix.

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

Самый быстрый тип установки — из готовых образов. Разворачивание займет не более 5 минут. Рассмотрим установку Zabbix-сервера из образа в формате Open virtualization format (OVF). 

Готовые образы Zabbix.

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

1. В интерфейсе VirtualBox нажмем кнопку Импортировать.

Стартовая страница Oracle VM VirtualBox.

2. Выберем образ zabbix_appliance-5.0.0.ovf (рядом с ним должен находиться zabbix_appliance-5.0.0-disk001.vmdk). Нажмем Продолжить, а на следующем экране все параметры оставим по умолчанию и нажмем Импорт.

Выбор конфигурации.

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

Виртуальная машина в Oracle VM VirtualBox.

4. Дожидаемся успешного запуска виртуальной машины, входим под учетными данными root / zabbix в консоли VirtualBox и выполняем команду # ip a. В результате увидим настройки сети на виртуальной машине с установленным Zabbix.

Настройки сети на виртуальной машине.

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

Экран авторизации Zabbix.

Страница авторизации.
Страница сбора данных о производительности в Zabbix.

Сбор данных о производительности.

Ручная установка

Основные отличия установки

Рассмотрим установку системы на CentOS, Ubuntu, Debian и Windows. При этом важно отметить, что установка на дистрибутивы Ubuntu и Debian практически не отличается, поэтому подробнее остановимся на CentOS и Windows. 

Подобрать команды под конкретную версию Zabbix и версию ОС можно на официальном сайте. Для этого нужно только выбрать конфигурацию вашего сервера, а утилита автоматически подберет список команд со ссылками на документацию. Например, установка Zabbix-прокси пятой версии на сервер с Ubuntu 24.04 и БД PostgreSQL будет выглядеть так:

Скриншот официального сайта Zabbix. Утилита для подбора команд.

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

В первую очередь установим сервер. 

1. В панели управления перейдем во вкладку Облачная платформа → Проекты и нажмем на кнопку Создать проект. В следующем окне заполняем имя проекта и нажимаем Создать.

Создание проекта в панели управления Selectel.

Создание проекта в панели управления Selectel.

2. После создания проекта вернемся во вкладку Облачная платформа → Серверы и нажмем Создать сервер

Создание сервера в панели управления Selectel.

3. В окне конфигурирования нового сервера выбираем источник — CentOS 8 64-bit, vCPU — 4, RAM — 8. 

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

В подразделе Сеть выбираем Новый публичный IP-адрес, чтобы позже мы могли подключиться к серверу через SSH и к web-консоли Zabbix через браузер. Остальные параметры можно оставить по умолчанию или настроить исходя из ваших требований.

Конфигурация нового сервера в панели управления Selectel.

4. В подразделе Доступ копируем пароль root. Нажимаем на кнопку Создать сервер. Как только сервер будет создан, во вкладке Облачная платформа →Серверы около него появится статус Active. Теперь мы можем подключиться к внешнему плавающему IP-адресу по протоколу SSH.

Cозданный сервер во вкладке «Серверы».

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

1. Выполним команды для установки компонентов.

    # 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.

2. Установим Zabbix-сервер и Zabbix-агент.

    # yum install zabbix-server-pgsql zabbix-agent

3. Внесем изменения в конфигурацию репозитория 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

4. Установим Red Hat Software Collections для упрощения дальнейшей настройки, а также PostgreSQL и другие пакеты.

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

Обратите внимание, что в инструкции мы работаем с локальным хранилищем на базе PostgreSQL. Если вы используете MySQL, то имя пакета для Zabbix-сервера будет отличаться.

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

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

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

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

7. Внесем изменения в конфигурационный файл /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

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

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

9. Установим в БД схемы данных.

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

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

Далее — настроим Nginx для корректной работы в Zabbix. 
1. Перейдем в конфигурационный файл /etc/opt/rh/rh-nginx116/nginx/conf.d/zabbix.conf. Раскомментируем две строки и укажем IP-адрес или имя сервера.

    listen 80;
server_name ;

2. Перейдем к файлу  /etc/opt/rh/rh-php72/php-fpm.d/zabbix.con и внесем изменения в двух местах.

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

3. Запустим сервисы 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.

Начальное окно настройки Zabbix 5.0.

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

Экран Configure DB connection.

2. В окне Zabbix server details вводим имя хоста, на котором установлен Zabbix. Порт оставляем по умолчанию.

Страница Zabbix server details.

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

Завершающая страница настройки.

4. Стандартная учетная запись для входа — Admin с паролем zabbix. Установка завершена и система готова к работе, можно приступать к ее настройке. 

Страница авторизации.

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

Установка Zabbix-сервера с MySQL в Ubuntu и Debian

Установка Zabbix на Ubuntu и Debian практически идентична из-за схожести дистрибутивов. Отличается только первый этап. Рассмотрим пошаговый процесс установки Zabbix с использованием базы данных MySQL, а также web-серверов Apache и Nginx. 

1. Скачаем репозиторий Zabbix, установим его и обновим репозитории. В примере используем Ubuntu 20.04 и Debian 10, но вы можете заменить название дистрибутива исходя из версии.

Для Ubuntu:

    wget https://repo.zabbix.com/zabbix/5.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest_5.0+ubuntu20.04_all.deb
dpkg -i zabbix-release_latest_5.0+ubuntu20.04_all.deb
apt update

Для Debian:

    # wget https://repo.zabbix.com/zabbix/5.0/debian/pool/main/z/zabbix-release/zabbix-release_latest_5.0+debian10_all.deb
# dpkg -i zabbix-release_latest_5.0+debian10_all.deb
# apt update

2. Установим MySQL, web-интерфейс, Zabbix-сервер, а также Zabbix-агент, если не сделали этого ранее.

Для работы с Apache:

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

Для работы с Nginx:

    apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-agent

3. Создадим базу данных и пользователя для Zabbix, задаем пароль.

    sudo mysql -u root -p

4. В консоли MySQL создадим БД с кодировкой, пользователя и пароль для него, а также выдадим ему доступ к базе данных. Обратите внимание, что система Zabbix поддерживает только кодировку UTF-8.

    create database zabbix character set utf8 collate utf8_bin;
create user zabbix@localhost identified by пароль для нового пользователя';
grant all privileges on zabbix.* to zabbix@localhost;
set global log_bin_trust_function_creators = 1;
quit;

5. Импортируем начальную схему и данные на хосте Zabbix. Система запросит пароль — указываем тот, что создали на предыдущем шаге.

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

6. В конфигурационном файле Zabbix-сервера /etc/zabbix/zabbix_server.conf введем после  DBPassword= пароль для подключения к БД. Далее — сохраним изменения и закроем редактор. 
7. Для Apache — отредактируем файл /etc/zabbix/apache.conf. Раскомментируем строку и установим правильный временной пояс,  в нашем примере — московский, но вы можете выбрать любой подходящий.

    php_value date.timezone Europe/Moscow

Для Nginx — отредактируем файл /etc/zabbix/nginx.conf. Раскомментируем и настроим директивы listen и server_name.

    listen 80;
server_name example.com;

Также при работе с Nginx важно отредактировать файл /etc/zabbix/php-fpm.conf. Раскомментируем строку и укажем свой часовой пояс.

    php_value[date.timezone] = Europe/Moscow

8. Перезапустим web-сервис и настроим автозапуск при загрузке операционной системы. 

Для Apache:

    # systemctl restart zabbix-server zabbix-agent apache2
# systemctl enable zabbix-server zabbix-agent apache2

Для Nginx:

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

Установка завершена! 

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

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

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

Создание проекта в панели управления Selectel.

Создание проекта в панели управления Selectel.

2. Перейдем во вкладку Облачная платформа → Серверы и нажмем Создать сервер

Создание сервера в панели управления Selectel.

3. В окне конфигурирования нового сервера выбираем источник — Windows Server 2016 Standard, vCPU — 4, RAM — 8. Остальные настройки оставляем по умолчанию, однако вы можете конфигурировать сервер исходя из ваших требований.

Настройка нового сервера в панели управления.

Выбор источника.

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

Настройка сети для нового сервера.

5. В подразделе Доступ копируем пароль учетной записи Administrator для дальнейшего доступа к серверу по RDP. Нажимаем на кнопку Создать сервер.

Настройка доступа для нового сервера.

6. Когда сервер будет готов, во вкладке Облачная платформа → Серверы он перейдет в статус Active. Теперь можно подключаться к внешнему плавающему IP-адресу по протоколу RDP.

Новый сервер в разделе «Серверы».

Установка и настройка Zabbix-агента на Windows-сервер в ручном режиме занимает около 10 минут. Скачать дистрибутив можно на сайте Zabbix. 

1. После скачивания архив распакуем в созданную директорию (в нашем примере — C:\Zabbix).

Директория C:\Zabbix.

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

    Server=

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

    &gt; zabbix_agentd.exe -c C:\Zabbix\conf\zabbix_agentd.conf -i
&gt; zabbix_agentd.exe -c C:\Zabbix\conf\zabbix_agentd.conf --start
Скриншот консоли.

4. Добавим агента в web-интерфейсе Zabbix. Перейдем во вкладку Configuration Hosts и в верхнем правом углу нажмем Create Host.

Вкладка Hosts в web-интерфейсе Zabbix.

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

Настройка сервера.

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

Вкладка Templates.

7. Собираемые по узлам метрики доступны на представлении Monitoring → Latest Data. Напротив каждой метрики (Item) есть кнопка Graph, при нажатии на которую открывается соответствующий график. Настройка мониторинга узла с ОС Windows завершена!

Вкладка Latest Data.

Вкладка Latest Data.
Отображение графика в web-интерфейсе.

Отображение графика.

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

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

Настройка web-интерфейса

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

1. Откроем в браузере URL-адрес web-интерфейса Zabbix. Для Nginx — http://<server_ip_or_name>, для Apache — http://<server_ip_or_name>/zabbix. Так мы попадем на первую страницу установки. Переходим к следующему этапу, нажав кнопку Next step.

Стартовая страница установки.

2. Во втором окне убедимся, что на всех строках зафиксирован статус OK

Страница Check of pre-requisites.

3. Проверяем поля для подключения к БД. Автоматически заполнено все, кроме пароля. Вводим его.

Страница Configure DB connection.

4. Оставляем поля по умолчанию. Поле Name — опциональное, но при указании имени сервера оно будет отображаться в меню и заголовках страниц.

Страница Zabbix server details.

5. Проверяем настройки и переходим далее.

Страница Pre-installation summary.

6. Установка завершена. Нажимаем Finish.

Завершающая страница установки.

7. Переходим на страницу авторизации, вводим имя и пароль для входа в web-интерфейс. 

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

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

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

1. В web-интерфейсе Zabbix перейдем в раздел Administration, далее — во вкладку Users. В верхнем правом углу нажмем Create User.

Вкладка Users.

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

Настройка пользователя.

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

Страница Media.

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

Важно: для любого пользователя мы можем сменить пароль. Для этого в Administration → Users нужно выбрать соответствующую учетную запись, нажать Change password и ввести новый пароль.

Смена пароля в web-интерфейсе.

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

1. Переходим во вкладку Administration → User groups. В верхнем правом углу нажимаем Create user group.

Вкладка User Groups.

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

Создание новой группы.

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

Страница Permissions.

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

Также важно отметить, что одно из нововведений пятой версии Zabbix — поддержка SAML (Security Assertion Markup Language), — открытого стандарта обмена данными аутентификации. Он позволяет использовать одни учетные данные для авторизации и получения доступа в нескольких приложениях. 

Помимо прочего, SAML упрощает процесс интеграции с многими облачными провайдерами идентификации. Однако стандарт требует отдельного внимания, так что подробнее о его применении еще расскажем в отдельном тексте.

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

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

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

  • файловых систем,
  • сетевых интерфейсов,
  • физических дисков,
  • сервисов.
Страница Discovery Rules (правила обнаружения) в web-интерфейсе.

Раздел Discovery rules в web-интерфейсе.

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

Настройка правил обнаружения.

Настройка правил обнаружения.

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

Вкладка Filters.

Вкладка Filters.

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

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

Шаблоны в Zabbix включают в себя следующие компоненты:

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

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

Страница Discovery Rules (правила обнаружения) в web-интерфейсе.

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

Страница Trigger prototypes.

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

Zabbix-прокси

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

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

Настройка шифрованной передачи данных

Шифрование данных между Zabbix-агентом и Zabbix-сервером — важный аспект безопасности, особенно при передаче данных через интернет без использования защищенного (зашифрованного) канала. Рассмотрим настройку с использованием предварительно согласованных ключей (Pre-Shared Keys, PSK). Это можно сделать, например, с помощью GnuTLS или OpenSSL. Рассмотрим второй вариант. 

Генерация Pre-Shared Key (PSK)

Сгенерируем 256-битный (32-байтный) PSK. На хосте с установленным Zabbix-агентом выполним следующую команду в консоли. Она создаст файл с ключом по указанному пути. 

    openssl rand -hex 32 &gt; /etc/zabbix5/zabbix_agentd.psk

Настройка агента Zabbix

Откроем конфигурационный файл агента zabbix_agentd.conf и добавим параметры.

  • TLSConnect — указывает, что агент будет использовать PSK для подключения.
  • TLSAccept — разрешает серверу подключаться с использованием PSK.
  • TLSPSKFile — путь к файлу с ключом.
  • TLSPSKIdentity — уникальный идентификатор ключа.
    TLSConnect=psk
TLSAccept=psk
TLSPSKFile=/etc/zabbix/zabbix_agentd.psk
TLSPSKIdentity=PSK 001

После внесения изменений важно перезапустить Zabbix Agent.

    systemctl restart zabbix-agent

Настройка шифрования на Zabbix Server

Перейдем в web-интерфейс Zabbix-сервера и выполним следующие действия.

  1. Откроем свойства хоста, данные от которого передаются через агент.

2. Перейдем во вкладку Шифрование.

3. Укажем следующие настройки:

  • в полях Тип подключения и Соединение с узлом сети — PSK,
  • идентификатор PSK — PSK 001 (должен совпадать с TLSPSKIdentity в конфигурации агента),
  • сгенерированный ключ из файла /etc/zabbix/zabbix_agentd.psk.

Если шифрование настроено корректно, на странице информации о хосте в web-интерфейсе Zabbix Server будет отображена пометка о зашифрованном соединении. Настройка обеспечивает безопасную передачу данных и минимизирует риски утечки конфиденциальной информации.

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

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

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

1. Установим и запустим Grafana в виде Docker-контейнера.

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

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

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

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

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

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

Стартовая страница web-интерфейса Grafana.

Web-интерфейс Grafana.

5. Активируем плагин для Zabbix. Чтобы это сделать, перейдем в Configurations → Plugins и нажмем Enable.

Страница Plugins.

6. Плагин включен, перейдем к конфигурации. Важные поля для заполнения — URL, User, Password. Остальные настройки можно оставить по умолчанию.

Конфигурирование Zabbix.

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

Дашборд Zabbix Server.

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

Сервер с Zabbix в Selectel

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

1. Во вкладке Облачная платформа → Серверы нажмем Создать сервер

Создание сервера в панели управления Selectel.

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

Настройка нового сервера.

3. Откроем раздел Источник и перейдем во вкладку Приложения. Здесь доступно ПО для администрирования, разработки, проведения видеоконференций и обеспечения информационной безопасности. В списке находим Cloud Zabbix.

Страница выбора источника в панели управления.

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

5. В блоке Сеть настроим приватную подсеть и подключим публичный IP-адрес. 

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

6. Укажем пользовательские параметры конфигурации операционной системы. В блоке Автоматизация в поле User data вставим скрипт, который выполнится при загрузке системы. В него можно добавить дополнительные параметры.

Настройка автоматизации в панели управления Selectel.

При создании сервера с выпуском TLS-сертификата: 

    #cloud-config

write_files:
- path: "/opt/gomplate/values/user-values.yaml"
 permissions: "0644"
 content: |
   pg_password: ""
   zabbixDomain: 
   leEmail: 
   httpsMethod: redirect

При создании сервера без выпуска TLS-сертификата:

    #cloud-config

write_files:
- path: "/opt/gomplate/values/user-values.yaml"
 permissions: "0644"
 content: |
   admin_password: ""
   zabbixDomain: 

Вместо <bd_user_password> укажем пароль пользователя базы данных, который должен содержать:

  • более восьми символов,
  • не менее одной прописной буквы,
  • не менее одной строчной буквы,
  • не менее одной цифры.

<example.com> — домен для доступа к Zabbix. Для домена нужно добавить A-запись и указать в значении записи ваш публичный IP-адрес. Если домен добавлен в DNS-хостинг Selectel (actual), используйте инструкцию Добавить ресурсную запись. После создания сервера для домена автоматически выпустится TLS-сертификат от Let’s Encrypt®.

7. Проверим цену облачного сервера и нажмем Создать сервер

Создание сервера в панели управления Selectel.

Заключение

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

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

Читайте также:


Содержание

  • Введение
  • 1. Установка Zabbix Agent из MSI-пакета
  • 2. Проверка установки Zabbix Agent
  • 3. Добавление Windows-хоста в сеть мониторинга
  • Использованные ресурсы

Введение

Программное обеспечение Zabbix Agent позволяет осуществлять мониторинг устройств, на которые оно установлено. Для сбора и отображения данных мониторинга используется ПО Zabbix Server. См. статью «Zabbix Server, Zabbix Agent, Zabbix Frontend и MySQL. Инструкции по установке».

В настоящей статье представлены инструкции по установке и настройке Zabbix Agent в операционной системе MS Windows.

1. Установка Zabbix Agent из MSI-пакета

1.1. Скачайте MSI-пакет Zabbix Agent по ссылке https://www.zabbix.com/download_agents

Скачивание MSI-пакета Zabbix Agent

Скачивание MSI-пакета Zabbix Agent

1.2. Запустите установку MSI-пакета.

1.3. В процессе установки выберите папку для установки Zabbix Agent.

1.4. Настройте конфигурацию службы Zabbix Agent:

  • Host name — имя хоста;
  • Zabbix server IP/DNS — IP-адрес Zabbix Server (в запросах с неизвестных адресов будет отказано);
  • Agent listen port — номер сетевого порта Zabbix Agent (10050 по-умолчанию);
  • Server or Proxy for active checks — IP-адрес сервера для активных проверок агента Zabbix;
  • Enable PSK — установите этот флажок, чтобы впоследствии настроить зашифрованный канал связи между Zabbix Agent и Zabbix Server;
  • Add agent location to the PATH — установите этот флажок, чтобы добавить путь к агенту в переменную среды PATH.

Настройка конфигурации службы Zabbix Agent

Настройка конфигурации службы Zabbix Agent

2. Проверка установки Zabbix Agent

2.1. Откройте Брандмауэр Защитника Windows в режиме администратора.
2.2. Перейдите на вкладку «Правила для входящих подключений».
2.3. Удостоверьтесь, что установщик Zabbix Agent создал правило, разрешающее входящие запросы по сетевому порту 10050.
2.4. Если правила нет, создайте его и перезагрузите компьютер.

Проверка наличия правила для входящих подключений Zabbix Agent

Проверка наличия правила для входящих подключений Zabbix Agent

2.5. Откройте приложение «Службы».
2.6. Удостоверьтесь, что служба Zabbix Agent находится в состоянии «Выполняется».
2.7. Если состояние службы Zabbix Agent отличается от «Выполняется», установите состояние «Выполняется» и перезагрузите компьютер.

Проверка состояния Zabbix Agent в диспетчере служб

3. Добавление Windows-хоста в сеть мониторинга

3.1. Откройте Zabbix Frontend (см. статью «Zabbix Server, Zabbix Agent, Zabbix Frontend и MySQL. Инструкции по установке».). Для э того в адресной строке браузера наберите: http://zabbix-server-ip-address:8080
3.2. Откройте раздел «Monitoring» > «Hosts» и нажмите кнопку «Create host».

Создание хоста

Создание хоста

3.3. Задайте имя хоста в поле «Host name».
3.4. Выберите шаблон «Template OS Linux by Zabbix agent».
3.5. Создайте группу мониторинга для хоста или добавьте его в существующую группу.
3.6. Под полем «Interfaces» нажмите кнопку «Add» и в раскрывающемся меню выберите пункт «Agent».

Настройка свойств хоста Zabbix Agent

Настройка свойств хоста Zabbix Agent

3.7. В поле «Agent» задайте IP-адрес или доменное имя компьютера, на котором установлен Zabbix Agent.

3.8. Если при установке Zabbix Agent был указан сетевой порт, отличный от 10050, укажите используемый порт

3.9. Нажмите кнопку «Add».

Настройка IP-адреса хоста Zabbix Agent

Настройка IP-адреса хоста Zabbix Agent

3.10. Перейдите в раздел «Monitoring» > «Hosts».

3.11. В списке хостов должна появиться новая запись.

3.12. Подождите приблизительно 2 минуты, пока индикатор статуса доступности ZBX не станет зелёным.

Статус хоста Zabbix Agent

Статус хоста Zabbix Agent

3.13. Если индикатор красный, удостоверьтесь, что:

  • сетевой экран на машине, где развернут Zabbix Server, разрешает обмен данными через порт 10051;
  • сетевой экран и (или) Брандмауэр Защитника Windows на машине, где развернут Zabbix Agent, разрешает обмен данными через порт 10050;
  • значения Server и ServerActive в файле конфигурации Zabbix Agent /etc/zabbix/zabbix_agentd.conf соответствуют IP-адресу Zabbix Server:
Server=192.168.0.1 # ip-адрес приведён как пример
ServerActive=192.168.0.1 # ip-адрес приведён как пример

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

Использованные ресурсы

Официальная инструкция по установке Zabbix Agent в Windows из MSI-пакета (на английском языке)

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Как принять файл по bluetooth на ноутбуке windows 11
  • Как установить сетевой драйвер на windows 7 через флешку
  • Windows internet name service wins что это
  • Republic the revolution windows 10
  • Sonic schoolhouse on windows 10