2016-12-14 2 views
0

Я пытаюсь реализовать функцию с Zabbix API, основным требованием является: создать командный скрипт (строка или файл сценария оба в порядке , независимо от сохранения на сервере или агенте) -> выполнить на агенте;Как увеличить длину сценария удаленной команды или как отправить файл с сервера на агент для zabbix

Я нахожу 2 способ сделать это с пультом дистанционного управления Command:

1) Global Script: Я могу использовать его по телефону script.execute непосредственно, но «Удаленные команды ограничены 255 символами», это не достаточно создайте скрипт/команду как наше требование; и это сложнее, если нам нужно использовать Python, #python -c "..." не может работать нормально, если скрипт Python немного сложный, и использовать команду оболочки для создания * .py файла на агенте нужно больше символов;

Глобальный скрипт сохраняется в таблице скриптов, но изменение структуры таблицы путем увеличения длины от 255 до 1024 не является хорошей идеей в соответствии с комментариями в https://www.zabbix.com/forum/showthread.php?t=51869;

2) Пользовательский скрипт: нет никаких ограничений на командные символы, но мне пришлось настроить его в Action и ждать его запуска.

С другой стороны, даже удаленная команда может создавать файл сценария на агенте, это все еще не удобно, есть ли способ отправить файл с Zabbix Server агенту по собственной функции Zabbix?

Я хочу спросить его на форумах Zabbix, но у меня нет разрешения на создание новой публикации/темы, поэтому я перехожу сюда.

Есть ли кто-нибудь, кто может мне помочь?

ответ

1

Это не особенность системы мониторинга. Возможно, вы можете злоупотреблять ключом system.run - иметь сценарий, который разбивает ваш целевой скрипт на ~ 200 байтовых блоков, а затем объединяет их с агентом, запуская удаленные команды или zabbix_get так (и будьте осторожны с символами перевода строки):

zabbix_get -s target.host -k "system.run[echo \"$script_part\" >> /script_location]" 

Это было бы ужасно и хакерским.

Пока есть a feature request to introduce agent configuration management in Zabbix, имею ли я уже упоминание, что это не задача для системы мониторинга? Возможно, вы захотите изучить инструменты управления системой, такие как Puppet, Chef и другие.

Смежные вопросы