Скрипт на проверку ip
#!/bin/bash
# Получаем IP-адрес с помощью curl
ip=$(curl -s api.ipify.org)
# Проверяем,удалось ли получить IP
if [[ -z "$ip" ]]; then
echo
"Ошибка получения IP-адреса."
exit 1
fi
echo
"$ip"
Работа в консоли
1) Нам нужно прописать этот скрипт
по пути /usr/lib/zabbix/externalscripts/name.sh
2) Правим файл zabbix-agent: nano
/etc/zabbix/zabbix_agentd.conf
Пишем это в самый низ файла
UserParameter=ip[*],/usr/lib/zabbix/externalscripts/myip.sh
Должно получиться так
- UserParameter -- Пользовательские параметры
- ip — Это ключ, который мы потом будем использовать
- [*] -- Параметры ключа в данном случае * обозначает любой
- /usr/lib/zabbix/externalscripts/name.sh- Путь до скрипта
И рестартуем zabbix-agent systemctl restart
zabbix-agent.service
3) Делаем его исполняемым chmod+x /usr/lib/zabbix/externalscripts/myip.sh
И накидываем права (я ставлю 777,
знаю, что так делать нельзя) chmod 777 /usr/lib/zabbix/externalscripts/myip.sh
И проверяем работоспособность
скрипта zabbix_agentd -t ip :ip Это наш ключ
Работы в web интерфейсе
4)Идем на web интерфейс
zabbix и создаем новый Шаблон (Templates)
После того как создали, нам нужно еще настроить его. Для этого нам
нужно его открыть и нажать на Элементы данных (Items)
Создаем элемент данных:
1)Указываем имя
2) Тип агента (Zabbix agent)
3)Ключ (те самые которые мы
указывали в пункте 2 (когда работали в консоли)
4)Тип данных – Текст
5)Интервал (s – секунды, m -- минуты , h- часы )
Жмем Upgrade и почти все готово
Если что настройки можно прверить
нажав на кнопу Test
На этом этапе уже можно этот Шаблон прикрутить к Zabbix серверу и снимать
данные по внешнему ip
Но нам же еще нужно знать когда ip меняется
Для этого нам нужно создать триггер
В настройках шаблона открываем пункт триггеры(triggers) и создаем
триггер
1)Имя триггера
2)Problem expression - last(/My-ip/ip[ip])<>" основной ip"
- Это условие при котором сработает триггер (Если
последнее значение вашего внешнего IP был резервный
3)Recovery
expression-last(/My-ip/ip[ip])="основной ip "
- Это условие при котором ошибка уйдет
Не забываем этот шаблон прикрутить к Zabbix Server в настройках
Хостов
На этом в принципе прикручивание скрипта завершено