- Установка PHP.
- Установка MySQL.
- Первый поход на фронт
- Ох уж эта безопасность
- Шаг 4 — Настройка PHP для Zabbix
- Настройка Zabbix-сервера для мониторинга IPMI.
- Шаг 8 — Настройка уведомлений по электронной почте
- Установка Zabbix 5 на Centos
- Настройка SELinux для zabbix server
- Установка и конфигурирование Zabbix
- Настраиваем агента Linux
- Шаг 6 — Установка и настройка агента Zabbix
- Шаг 2 — Настройка базы данных MySQL для Zabbix
- Настройка Zabbix Server
- Настройка email оповещений
- Изменение шаблона стандартных оповещений
- Изменение стандартных шаблонов мониторинга
- Общие настройки
- Будьте в курсе
- Добавление web сайта к мониторингу
- Установка Zabbix Agent на Linux
- Установка zabbix агент на Windows
Установка PHP.
Установим PHP с необходимыми модулями. Процесс сборки из исходников может оказаться слишком утомительным, поэтому я ставлю из готовых пакетов c помощью package manager’а, который, если вы еще не установили, собирается из port’ов:
# cd /usr/ports/ports-mgmt/pkg# make# make install clean
Далее ставим php:
# pkg install -y php56 mod_php56 php56-extensions php56-mysqli php56-mysql
И на всякий случай выставляем права:
# chmod u+x /usr/local/libexec/apache24/libphp5.so
Приступаем к конфигурированию. Далее нужно найти и раскоментировать две строчки в конфиге apache:
# nano /usr/local/etc/apache24/httpd.conf
Теперь дополним строчку в том же httpd.conf:
DirectoryIndex index.html index.php
Находим секцию LoadModule и добавляем в конце блока:
LoadModule php5_module libexec/apache24/libphp5.so
сразу после строки “AddType application/x-gzip .gz .tgz” добавим:
AddType application/x-httpd-php .php .php3 .phtmlAddType application/x-httpd-php-source .phps
и в конце файла допишем:
Создаем конфигурацию php из шаблона и открываем ее на редактирование:
# cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini# nano /usr/local/etc/php.inidate.timezone = «Europe/Moscow»magic_quotes_gpc = Offupload_max_filesize = 512Mpost_max_size = 1Gmax_execution_time = 0
где:magic_quotes_gpc — отключает “экранирование” кавычек;upload_max_filesize — выставляет лимит для одного загружаемого на сервер файла;post_max_size — лимит для всех загружаемых на сервер файлов;max_execution_time — лимит времени в секундах на выполнение скрипта (при его превышении сервер вернет ошибку, тогда как при значении параметра 0 время не ограничивается).
Переходим в директорию расположения веб-скриптов, переименовываем файл и добавляем в него код для отображения версии и других параметров интерпретатора PHP:
# service apache24 restart
Здесь следует обратить внимание на включенную поддержку MySQL — если все настроено правильно, то статус обоих строчек будет “Enabled”:
Установка MySQL.
В первую очередь необходимо установить порты, если они отсутствуют в системе:
# portsnap fetch extract
или обновить порты, если они присутствуют в системе:
# portsnap fetch update
Далее нужно указать некоторые опции сбоки mysql55-server:
# nano /etc/make.conf
После чего переходим непосредственно к установке mysql55-server:
# cd /usr/ports/databases/mysql55-server# make config-recursive# make install clean# rehash
Для более новых версий MySQL шаблоны конфигов могут остутствовать. Для примера копируем large-конфиг:
Запускаем скрипт настройки MySQL сервера:
где: password — пароль для пользователя zabbix
Но оставлять так крайне нежелательно, поэтому по завершению отладки:
Первый поход на фронт

А также уже есть собранные данные для анализа. Это информация о самом сервере Zabbix.

Все готово для использования.
Ох уж эта безопасность
Если после этого попытаться зайти через браузер со сторонней машины на фронт Zabbix, то, скорее всего, ничего не выйдет. Нужно настроить фаервол так, чтобы был доступ к веб-интерфейсу Zabbix.
firewall-cmd public 80/tcp
firewall-cmd
# «local» is for Unix domain socket connections only
all all peer
# IPv4 local connections:
# Разрешаем подключение к базе zabbix пользователю zabbix
host zabbix zabbix 127.0.0.1/32 password
host all all 127.0.0.1/32 ident
# IPv6 local connections:
# Разрешаем подключение к базе zabbix пользователю zabbix
host zabbix zabbix ::1/128 password
host all all ::1/128 ident
# replication privilege.
replication all peer
host replication all 127.0.0.1/32 ident
host replication all ::1/128 ident
Проверяем подключение к базе zabbix с помощью psql:
psql 127.0.0.1 zabbix
Если после ввода пароля запустилась сессия работы с PostgreSQL, то все в порядке. В противном случае проверьте настройки файла pg_hba.conf и корректность пароля.
Шаг 4 — Настройка PHP для Zabbix
Веб-интерфейс Zabbix написан на языке PHP, и для него требуется ряд специальных настроек сервера PHP. В ходе установки Zabbix был создан файл конфигурации PHP-FPM, который содержит эти настройки. Он расположен в каталоге /etc/zabbix и загружается автоматически PHP-FPM. Вам нужно внести небольшое изменение в этот файл, поэтому откройте его следующим образом:
Файл содержит параметры PHP, соответствующие необходимым требованиям для веб-интерфейса Zabbix. Однако настройка часового пояса комментируется по умолчанию. Чтобы Zabbix использовал правильное время, необходимо установить соответствующий часовой пояс:
Раскомментируйте строку часового пояса, выделенную в предыдущем блоке кода, и измените ее на свой часовой пояс. Для поиска подходящего часового пояса можно воспользоваться этим списком поддерживаемых часовых поясов. Затем сохраните и закройте файл.
Теперь перезапустите PHP-FPM для применения этих новых настроек:
systemctl restart php7.4-fpm.service
Теперь вы можете запустить сервер Zabbix:
systemctl start zabbix-server
Затем проверьте правильность работы сервера Zabbix:
systemctl status zabbix-server
Вы увидите следующий статус:
Наконец, включите запуск сервера в момент загрузки:
systemctl zabbix-server
Сервер настроен и подключен к базе данных. Затем настройте веб-интерфейс.
Настройка Zabbix-сервера для мониторинга IPMI.
По умолчанию Zabbix не запускает IPMI-поллеры, поэтому любые добавленные узлы IPMI не будут отображаться. Для того, чтобы включить необходимо отредактировать файл конфигурации Zabbix-сервера:
# nano /usr/local/etc/zabbix3/zabbix_server.conf
и изменить строку:
на ненулевое значение (1–1000), указав количество запущенных инстанций (forks) для сбора IPMI.
Обязательно в системе должен быть установлен пакет openipmi. Поидее, он ставится вместе с установкой Zabbix-сервера, но на всякий случай проверим его наличие в системе:
Если не найден, то устанавливаем:
# pkg install openipmi
# service zabbix_server restart
Теперь Zabbix-сервер готов для сбора данных IPMI. В дальнейшем можно подключить хосты и добавить темплейты для мониторинга физического состояния серверов.
Шаг 8 — Настройка уведомлений по электронной почте
Zabbix автоматически поддерживает несколько типов уведомлений: по электронной почте, в OTRS, Slack, Telegram, СМС и т. д. Весь список совместимости можно увидеть на веб-сайте Zabbix.
В качестве примера в этом обучающем модуле мы настроим уведомления по электронной почте.
Настройте опции SMTP в соответствии с настройками, предоставленными вашей почтовой службой. В этом обучающем модуле используются возможности SMTP почтовой службы Gmail. При необходимости дополнительной информации об этой настройке см. Использование сервера SMTP Google.
Примечание. Если вы используете двухэтапную аутентификацию для Gmail, необходимо сгенерировать пароль приложения для Zabbix. Пароль приложения вводится только один раз во время установки. Инструкции по генерированию этого пароля можно получить в Справочном центре Google.

На вкладке Message templates (Шаблоны сообщений) вы увидите список стандартных сообщений для различных типов уведомлений. Наконец, нажмите кнопку Update (Обновить) внизу формы для обновления параметров электронной почты.
Теперь вы можете протестировать отправку уведомлений. Для этого нажмите на подчеркнутую ссылку Test (Тестирование) в соответствующей строке.
Вы увидите всплывающее окно. Введите свой адрес электронной в поле Send to (Отправить) и нажмите кнопку Test Тестирование. Вы увидите сообщение об успешной отправке и получите тестовое сообщение.

Закройте всплывающее окно, нажав кнопку Cancel (Отмена).
После добавления группы нажмите на вкладку Media (Средство связи) и нажмите на подчеркнутую ссылку Add (не на кнопку Add (Добавить) под ней). Вы увидите всплывающее окно.

Выберите опцию Email (Электронная почта) из выпадающего списка поля Type (тип). Введите свой адрес электронной почты в поле Send to (Отправить). В остальных опциях можно оставить значения по умолчанию. Нажмите кнопку Add (Добавить) внизу для отправки.
Наконец, нажмите кнопку Add (Добавить) внизу формы для создания пользователя.
Теперь необходимо включить уведомления. Нажмите на вкладку Configuration (Настройка), а затем Actions (Действия) на левой панели навигации. Вы увидите предварительно настроенное действие, отвечающее за отправку уведомлений всем администраторам Zabbix. Вы можете проверять и менять настройки, нажимая на названия. Для целей данного обучающего модуля используйте параметры по умолчанию. Чтобы активировать действие, нажмите на красную ссылку Disabled (Отключено) в столбце Status (Статус).
Теперь вы готовы получать оповещения. В следующем шаге вы сгенерируете одно для тестирования настройки уведомлений.
Установка Zabbix 5 на Centos
Установка 5-й версии Zabbix стала еще проще, чем предыдущие. Я буду использовать web сервер nginx и базу данных Mysql. Первым делом вам необходимо установить и настроить сервер CentOS 8.
Затем нам нужно установить Mysql server. Я в этом качестве предпочитаю Percona Mysql Server, поэтому ставить буду его. Выбираю Percona в данном случае для того, чтобы потом можно было использовать их инструмент для бэкапа базы — XtraBackup.
Подключаем репозиторий Percona и ставим mysql сервер.
# dnf install https://repo.percona.com/yum/percona-release-latest.noarch.rpm
# dnf module disable mysql
# percona-release setup ps80
# dnf install percona-server-server percona-toolkit percona-xtrabackup-80
# systemctl enable —now mysqld
Смотрим временный пароль root и с его помощью запускаем скрипт первоначальной настройки mysql.
Задаем пароль root, соблюдая сложность пароля — не менее 8-ми символов, маленькие и заглавные буквы, цифры, спецсимволы. После того, как сделаем это, приступаем к установке непосредственно Zabbix.
Подключаем репозиторий Zabbix 5 для Centos 8.
# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-1.el8.noarch.rpm
Устанавливаем Zabbix Server 5, web интерфейс и agent.
# dnf install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-agent
Создадим теперь пользователя и базу данных mysql для zabbix.
Сразу хочу сделать важное замечание по поводу percona mysql server. При подключенных обоих репозиториях — заббикс и перкона, при обновлении системы через dnf update, вы получите ошибку.
Идем далее. Открываем конфиг сервера заббикс — /etc/zabbix/zabbix_server.conf и указываем там параметры подключения к mysql. Там же рекомендую сразу изменить параметр таймаута, увеличив его до 20-ти секунд.
# systemctl enable —now zabbix-server
Если вы не отключили SELinux в предварительной настройке Centos, то получите ошибку запуска. Текст ошибки можно посмотреть в системном логе /var/log/messages.
Если вы не планируете использовать SELinux, то просто отключите его и пропустите следующий раздел. Если же хотите использовать, то настраиваем далее.
Настройка SELinux для zabbix server
Для того, чтобы настроить работу zabbix сервера с SELinux, скачаем один готовый модуль и один создадим свой. Начнем с готового.
Теперь создаем свой модуль. Для того, чтобы это получилось, мы должно хотя бы один раз неудачно запустить zabbix server с включенным selinux.
Запускаем zabbix server еще раз.
# systemctl start zabbix-server
После этих действий zabbix server должен нормально работать с включенным selinux. Убедиться в этом можно проверив лог заббикс сервера — /var/log/zabbix/.
# cat /var/log/zabbix/zabbix_server.log
Теперь подготовим web сервер. Для этого открываем конфиг nginx /etc/nginx/conf.d/zabbix.conf и устанавливаем там 2 параметра:
listen 80;
server_name example.com;
Вместо example.com укажите свое имя виртуального хоста для zabbix сервера. Если вы хотите подключаться не только по доменному имени, но и по ip адресу к web интерфейсу zabbix, вам необходимо в помимо listen 80, добавить директиву default_server.
listen 80 default_server;
server_name example.com;
Одновременно с этим вы должны удалить эту же директиву в основном конфиге nginx — /etc/nginx/nginx.conf. Вместо:
И в завершении редактируем конфиг php-fpm — /etc/php-fpm.d/zabbix.conf, указывая свой часовой пояс.
Запускаем компоненты web сервера.
# systemctl enable —now nginx php-fpm
Теперь можно пройти в браузере по ip адресу http://10.20.1.23 и откроется первая страница установщика Zabbix Server 5.

Если вы видите ошибку подключения к web серверу, то скорее всего у вас firewall блокирует соединения. В Centos 8 по умолчанию включен firewalld. Если он вам не нужен и вы не хотите его настраивать, то просто отключите.
# systemctl stop firewalld
# systemctl disable firewalld
Не хотите отключать — можно просто открыть необходимые для работы веб сервера порты — 80 и 443, а так же 10051 для самого zabbix server.
# firewall-cmd —permanent —add-port=80/tcp —add-port=443/tcp —add-port=10051/tcp
# firewall-cmd —reload
Если же вы, как и я, предпочитаете вместо firewalld использовать iptables, читайте мою подробную статью на эту тему — настройка iptables. В целом, по предварительной подготовке сервера все. Ниже пойдет то же самое для Ubuntu / Debian. А в следующем разделе продолжение установки zabbix server через web интерфейс.
Установка и конфигурирование Zabbix
Как и с PostgreSQL, прежде чем начать идем на официальную страницу выбора параметров для загрузки Zabbix, а после выполняем предложенные инструкции. Для выбранной нами конфигурации получилась вот такая настройка.
Теперь начнем установку Zabbix.
Настраиваем агента Linux
На самом деле мы это уже в какой-то мере уже сделали, т.к. на сервер Zabbix мы уже устанавливали пакет “zabbix-agent”. А в веб-интерфейсе мы уже видели собираемые данные о сервере.
Установку и конфигурирование начнем с самого главного — перейдем на страницу с выбором необходимой версии агента:
- Linux
- Версия 3.0
- Платформа AMD64
- Для версии Zabbix 4.0
На этой же странице будет ссылка с инструкцией по установке агента. В нашем случае она находится здесь.
Как и с установкой сервера, сначала рекомендую обновить компоненты системы, пакеты:
Далее как и с сервером нужно добавить репозиторий.
# Добавляем репозиторий
sudo rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
Установим и сам пакет агента Zabbix, а после запустим его.
# Установка пакета агента
yum zabbix-agent
# Запускаем агент
systemctl start zabbix-agent
# Проверяем состояние
systemctl status zabbix-agent
Запустили мы, конечно, рано, нужно еще сконфигурировать работу агента. Идем в файл ‘/etc/zabbix/zabbix_agentd.conf’ и изменяем три параметра:
После этого перезапускаем агента:
# Перезапускаем агента
systemctl restart zabbix-agent
# Проверяем состояние
systemctl status zabbix-agent
И проверяем логи работы агента. Возьмем последине 30 строк для анализа:
Мы получим все что происходило при запуске агента. В нашем примере вывод был таким:
Мы сразу видим, что при запуске активных проверок появилась ошибка подключения (для моего окружения 192.168.11.144 — это адрес сервера Zabbix). Эта тема выходит за рамки этого материала, но Вы можете прочитать о пассивных и активных проверках самостоятельно.
Ошибка снова связана с настройками безопасности. Нужно открыть порт 10051 сервера Zabbix.
Перезапускаем агента и проверяем лог.
# Перезапускаем агента
systemctl restart zabbix-agent
# Проверяем состояние
systemctl status zabbix-agent
# Проверяем что там в логах
30 /var/log/zabbix/zabbix_agentd.log
В этот раз все отлично.
- Host name — имя хоста. Должно совпадать с одноименным параметром на стороне агента (мы заполняли этот параметр выше)
- Groups — группы, к которым этот хост относится. Сейчас просто добавил его в “Linux servers”.
- IP address (или DNS имя) — название говорит само за себя. Это адрес или имя машины, на которой установлен агент, которую нужно мониторить.

Также на вкладке “Templates” (Шаблоны) выбираем шаблоны показателей, которые будем собирать. Сейчас просто выбрал шаблон стандартных метрик для Linux OS.

Сохраняем и видим список хостов, в котором есть сам Zabbix-сервер и только что добавленны элемент. Спустя небольшой промежуток времени мы увидим ошибку.

Ситуация, думаю, понятная. На клиентской машине нужно открыть порт 10050 для взаимодействия с сервером мониторинга. Делается это аналогичными командами как и для порта 10051 сервера выше.
Ждем немного времени и видим, что с соединением теперь все отлично.

Данные от агента поступают и все работает как надо. Дело сделано, мониторинг этой машины работает. Далее рассмотрим кратко установку агента на хост с операционной системой Windows.
Шаг 6 — Установка и настройка агента Zabbix
Теперь вам нужно настроить ПО агента, которое будет отправлять данные мониторинга на сервер
Войдите на второй сервер Ubuntu:
Как и на сервере Zabbix, запустите следующие команды для установки пакета конфигурации репозитория:
https://repo.zabbix.com/zabbix/5.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.0-1+focal_all.deb
dpkg zabbix-release_5.0-1+focal_all.deb
Затем обновите индекс пакета:
Затем установите агент Zabbix:
Хотя Zabbix поддерживает шифрование с помощью сертификата, настройка центра сертификации на входит в этот обучающий модуль. Но вы можете использовать предварительно предоставленные ключи (PSK) для защиты соединения между сервером и агентом.
Сначала, сгенерируйте PSK:
Отобразите ключ с помощью cat, чтобы скопировать его:
Ключ будет выглядеть примерно так:
Сохраните его для дальнейшего использования. Он потребуется для конфигурации хоста.
Теперь отредактируйте настройки агента Zabbix для установки безопасного подключения к серверу Zabbix. Откройте в файл конфигурации агента в своем текстовом редакторе:
Каждая настройка в этом файле документируется с помощью информационных комментариев по всему файлу, но вам нужно отредактировать только некоторые из них.
По умолчанию сервер Zabbix подключается к агенту. Но для некоторых проверок (например, для мониторинга журналов) требуется обратное подключение. Для правильной работы нужно указать адрес сервера Zabbix и уникальное имя хоста.
Найдите раздел, который настраивает активные проверки и измените значения по умолчанию:
Затем найдите раздел, который настраивает надежное подключение к серверу Zabbix и активирует поддержку предварительно предоставленный ключ Найдите раздел TLSConnect, который выглядит следующим образом:
Затем добавьте эту строку для конфигурации поддержки предварительно предоставленного ключа:
Затем найдите раздел TLSAccept, который выглядит следующим образом:
Настройте входящие соединения для поддержки предварительно предоставленных ключей, добавив эту строку:
Затем найдите раздел TLSPSKIdentity, который выглядит следующим образом:
Выберите уникальное имя для идентификации вашего предварительно предоставленного ключа, добавив эту строку:
Вы будете использовать его в качестве идентификатора PSK при добавлении хоста через веб-интерфейс Zabbix.
Затем установите опцию, которая указывает на ранее созданный предварительно предоставленный ключ. Найдите опцию TLSPSKfile:
Добавьте эту строку, чтобы направить агент Zabbix в созданный вами файл PSK:
Сохраните и закройте файл. Теперь вы можете перезапустить агент Zabbix и установить его запуск в момент загрузки:
systemctl restart zabbix-agent
systemctl zabbix-agent
В дополнение к этому проверьте правильность работы агента Zabbix:
Вы увидите следующий статус, указывающий на то, что агент работает:
Агент будет прослушивать порт 10050 для подключений с сервера. Настройте UFW для разрешения подключений к этому порту:
ufw allow /tcp
Дополнительную информацию о UFW можно получить в статье Настройка брандмауэра с UFW в Ubuntu 20.04.
Теперь ваш агент готов направлять данные на сервер Zabbix. Но для его использования необходимо подключаться к нему с веб-консоли сервера. В следующем шаге вы завершите настройку.
Шаг 2 — Настройка базы данных MySQL для Zabbix
Вам нужно создать новую базу данных MySQL и заполнить ее определенной базовой информацией, чтобы она была пригодна для Zabbix. Также вы создадите конкретного пользователя для этой базы данных, чтобы Zabbix не входил в MySQL с помощью учетной записи root.
Войдите в MySQL в качестве пользователя root:
Создайте базу данных Zabbix с поддержкой символов UTF-8:
create database zabbix character utf8 collate utf8_bin
Затем создайте пользователя, которого будет использовать сервер Zabbix, предоставьте ему доступ к новой базе данных и установите пароль для пользователя:
Он защитит пользователя и базу данных. Выйдите из консоли базы данных.
Далее вам потребуется импортировать начальную схему и данные. При установке Zabbix вам был предоставлен файл, который сделает это.
Запустите следующую команду для настройки схемы и импорта данных в базу данных zabbix. Используйте zcat, так как данные в файле сжаты:
Введите пароль пользователя MySQL zabbix, который вы настроил при получении соответствующей инструкции.
Чтобы сервер Zabbix использовал эту базу данных, вам нужно задать пароль базы данных в файле конфигурации сервера Zabbix. Откройте файл конфигурации в предпочитаемом текстовом редакторе. В этом обучающем руководстве мы будем использовать nano:
Найдите следующую часть файла:
Сохраните и закройте zabbix_server.conf, нажав CTRL+X, а затем Y и ENTER, если вы используете nano.
Теперь вы настроили сервер Zabbix для подключения к базе данных. Затем вы настроите веб-сервер Nginx для обслуживания пользовательского интерфейса Zabbix.
Настройка Zabbix Server
- карты сети — Local Network
- комплексного экрана Zabbix server
- панелей Global view и Zabbix server health
Они создаются автоматически при установке заббикса. Вам нужно сменить у них владельца на нового пользователя. После этого стандартного админа можно будет удалить.
Настройка email оповещений
Покажу на примере настроек ящика в Яндексе.
Зайдите еще раз в учетную запись и убедитесь, что ящик добавили.
Все, отправку уведомлений мы настроили, осталось подождать срабатывания триггера, чтобы проверить. Сделаем это позже, когда подключим хост к мониторингу.
Если вам нужны оповещения в telegram, то читайте отдельную статью на эту тему. Так же рекомендую ознакомиться с материалом на тему настройки повторяющихся уведомлений в заббиксе. Для многих триггеров может оказаться очень полезной возможностью. Например, можно каждый день напоминать об окончании времени делегирования домена, пока он не будет продлен.
Так же zabbix умеет звонить через asterisk для оповещения о событиях.
Изменение шаблона стандартных оповещений
Я вношу следующие изменения. Меняю шаблон темы письма при проблеме и восстановлении. В стандартном шаблоне в теме письма нет информации об имени хоста. В некоторых шаблонах триггера указано имя хоста, но есть и такие, где нет этой информации. В итоге в оповещении сразу не видно, о каком хосте идет речь. В моем же шаблоне сразу в теме будет указано имя хоста далее статус, а потом все остальное. Вот пример старого и нового оповещения:
Мне мой вид кажется более наглядным. Шаблон меняет на следующий:
Он одинаковый и для проблемы, и для восстановления.
Изменение стандартных шаблонов мониторинга
На своих серверах мониторинга я изменяю некоторые параметры стандартных шаблонов, чтобы было меньше бесполезных и неинформативных срабатываний. Вот список того, что я делаю.
Общие настройки
- В разделе Рабочее время выставляю актуальные рабочие часы.
- В разделе Опции отображения триггеров меняю значения Отображать триггеры в состоянии ОК в течении и Мигание триггеров при изменении состояния на 1 минуту. Это просто мои предпочтения. Мне не нравится, когда триггеры долго мигают, либо висят уже закрытые.
- В разделе Прочее меняю Обновление неподдерживаемых элементов данных на 1 минуту. Это актуально во время отладки новых шаблонов.
Будьте в курсе
По любым вопросам пишите на электронную почту. Адрес в самом низу страницы.
Добавление web сайта к мониторингу

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

Открываем этот шаблон. Переходим на вкладку Web Scenarios и добавляем новый сценарий для мониторинга сайта.

Заполняем основные параметры сценария. В качестве названия я обычно указываю адрес сайта. В моем примере это будет github.com. Тут же указываю название приложения для мониторинга сайтов для удобной сортировки итемов, относящихся к сайтам, интервал проверки и число попыток соединения.

После этого перехожу на вкладку и добавляю шаг проверки.

Дальше указываю параметры шага.

Поясню каждый параметр:
- URL — адрес проверяемой страницы.
- Required string — строка на странице, которую будет искать zabbix. Я взял строку из футера сайта. Если заббикс ее найдет на странице, будет считать, что с сайтом все в порядке. Если нет — выдаст ошибку.
- Required status codes — требуемый код ответа. Указываю 200. Если заббикс получит какой-то другой код в ответ от web сервера, будет считать, что проверка закончилась неудачей.
После заполнения всех параметров жмем , чтобы добавить шаг и далее еще раз , чтобы добавить сам сценарий проверки. Должна получиться вот такая картина.




Значение параметра Failed step of scenario «github.com» равное 0 означает, что все шаги проверки сайта выполнены без ошибок. Если у вас несколько шагов и какой-то из них завешается ошибкой, тут будет номер этого шага. То есть в общем случае, все, что не 0, это какие-то проблемы. Позже мы это будем использовать в триггере. А пока добавим пару графиков к шаблону, которые потом можно будет использовать в дашбордах.
Установка Zabbix Agent на Linux
Если вы хотите установить zabbix-agent на сам сервер мониторинга, то ничего делать не надо, кроме самой установки. Для других систем необходимо подключить репозитории заббикса, которые мы использовали во время установки сервера. Можете посмотреть их в соответствующих разделах для своей системы.
Установка zabbix agent в Centos:
# dnf install zabbix-agent
Тоже самое в Ubuntu/Debian:
# apt install zabbix-agent
Для работы с сервером, который установлен локально на этой же машине, больше никаких настроек не надо делать. Если же вы будете устанавливать zabbix agent на другую машину, то в файле конфигурации агента /etc/zabbix/zabbix_agentd.conf нужно будет задать следующие параметры:
srv10 — имя вашего узла мониторинга, которое будет указано на сервере zabbix. Timeout рекомендую увеличивать для удобства. По умолчанию он всего 3 секунды и в некоторых проверках этого не хватает.
Запускаем агент и добавляем в автозагрузку:
# systemctl enable —now zabbix-agent
Проверяем лог файл /var/log/zabbix/zabbix_agentd.log.
Теперь попробуем остановить агент и проверить, придет ли уведомление на почту. Идем в консоль и выключаем агента:
# systemctl stop zabbix-agent
Ждем минимум 3 минуты. Именно такой интервал указан по-умолчанию для срабатывания триггера на недоступность агента. Раньше, кстати, было 5 минут. После этого проверяем главную панель, виджет Проблемы.
Проверяйте email ящик. Туда должно прийти уведомление от заббикс сервера. Обращаем внимание на тему письма, шаблон которого мы отредактировали. В самом начале темы указано имя хоста, на котором сработал триггер.

Если использовать стандартный шаблон, этой информации не будет.
Установка zabbix агент на Windows
В последних версиях Zabbix установка Windows агента значительно упростилась, так как появился готовый установщик. Во время его работы можно сразу указать адрес сервера мониторинга и имя хоста, на который устанавливается агент. В итоге, все делается автоматически, не надо ничего настраивать вручную .
Раньше все было сложнее, так как надо было вручную устанавливать службу, распаковав бинарники из архива. Так же потом нужно было руками править конфигурационный файл. Сейчас при дефолтных настройках ничего этого делать не надо.
Для установки Zabbix agent на Windows, идем на страницу загрузок официального сайта. Выбираем там Zabbix Agent и качаем подходящую версию.
На момент написания статьи еще не было инсталлятора для 5-го агента, но он наверняка появится в ближайшее время. Покажу на примере агента 4.4, который полностью совместим с более свежим сервером. Запускаем msi пакет и доходим до этапа, где надо указать адрес сервера и имя хоста. Делаем это.

Все остальное оставляем без изменений.
Не забываем создать разрешающее правило в Брандмауэре, если он у вас включен. Для этого идем в Панель управленияСистема и безопасностьБрандмауэр Windows — Дополнительные параметры — Правило для входящих подключений — Создать правило.
- Тип правила: Для порта;
- Действие: Разрешить подключение;
- Профиль (ставим галочки): Доменный, Частный, Публичный;
- Имя: Zabbix Agent;
На первой вкладке указываем имя хоста, такое же, как на клиенте, добавляем в любую существующую группу и задаем ip адрес компьютера.
Переходим на вкладку Шаблоны и выбираем там шаблон Template OS Windows by Zabbix agent.

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

