Мониторинг PPS (Packets Per Second) в Zabbix

Приведу пример мониторинга PPS (Packets Per Second) на сетевых интерфейсах в Linux.
Для того чтобы посчитать количество передаваемых пакетов в секунду на сетевом интерфейсе, создадим два простых скрипта, первый для расчета передаваемых пакетов:

#!/bin/bash
TX1=`cat /sys/class/net/ens2f1/statistics/tx_packets`
sleep 1
TX2=`cat /sys/class/net/ens2f1/statistics/tx_packets`
TXPPS=`expr $TX2 - $TX1`
echo "$TXPPS"

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

#!/bin/bash
RX1=`cat /sys/class/net/ens2f1/statistics/rx_packets`
sleep 1
RX2=`cat /sys/class/net/ens2f1/statistics/rx_packets`
RXPPS=`expr $RX2 - $RX1`
echo "$RXPPS"

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

UserParameter=tx_pps_ens2f1,/etc/zabbix/tx_pps_ens2f1.sh
UserParameter=rx_pps_ens2f1,/etc/zabbix/rx_pps_ens2f1.sh

Перезапустим zabbix агент чтобы применить изменения:

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

Готово, теперь можно добавить в шаблоне или узле сети на zabbix сервере элементы данных с именами tx_pps_ens2f1 и rx_pps_ens2f1, «Тип элемента:» Zabbix агент, «Хранение значения:» Как есть.
Для них создадим графики и триггеры чтобы получить уведомления о больших значениях.

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

Смотрите также мои статьи:
Примеры элементов данных для Zabbix
Скрипт просмотра PPS (Packets Per Second)

Did my article help you? How about buying me a cup of coffee as an encouragement? Buy me a coffe.

Оставьте комментарий

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