This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
zabbix_v2 [2019/06/21 13:58] val [Лабораторные работы: Пример задачи, использующей Zabbix API] |
zabbix_v2 [2019/06/21 15:53] val [Лабораторные работы: Пример задачи, использующей Zabbix API] |
||
---|---|---|---|
Line 385: | Line 385: | ||
Решение: | Решение: | ||
- | - Создать шаблон My Template Nmap с [[Сервис Zabbix#Элементы типа trapper]] и триггером (см. [[Сервис Zabbix#Пример с текстовым элементом]]), подключить его к узлам, которые надо мониторить (перед подключение к узлу, удалить элемент my.nmap от предыдущих лабораторных работ). | + | - Создать шаблон "My Template Nmap" с [[Сервис Zabbix#Элементы типа trapper]] и триггером (см. [[Сервис Zabbix#Пример с текстовым элементом]]), подключить его к узлам, которые надо мониторить (перед подключение к узлу, удалить элемент my.nmap от предыдущих лабораторных работ). |
- | - Периодически получать список узлов с шаблоном My Template Nmap из Zabbix через [[Сервис Zabbix#API]] | + | - Периодически получать список узлов с шаблоном My Template Nmap из Zabbix через [[Сервис Zabbix#API]] (Выяснить templateids шаблона "My Template Nmap") |
+ | |||
+ | <code> | ||
+ | # cat /root/zab_get_hosts.sh | ||
+ | </code><code> | ||
+ | #!/bin/sh | ||
+ | |||
+ | curl -s -k -X POST -H 'Content-Type: application/json-rpc' -d " | ||
+ | { | ||
+ | \"jsonrpc\": \"2.0\", | ||
+ | \"method\": \"host.get\", | ||
+ | \"params\": { | ||
+ | \"output\": [\"hostid\", \"host\"], | ||
+ | \"templateids\": [\"10NNN\"] | ||
+ | }, | ||
+ | \"auth\": \"${AUTH}\", | ||
+ | \"id\": 2 | ||
+ | } " http://127.0.0.1/zabbix/api_jsonrpc.php \ | ||
+ | | jq '.result | .[] | { host: .host} | tostring' \ | ||
+ | | tr -d '{}\\' | tr '"' ' ' | cut -d ' ' -f5 | ||
+ | </code><code> | ||
+ | # /root/zab_get_hosts.sh | tee hosts_nmap.txt | ||
+ | </code> | ||
- Периодически сканировать узлы (см. [[Сервис Zabbix#Пример текстового элемента]]) и передавать результаты сканирования в zabbix | - Периодически сканировать узлы (см. [[Сервис Zabbix#Пример текстового элемента]]) и передавать результаты сканирования в zabbix | ||
+ | <code> | ||
+ | # cat nmap_2_zabbix.sh | ||
+ | </code><code> | ||
+ | #!/bin/sh | ||
+ | |||
+ | while read host | ||
+ | do | ||
+ | echo $host | ||
+ | zabbix_sender -z 127.0.0.1 -p 10051 -s $host -k my.nmap \ | ||
+ | -o "$(/etc/zabbix/externalscripts/detect_host_nmap.sh $host)" | ||
+ | done | ||
+ | </code><code> | ||
+ | # /root/nmap_2_zabbix.sh < /root/hosts_nmap.txt | ||
+ | </code> | ||
==== Вопросы ==== | ==== Вопросы ==== | ||