Многие администраторы воспринимают Zabbix как некоторую цельную и закрытую систему, все данные в которой собираются сервером Zabbix и концентрируются в одном месте.
Однако это не так, Zabbix достаточно открытая и универсальная система, которая может предоставлять различные сценарии использования. Так для получения данных от агентов вам не обязательно нужен сервер или прокси, вы можете использовать для этого отдельную утилиту командной строки - Zabbix get.
Вы можете установить ее как на хост с Zabbix, так и на любую иную систему, для которой есть соответствующие пакеты. Для этого нужно подключить репозитории Zabbix и выполнить команду (для DEB-систем):
apt install zabbix-get
Если данный узел не является сервером Zabbix, то нужно добавить его адрес в опцию
Server агента, в противном случае вы получите ошибку:Check access restrictions in Zabbix agent configuration
После чего можете начать общаться со своим агентом при помощи командной строки, общий синтаксис такой:
zabbix_get -s host-name-or-IP [-p port-number] -k item-key
Вам нужно указать адрес агента после ключа -s и ключ элемента данных (item) после ключа -k, ключ -p – порт не является обязательным, если он не указан, то будет использоваться стандартный 10050.
Где взять ключи? Их можно посмотреть в самом Zabbix, например, открыв нужный шаблон.
Проверим доступность агента:
zabbix_get -s 192.168.101.198 -p 10050 -k agent.ping
Если агент доступен получим значение 1, иначе 0.
Проверим утилизацию процессора:
zabbix_get -s 192.168.101.198 -p 10050 -k system.cpu.util
Или аптайм:
zabbix_get -s 192.168.101.198 -p 10050 -k system.uptime
А вот при попытке получить утилизацию памяти в % получим ошибку:
zabbix_get -s 192.168.101.198 -k vm.memory.util
ZBX_NOTSUPPORTED: Unknown metric vm.memory.util
Неизвестная метрика… Но почему, ведь в шаблоне такой ключ есть?
Но все правильно, вспомним, что есть вычисляемые элементы данных, которые не собираются с узлов, а вычисляются сервером на основе иных полученных значений, указанный ключ принадлежит именно вычисляемому элементу, в чем также несложно убедиться, посмотрев колонку Тип, а открыв сам элемент мы можем увидеть на основании каких элементов и как он вычисляется.
Данную утилиту удобно использовать в первую очередь для диагностики и отладки агентов, но никто не мешает получать с ее помощью нужные данные для сторонних систем, отчетов или средств автоматизации.


