zabbix_v2

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
zabbix_v2 [2019/06/21 13:54]
val [Лабораторные работы: Пример задачи, использующей Zabbix API]
zabbix_v2 [2019/06/21 16:23]
val удалено
Line 137: Line 137:
  
   * [[Сервис Zabbix#​Создание своих шаблонов]] на основе Template App SSH Service с добавлением макроса,​ определяющего порт сервиса   * [[Сервис Zabbix#​Создание своих шаблонов]] на основе Template App SSH Service с добавлением макроса,​ определяющего порт сервиса
-  * Установка zabbix agent на gate ([[Сервис Zabbix#​Мониторинг с использованием Zabbix agents]]) (рассмотреть и, в конце, отключить PSK аутентификацию для удобства выполнения последующих лабораторных работ)+  * Установка zabbix agent на gate ([[Сервис Zabbix#​Мониторинг с использованием Zabbix agents]]) (рассмотреть и, в конце, отключить PSK аутентификацию ​и на агенте и на сервере, ​для удобства выполнения последующих лабораторных работ)
   * Назначаем шаблон системам server и gate   * Назначаем шаблон системам server и gate
   * Меняем порт ([[Сервис SSH#​Настройка ssh сервера]]) на gate и переопределяем значение макроса   * Меняем порт ([[Сервис SSH#​Настройка ssh сервера]]) на gate и переопределяем значение макроса
Line 383: Line 383:
 Техническое задание:​ сканировать через nmap определенные узлы и уведомлять,​ если результаты сканирования изменились Техническое задание:​ сканировать через nmap определенные узлы и уведомлять,​ если результаты сканирования изменились
  
-  - Создать шаблон My Template Nmap с [[Сервис Zabbix#​Элементы типа trapper]] и триггером (см. [[Сервис Zabbix#​Пример с текстовым элементом]]),​ подключить его к узлам, которые надо мониторить (перед подключение к узлу, удалить элемент my.nmap от предыдущих лабораторных работ). +Решение:
-  - Периодически получать список узлов с шаблоном My Template Nmap из Zabbix через [[Сервис Zabbix#​API]] +
-  - Периодически сканировать узлы (см. [[Сервис Zabbix#​Пример текстового элемента]])+
  
 +  - Создать шаблон "My Template Nmap" с [[Сервис Zabbix#​Элементы типа trapper]] и триггером (см. [[Сервис Zabbix#​Пример с текстовым элементом]]),​ подключить его к узлам, которые надо мониторить (перед подключение к узлу, удалить элемент my.nmap от предыдущих лабораторных работ).
 +  - Периодически получать список узлов с шаблоном 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 /​root/​hosts_nmap.txt
 +</​code>​
 +
 +  - Периодически сканировать узлы (см. [[Сервис Zabbix#​Пример текстового элемента]]) и передавать результаты сканирования в zabbix
 +
 +<​code>​
 +# cat /​root/​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>​
 +==== Вопросы ====
 +
 +  - Верно ли что Zabbix API можно использовать для управления результатами мониторинга?​
 +  - Верно ли что Zabbix API можно использовать для управления конфигурацией системы мониторинга?​
 ===== Модуль 11: Дополнительные возможности визуализации результатов мониторинга в Zabbix ===== ===== Модуль 11: Дополнительные возможности визуализации результатов мониторинга в Zabbix =====