Zabbix speedtest скорость на карте

Zabbix speedtest скорость на карте

Установим консольную версию Speedtest

sudo apt install speedtest-cli

Для удобства переходим в root

sudo -s

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

mkdir script

Запустим speedtest

speedtest-cli --simple
Ping: 22.825 ms
Download: 23.21 Mbit/s
Upload: 61.51 Mbit/s

Создадим файл с показателями speedtest

speedtest-cli --simple > /home/virtual/script/speed.txt

Разберем файл для получения значений

cat /home/virtual/script/speed.txt | grep Ping | awk '{print $2}'
22.825

Как оказалось Zabbix агент не отрабатывает awk. Будем делать через cut

cat /home/virtual/script/speed.txt | grep Ping | cut -d " " -f2
22.825
cat /home/virtual/script/speed.txt | grep Download | cut -d " " -f2
23.21
cat /home/virtual/script/speed.txt | grep Upload | cut -d " " -f2
61.51

Сделаем чтобы данные обновлялись каждые 10 минут

crontab -e
*/10 * * * * speedtest-cli --simple > /home/virtual/script/speed.txt

Теперь необходимо передавать эти параметры на Zabbix сервер. Для этого в конфигурацию zabbix_agentd.conf необходимо добавить 3 строки для передачи 3х переметров

ping
download
upload
nano /etc/zabbix/zabbix_agentd.conf
UserParameter=ping[*],cat /home/virtual/script/speed.txt | grep Ping | cut -d " " -f2
UserParameter=download[*],cat /home/virtual/script/speed.txt | grep Download | cut -d " " -f2
UserParameter=upload[*],cat /home/virtual/script/speed.txt | grep Upload | cut -d " " -f2
service zabbix-agent restart

Теперь создадим шаблон с элементами данных speedtest. Добавим в него узел на котором установили speedtest. У меня это Zabbix server
zabbix speedtest

Теперь создадим каждый элемент данных

zabbix speedtest

Ping

Download

Upload

Можно посмотреть в последних данных что получилось
zabbix speedtest

Если по какой либо причине данных нет. То можно сделать проверку используя zabbix_get
Я использовал тот что шел с агентом для Windows

C:\zabbix\bin\win64>zabbix_get -s 192.168.11.199 -p 10050 -k "ping"
17.99

Если появляется ошибка

Check access restrictions in Zabbix agent configuration

То в параметрах zabbix_agent на сервере с которого читаются данные, необходимо добавить IP адрес откуда читаются данные через запятую

nano /etc/zabbix/zabbix_agentd.conf
Server=127.0.0.1,192.168.11.19
service zabbix-agent restart

Теперь можно добавить на карте сети отображене скорости интернет
Для этого на связи которую вы используете для интернета необходимо в подпись вписать 3 строки
zabbix speedtest

У меня он установлен на узле Zabbix server. Далее через двоеточие идет что отображать.

Ping: {Zabbix server:download.last(0)} ms
↓ DL: {Zabbix server:download.last(0)} Mbit/s
↑ UP: {Zabbix server:upload.last(0)} Mbit/s

zabbix speedtest

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

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