Проверка check_mk на основе Telnet

Я хочу реализовать проверку, основанную на telnet. Каждые 5 минут проверяйте telnets сетевое устройство, запускайте на нем какую-либо команду и получайте вывод.

Есть ли возможность выполнить пассивную проверку для этого? Предоставляет ли check_mk какое-либо средство для выполнения пассивных проверок на основе telnet.

2 ответа

Я только начинаю работать с Check_MK, но я думаю, что если вы сможете написать скрипт, который будет делать то, что требует ваш чек, тогда check_mk сможет его контролировать.

Ваш сценарий просто должен написать что-то вроде этого в STDOUT:

0 my_telnet_test time = 0.1 OK: все выглядит отлично

...или же:

2 my_telnet_test time = 0.7 Критическое: устройство говорит "foo", но я ожидаю "baa"

Формат STDOUT подробно описан здесь: http://mathias-kettner.com/checkmk_localchecks.html

После того, как ваш скрипт заработал, если вы можете запустить его без аргументов, вы можете просто поместить его в / usr / local / check_mk_agent / local на компьютере, на котором вы хотите запустить проверку, а затем запустить инвентаризацию на сервер check_mk. Он подберет изменения и запустит скрипт для вас.

Для части telnet вы должны взглянуть на

Создание сценария для сеанса Telnet?

для части Check_MK я хочу добавить: чтобы выполнить требование запускать скрипт каждые 5 минут, вы можете создать папку внутри директории локальных плагинов Check_MK (/usr/lib/check_mk_agent/local/) с именем в секундах в качестве имени, Check_MK, например, будет запускать каждый скрипт внутри /usr/lib/check_mk_agent/local/300/ каждые 300 секунд и сохранять предыдущий результат проверки в кеше для агента.

https://mathias-kettner.de/checkmk_localchecks.html

Иногда скрипт будет работать дольше, чем несколько секунд. Если время выполнения всех сценариев и плагинов агента превышает время ожидания активных проверок ядра мониторинга (обычно 60 или 120 секунд), тогда полная проверка будет прервана. Чтобы избежать этого, вы можете запускать локальные проверки асинхронно и использовать файлы кэша. Это делается путем помещения вашего скрипта в подкаталог, который назван числом - количеством секунд, в течение которых> вывод скрипта действителен:

/ USR / Lib / check_mk_agent / местные / 300 / MyScript

В этом случае агент будет:

Запустите этот скрипт в фоновом режиме и дождитесь его завершения. Сохраните результат скрипта в файле кеша ниже / etc / check_mk / cache. Используйте этот файл в течение 300 секунд, прежде чем снова запустить скрипт.

Другие вопросы по тегам