Как через zabbix мониторить доступность домена с определенного IP?
- Дмитрий Иванов
- Гость
- Сообщения: 7
- Стаж: 1 год 7 месяцев
- Контактная информация:
Как через zabbix мониторить доступность домена с определенного IP?
Нужно чтобы забикс следил что домен отвечает с заданного ип адреса, добавлять домены планирую через API забикса, только начинаю разбираться с zabbix поэтому для начала хочу понять общую схему как это сделать и уже потом конкретные шаги
1) Правильно понимаю чтобы мониторить что-либо в zabbix нужно в любом случае создать узел сети, потом к нему присоединить элемент данных и триггер созданный на основе какого либо элемента данных ?
2) Элемент данных и триггер нельзя присоеденить к узлу сети напрямую нужно сначала добавить их в шаблон, а потом уже этот шаблон прописать в узле сети (думаю так потому что в узле сети не нашел возможности подсоединить отдельный элемент данных или триггер)
По реализации моей задачи, возьмем любой домен например test.com у которого ip 67.225.146.248
3) Создал элемент данных где в поле ключ прописал net.dns.record[,test.com,A]
https://clip2net.com/s/4hZItIP
4) потом в предобработку добавил регулярное выражение чтобы на выходе получить просто IP
https://clip2net.com/s/4hZIBmD
5) при тесте элемента данных получаю просто ип адрес
https://clip2net.com/s/4hZIGA8
6) Потом создал триггер
где в выражении выбрал элемент данных и сделал такую запись
last(/Zabbix server/net.dns.record[,test.com,A])<>"67.225.146.248"
но при тесте почему то получаю TRUE хотя должно быть FALSE
https://clip2net.com/s/4hZILTi
7) Если вручную вбить в поле значение ип 67.225.146.248, то получаю FALSE как и должно быть
https://clip2net.com/s/4hZIORh
Где тут ошибка почему тригерр не работает как должен ?
8) Ну и вообще по реализации все ли правильно можно ли сделать это проще, можно ли создать элемент данных который будет брать имя домена прямо из узла сети, потому что как я делаю это под каждый домен надо свой узел сети, элемент данных и триггер ?
1) Правильно понимаю чтобы мониторить что-либо в zabbix нужно в любом случае создать узел сети, потом к нему присоединить элемент данных и триггер созданный на основе какого либо элемента данных ?
2) Элемент данных и триггер нельзя присоеденить к узлу сети напрямую нужно сначала добавить их в шаблон, а потом уже этот шаблон прописать в узле сети (думаю так потому что в узле сети не нашел возможности подсоединить отдельный элемент данных или триггер)
По реализации моей задачи, возьмем любой домен например test.com у которого ip 67.225.146.248
3) Создал элемент данных где в поле ключ прописал net.dns.record[,test.com,A]
https://clip2net.com/s/4hZItIP
4) потом в предобработку добавил регулярное выражение чтобы на выходе получить просто IP
https://clip2net.com/s/4hZIBmD
5) при тесте элемента данных получаю просто ип адрес
https://clip2net.com/s/4hZIGA8
6) Потом создал триггер
где в выражении выбрал элемент данных и сделал такую запись
last(/Zabbix server/net.dns.record[,test.com,A])<>"67.225.146.248"
но при тесте почему то получаю TRUE хотя должно быть FALSE
https://clip2net.com/s/4hZILTi
7) Если вручную вбить в поле значение ип 67.225.146.248, то получаю FALSE как и должно быть
https://clip2net.com/s/4hZIORh
Где тут ошибка почему тригерр не работает как должен ?
8) Ну и вообще по реализации все ли правильно можно ли сделать это проще, можно ли создать элемент данных который будет брать имя домена прямо из узла сети, потому что как я делаю это под каждый домен надо свой узел сети, элемент данных и триггер ?
количество слов: 70
- Артём Мамзиков
- Admin
- Сообщения: 853
- Стаж: 5 лет 7 месяцев
- Откуда: Вологодская область
- Поблагодарили: 37 раз
- Контактная информация:
Как через zabbix мониторить доступность домена с определенного IP?
1. Да, узел делаешь в заббиксе и можно в нем сделать все проверки всех узлов, но правильнее сделать разные узлы в заббиксе проще потом действия делать, временно отключать, размещать на карте и тд. в общем для фильтрации всего что есть в заббикс.
2. Раньше можно было создать элемент данных прямо в узле, в новых версиях не знаю но по идее думаю должно быть.
Но если проверки одинаковые проще сделать шаблоном потом только к узлам цепляй. А в шаблоне указать макрос если это IP совпадает с текущим узлом сети
{HOST.CONN} - IP-Узла
{HOST.HOST} - Имя-Узла
{HOST.NAME} - Имя-видимое
Либо свой макрос создать и задавать его в узлах цепля шаблон к узлу
4. Предобработку можно укоротить \s+([0-9.]+)\s+ вывод \1
\s+ любое кол-во пробелов, но если будут еще цифровые значения в начале то может отработать не верно взяв начало или так A\s+([0-9.]+)\s+
6. если возможен пустой ответ можно его заменить на 0 и сделать срабатывание что =0
так же например нет данных по времени .nodata(6m)}=1
и лучше использовать функцию регулярки если ip не такой ошибка .iregexp(67.225.146.248)}=0
а last тут не нужен
Например bind тут поиск строки
Template OS Linux rus (Пост Артём Мамзиков #272)
Описание bind - наиболее распространённый DNS сервер
nslookup сайт.ru 127.0.0.1 | awk '/Name:/{val=$NF;flag=1;next} /Address:/ && flag{print $NF,val;val=""}'
Выражение {proxyalt.Имя.local:bind.str(192.168.xx.xx)}=0
2. Раньше можно было создать элемент данных прямо в узле, в новых версиях не знаю но по идее думаю должно быть.
Но если проверки одинаковые проще сделать шаблоном потом только к узлам цепляй. А в шаблоне указать макрос если это IP совпадает с текущим узлом сети
{HOST.CONN} - IP-Узла
{HOST.HOST} - Имя-Узла
{HOST.NAME} - Имя-видимое
Либо свой макрос создать и задавать его в узлах цепля шаблон к узлу
4. Предобработку можно укоротить \s+([0-9.]+)\s+ вывод \1
\s+ любое кол-во пробелов, но если будут еще цифровые значения в начале то может отработать не верно взяв начало или так A\s+([0-9.]+)\s+
6. если возможен пустой ответ можно его заменить на 0 и сделать срабатывание что =0
так же например нет данных по времени .nodata(6m)}=1
и лучше использовать функцию регулярки если ip не такой ошибка .iregexp(67.225.146.248)}=0
а last тут не нужен
Например bind тут поиск строки
Template OS Linux rus (Пост Артём Мамзиков #272)
Описание bind - наиболее распространённый DNS сервер
nslookup сайт.ru 127.0.0.1 | awk '/Name:/{val=$NF;flag=1;next} /Address:/ && flag{print $NF,val;val=""}'
Выражение {proxyalt.Имя.local:bind.str(192.168.xx.xx)}=0
количество слов: 72
- Дмитрий Иванов
- Гость
- Сообщения: 7
- Стаж: 1 год 7 месяцев
- Контактная информация:
Как через zabbix мониторить доступность домена с определенного IP?
Артём Мамзиков,
Добавил элемент данных который создал тут
https://clip2net.com/s/4hZItIP в шаблон, добавил этот шаблон к узу сети, но никаких данных не получаю, открываю последние данные там ничего
https://clip2net.com/s/4hZNwuc
где ошибка ?
Добавил элемент данных который создал тут
https://clip2net.com/s/4hZItIP в шаблон, добавил этот шаблон к узу сети, но никаких данных не получаю, открываю последние данные там ничего
https://clip2net.com/s/4hZNwuc
где ошибка ?
А можно пример всей строки для триггера с моим доменом test.com и его ип, очень сложно разобраться что конкретно писать чтобы не было ошибокАртём Мамзиков писал(а): ↑Пн мар 06, 2023 19:48 так же например нет данных по времени .nodata(6m)}=1
и лучше использовать функцию регулярки если ip не такой ошибка .iregexp(67.225.146.248)}=0
а last тут не нужен
количество слов: 27
- Артём Мамзиков
- Admin
- Сообщения: 853
- Стаж: 5 лет 7 месяцев
- Откуда: Вологодская область
- Поблагодарили: 37 раз
- Контактная информация:
Как через zabbix мониторить доступность домена с определенного IP?
можно проверить в терминале какой ответ zabbix_get -s 127.0.0.1 -p 10050 -k 'net.dns.record[,test.com,A]'
или временно сделать текст
https://www.zabbix.com/documentation/4. ... /functions - Поддерживаемые функции триггеров
https://www.zabbix.com/documentation/4. ... expression - арифметические функции
можешь в триггер нажать добавить функцию и все выберешь и он сам составит строку, на новой версии не много не так порядок как на 4
или временно сделать текст
https://www.zabbix.com/documentation/4. ... /functions - Поддерживаемые функции триггеров
https://www.zabbix.com/documentation/4. ... expression - арифметические функции
можешь в триггер нажать добавить функцию и все выберешь и он сам составит строку, на новой версии не много не так порядок как на 4
количество слов: 31
- Дмитрий Иванов
- Гость
- Сообщения: 7
- Стаж: 1 год 7 месяцев
- Контактная информация:
Как через zabbix мониторить доступность домена с определенного IP?
в терменале там где установлен заббикс написал эту команду он выдает то же самое что и веб интерфейс заббикса то есть строкуАртём Мамзиков писал(а): ↑Пн мар 06, 2023 20:34 можно проверить в терминале какой ответ zabbix_get -s 127.0.0.1 -p 10050 -k 'net.dns.record[,test.com,A]'
или временно сделать текст
test.com A 67.225.146.248
В элементе данных у меня Тип информации и так стоял текст
Сейчас я не понимаю почему элемент данных не выдает никих данных когда добавляю этот элемент к узлу сети и смотрю в мониторинг
https://clip2net.com/s/4hZQi4I
что то видимо не включил, но что ?
количество слов: 32
- Артём Мамзиков
- Admin
- Сообщения: 853
- Стаж: 5 лет 7 месяцев
- Откуда: Вологодская область
- Поблагодарили: 37 раз
- Контактная информация:
Как через zabbix мониторить доступность домена с определенного IP?
Дмитрий Иванов, проверь предобработку или убери ее пока и посмотри как без нее.
количество слов: 0
- Дмитрий Иванов
- Гость
- Сообщения: 7
- Стаж: 1 год 7 месяцев
- Контактная информация:
Как через zabbix мониторить доступность домена с определенного IP?
Артём Мамзиков, Убрал предобработку ничего не поменялось, нашел сторонний шаблон из статьи https://habr.com/ru/company/first/blog/684136/ там куча данных запрашивается по домему, но тоже никаких данных не вижу
Данные идут только от встроенных в заббикс элементов данных типо ICMP ping
думаю что то глобально не так с настройкой узла к которому применяю элементы данных, но что, уже сменил домен на точно работающий без изменений
вот настройка узла сети
вот настройка элемента данных
в правилах обнаружения есть такая проблема, даже после чтения документации я не понял что это значит
Данные идут только от встроенных в заббикс элементов данных типо ICMP ping
думаю что то глобально не так с настройкой узла к которому применяю элементы данных, но что, уже сменил домен на точно работающий без изменений
вот настройка узла сети
вот настройка элемента данных
в правилах обнаружения есть такая проблема, даже после чтения документации я не понял что это значит
Последний раз редактировалось Дмитрий Иванов Пн мар 06, 2023 23:21, всего редактировалось 2 раза. количество слов: 10
- Артём Мамзиков
- Admin
- Сообщения: 853
- Стаж: 5 лет 7 месяцев
- Откуда: Вологодская область
- Поблагодарили: 37 раз
- Контактная информация:
Как через zabbix мониторить доступность домена с определенного IP?
Дмитрий Иванов, у тебя данные запрашиваться через заббикс агент а он не работает значок zbx красный. Смотри на проверяемом узле запущен ли заббикс агент , открыты ли порты 10050 10051 правильно ли настроен конфиг и тд.
количество слов: 3
- Дмитрий Иванов
- Гость
- Сообщения: 7
- Стаж: 1 год 7 месяцев
- Контактная информация:
Как через zabbix мониторить доступность домена с определенного IP?
Артём Мамзиков, так заббикс же может мониторить без установки агента, разве нет ?
я и не предполагал что то ставить для мониторинга домена и порт у домена стандартный 80
если так нельзя то как можно мониторить доступность домена без установки заббикс агента?
я и не предполагал что то ставить для мониторинга домена и порт у домена стандартный 80
если так нельзя то как можно мониторить доступность домена без установки заббикс агента?
количество слов: 1
- Артём Мамзиков
- Admin
- Сообщения: 853
- Стаж: 5 лет 7 месяцев
- Откуда: Вологодская область
- Поблагодарили: 37 раз
- Контактная информация:
Как через zabbix мониторить доступность домена с определенного IP?
Дмитрий Иванов, у тебя выбран тип запроса инфы заббикс агент и все данные запрашиваются через него.
Если тебе нужно без него выбери другой тип , но данный ключ уже не будет работать так как он вшит в агента и работает только через него.
Делаешь например внешний скрипт и запрашиваешь инфу через него. Или может что из простых проверок подойдёт, либо какой то другой тип про все написаны в документации.
Если тебе нужно без него выбери другой тип , но данный ключ уже не будет работать так как он вшит в агента и работает только через него.
Делаешь например внешний скрипт и запрашиваешь инфу через него. Или может что из простых проверок подойдёт, либо какой то другой тип про все написаны в документации.
количество слов: 0