Низкоуровневое обнаружение в ZABBIX: правила LLD

http://www.zabbix.com/

В ZABBIX имеется возможность создания с нуля пользовательских правил низкоуровневого обнаружения и это крайне полезная функциональность для тех администраторов, кто хочет мониторить всех и вся. Именно с этим функционалом вы можете возвращать наборы каких угодно данных — будь то перечень дисков на сервере, список баз данных или что-то другое.

Процесс создания шаблонов мониторинга на основе LLD я разобью на две статьи. В первой (то есть в этой) расскажу конкретно про обнаружение, а во второй про все остальное.


Если вам интересна тематика ZABBIX, рекомендую обратиться к основной статье — Система мониторинга ZABBIX, в ней вы найдете дополнительную информацию.


Низкоуровневое обнаружение в ZABBIX: правила LLD

В официальной документации эта тема 1 рассмотрена подробно, но на мой взгляд примеры слишком узкие (штатное обнаружение файловых систем, snmp OID’ов и сетевых интерфейсов) и обсуждение вопроса начинается совсем не с того конца. По поводу пользовательских правил обнаружения присутствует лишь небольшая «приписка» в самом конце с примером скрипта на perl (!).

Мне же хочется рассмотреть вопрос значительно шире, но в то же время на конкретных примерах. Я расскажу об LLD на основе задачи анализа данных производительности дисковой подсистемы Linux-серверов. Метрики производительности буду получать утилитой iostat (пакет sysstat). Пример вывода данных:

Низкоуровневое обнаружение в ZABBIX правила LLD 01Вы же можете анализировать вывод любой другой программы.

Что это?

Для тех, кто ещё не знает о чем идет речь, небольшое пояснение на основе простого примера:

у вас есть сервер, на сервере один жесткий диск. Вам нужно отслеживать набор метрик этого диска. Вы без труда создаете шаблон, наполняете его ключами данных, триггерами и прочими элементами и ставите на мониторинг. Далее вам нужно мониторить второй сервер, на котором два диска (разумеется с разными именами). Перед вами встает задача написать новый или дополнить существующий шаблон ещё одним диском с точно такими же метриками. А что, если потом у вас появится сервер с 10 дисками или более?

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

Правила обнаружения

Для создания правила обнаружения необходимо зайти в шаблон мониторинга (или создать новый, если его ещё нет) — Правила обнаружения — Создать правило обнаружения:

Низкоуровневое обнаружение в ZABBIX правила LLD 02Подавляющее большинство параметров произвольные и вы можете выбрать для них любые значения, но все же я поясню некоторые моменты:

  • Имя — любое на ваш вкус;
  • Тип — только Zabbix агент;
  • Ключ — выберите любой, но потом вы должны использовать это же имя ключа в конфигурации агента Zabbix;
  • Интервал обновлений — не выставляйте слишком маленький интервал, ведь аппаратная конфигурация сервера обычно меняется редко. Для отладки можете использовать значение в 60 сек., чтобы не ждать слишком долго;
  • Фильтр — имя макроса, которое будет использоваться для извлечения имен блочных устройств (актуально для моего примера. У вас это может быть что-то другое, например имена сетевых интерфейсов). Макрос должен быть заключен в {#}, в имени допускается использование символов A-Z , 0-9 , _;

Нажимайте Сохранить и на этом этапе работы на стороне сервера Zabbix завершены, в следующих статьях мы сюда ещё вернемся.

Набор данных

Агент должен возвращать серверу набор отслеживаемых элементов в формате json (список блочных устройств, если опираться на мой пример). Это главное и единственное требование. Каким образом вы это реализуете уже не так важно. Данные в человекочитаемом виде могут выглядеть так:

Вы можете возвратить их с помощью отдельного скрипта (пример скрипта на bash, который возвращает список дисков с Linux-сервера в json, анализируя вывод утилиты iostat):

Результат выполнения будет примерно таким (без форматирования):

Либо вы можете вытащить данные всего одной строчкой (например с помощью awk):

В обоих случаях вывод одинаковый.

Конфигурация агента

Следующий этап — настроить агента ZABBIX, чтобы он возвращал серверу нужные данные. Сделать это нужно через конфигурационный файл агента (для Debian — /etc/zabbix/zabbix_agentd.conf). В самый конец добавляем строчку с пользовательским параметром:

Примечание: чтобы не засорять основной конфиг, вы можете добавить любой параметр конфигурации в отдельный файл с расширением .conf и поместить его в папку доп. конфигов (по умолчанию для Debian /etc/zabbix/zabbix_agentd.conf.d/, но на всякий случай посмотрите значение параметра Include= в основном конфиге).

Это если для получения данных используете скрипт. Если же нужно выполнить одну строчку кода, то это можно сделать сразу внутри параметра:

Сохраняем изменения, выходим, перезапускаем агента командой:

Работы на стороне агента пока что завершены.

Проверка

Самое время все проверить и сделать это лучше всего с сервера Zabbix командой:

Где 192.168.0.4 — адрес сервера с агентом Zabbix, состояние которого необходимо отслеживать. Команда должна возвратить список дисков в формате json как в примере в предыдущей главе. Если это произошло, значит все прошло успешно. Если же нет, то разбирайтесь что где сделали неправильно.

comments powered by HyperComments
1beautifully
2022-06-18 07:30:40
<strong>2wednesday</strong>
research writing help
2022-07-05 15:11:48
<strong>help with dissertation topic https://professionaldissertationwriting.org/</strong>
dissertation editing services
2022-07-05 18:43:15
<strong>dissertation abstracts international https://professionaldissertationwriting.com/</strong>
dissertation help free
2022-07-05 20:21:01
<strong>defending dissertation https://helpwithdissertationwritinglondon.com/</strong>
defending your dissertation
2022-07-06 00:44:47
<strong>masters dissertation writing services uk https://dissertationhelpexpert.com/</strong>
dissertation title generator
2022-07-06 04:13:07
<strong>dissertation help for phd candidates https://accountingdissertationhelp.com/</strong>
online edd no dissertation
2022-07-06 07:32:17
<strong>art dissertation help https://examplesofdissertation.com/</strong>
dissertation proposal writing service
2022-07-06 09:01:02
<strong>writing methodology for dissertation https://writing-a-dissertation.net/</strong>
premium dissertation writing service
2022-07-06 13:32:55
<strong>writing doctoral dissertation https://bestdissertationwritingservice.net/</strong>
uf dissertation award
2022-07-06 15:18:38
<strong>average dissertation length https://businessdissertationhelp.com/</strong>
dissertation help service
2022-07-06 16:57:09
<strong>dissertations writing https://customdissertationwritinghelp.com/</strong>
dissertation editing
2022-07-06 21:56:30
<strong>thesis help https://writingadissertationproposal.com/</strong>
phd dissertation writing
2022-07-06 23:10:52
<strong>dissertation writing services https://dissertationhelpspecialist.com/</strong>
phd without dissertation
2022-07-07 02:36:12
<strong>dissertation example https://dissertationhelperhub.com/</strong>
help with dissertation topic
2022-07-07 05:25:37
<strong>doctoral dissertation help thesis https://customthesiswritingservices.com/</strong>
motorcity casino online
2022-07-25 18:48:47
<strong>bovada online casino https://download-casino-slots.com/</strong>
gun lake online casino
2022-07-25 21:09:55
<strong>free online casino real money https://firstonlinecasino.org/</strong>
lady luck casino online
2022-07-26 02:27:53
<strong>my choice online casino https://newlasvegascasinos.com/</strong>
online casino florida
2022-07-26 04:19:08
<strong>online casino real money no deposit https://trust-online-casino.com/</strong>
castle casino online
2022-07-26 06:59:06
<strong>bovada online casino https://onlinecasinosdirectory.org/</strong>
best online casino fast payout
2022-07-26 13:15:26
<strong>online casino illinois https://free-online-casinos.net/</strong>
online casino colorado
2022-07-26 17:18:56
<strong>best casino online usa https://cybertimeonlinecasino.com/</strong>
harrahs casino online
2022-07-26 19:15:52
<strong>online casino paypal https://1freeslotscasino.com/</strong>
online casino
2022-07-27 00:12:49
<strong>online casino software https://vrgamescasino.com/</strong>
what is the best online casino for real money
2022-07-27 01:11:58
<strong>vegas casino online $100 no deposit bonus codes 2021 https://casino-online-roulette.com/</strong>
drake online casino
2022-07-27 05:01:54
<strong>reliable online casino https://casino-online-jackpot.com/</strong>
online casino for real money no deposit
2022-07-27 06:53:55
<strong>maryland live online casino https://onlineplayerscasino.com/</strong>
online casino with free signup bonus real money
2022-07-27 10:57:42
<strong>thunder valley online casino https://ownonlinecasino.com/</strong>
caesars online casino pa
2022-07-27 13:19:48
<strong>nj casino online https://all-online-casino-games.com/</strong>
newest pa online casino
2022-07-27 13:50:21
<strong>resorts online casino nj https://casino8online.com/</strong>
vpn netflix free
2022-08-07 14:52:07
<strong>free vpn server list https://freevpnconnection.com/</strong>
best vpn for 2022
2022-08-07 18:39:23
<strong>ipvanish vpn https://shiva-vpn.com/</strong>
business class vpn service
2022-08-07 19:04:45
<strong>free vpn google chrome https://freehostingvpn.com/</strong>
best vpn reddit 2019
2022-08-07 21:35:45
<strong>best anonymous vpn https://ippowervpn.net/</strong>
buy vpn with bitcoin
2022-08-08 00:01:06
<strong>best budget vpn https://imfreevpn.net/</strong>
windows vpn
2022-08-08 03:27:05
<strong>free unlimited vpn for mac https://superfreevpn.net/</strong>
buy vpn for windows
2022-08-08 05:56:58
<strong>free windows vpn https://free-vpn-proxy.com/</strong>
best vpn services 2018
2022-08-08 07:54:25
<strong>how does vpn work https://rsvpnorthvalley.com/</strong>
Яндекс.Метрика