Понимание журнала и дизайна snmptrap

У меня есть вопрос о SNMP и использовании ловушек.

Я не эксперт по SNMP, но я понимаю и немного знаю, как использовать инструменты SNMP.

Прежде чем описать, что именно я хотел бы сделать, я хотел бы задать небольшой вопрос о ловушках SNMP.

Короче говоря, я прочитал это руководство по Net- SNMP: и я пытаюсь проверить snmptrap на своем агенте и менеджере. Я определил ловушки SNMPV1 и уведомления SNMPV2 на агенте, как указано в руководстве, и попробовал те же команды для отправки ловушек snmpv1 и уведомлений snmpV2. Мой вопрос касается журналов snmptrapd. Когда я отправил эту команду от агента:

 snmptrap -v 1 -c commnunity_string my_server TRAP-TEST-MIB::demotraps my_agent 6 17 '' SNMPv2-MIB::sysLocation.0 s "Just here"

Я вижу это в файле журнала сервера snmptrapd:

2015-01-23 18:55:07 X.X.X (via UDP: [Y.Y.Y.Y]:36679) TRAP, SNMP v1, community community_string
    UCD-SNMP-MIB::ucdExperimental.990 Enterprise Specific Trap (17) Uptime: 31 days, 4:06:05.63
    SNMPv2-MIB::sysLocation.0 = STRING: Just here

И когда я отправил эту команду из агента:

 snmptrap -v 2c -c community_string my_serever '' NOTIFICATION-TEST-MIB::demo-notif SNMPv2-MIB::sysLocation.0 s "just here"

Я вижу это в файле журнала сервера snmptrapd:

27/01/2015 09:56:59 Cold Start de 0.0.0.0

Пока я не отправил универсальный ремешок для холодного старта (0). Но когда я анализирую пакет, я вижу всю информацию, отправленную через эту ловушку snmpv2. Итак, мой первый вопрос: почему демон snmptrapd иногда регистрирует только сообщение "cold start" вместо полной информации о прерывании.

А теперь по существу: я слышал, что мы не обязаны использовать MIB для отправки ловушек, нам нужны только OID. На самом деле мое дело в том, что я хотел бы отслеживать набор файлов (используя incrond или что-то еще) и отправлять ловушку, когда файл изменяется на сервер, чтобы выполнить определенное действие. Как я могу установить это точно, чтобы сервер мог получать информацию о ловушке, указывающую на разные действия для каждого файла, анализировать ловушку и запускать действие? Я хотел бы знать, как вы, люди здесь, спроектировали бы это.


person nixmind    schedule 27.01.2015    source источник
comment
Не нужно выкрикивать титулы.   -  person Patrick Hofman    schedule 27.01.2015
comment
Пожалуйста, опубликуйте два отдельных вопроса, если у вас есть два отдельных вопроса.   -  person Jolta    schedule 28.01.2015


Ответы (1)


Что касается второго вопроса, начните с определения того, какой инструмент использовать для мониторинга файла и как заставить его отправлять ловушку. Возможно, можно использовать snmpd, поскольку вы уже знакомы с net-snmp?

Затем создайте ловушку «измененный файл», которая отправляет имя файла в качестве привязки переменной. Менеджер ловушек может действовать по-разному в зависимости от того, какой файл был изменен.

Я не уверен, что понимаю, что вы подразумеваете под «действием» в этом контексте, так что не стесняйтесь пояснить это.

person Jolta    schedule 28.01.2015
comment
Действие здесь — это то, что будет делать обработчик соответствующего файла, когда он получит ловушку/уведомление. Тогда, как вы думаете, я могу отправить имя файла в ловушку? Как OID что ли? Вот где мое настоящее дело. Спасибо - person nixmind; 29.01.2015
comment
Я все еще не понимаю основных предположений о вашей системе. Итак, у вас есть два процесса, один из которых (агент) отслеживает файл. Другой (Менеджер) прослушивает ловушки от Агента. Когда менеджер получает ловушку, можете ли вы привести пример того, что она будет делать? - person Jolta; 30.01.2015
comment
По сути, да, вы бы отправили имя файла как привязку переменной. Вы создаете новый OID для varbind и делаете его синтаксисом, соответствующим файлам. И значением может быть имя файла, полный путь или что-то еще, что вам нужно. Вы здесь дизайнер, вы решаете, какие данные нужны вашему менеджеру. - person Jolta; 30.01.2015
comment
Привет Йолта. Да, вы получили именно то, что я хотел бы настроить. Мое настоящее дело - отправлять ловушки и интерпретировать их от менеджера. Единственное, что для меня сложно, это отправить имя файла внутри trap, чтобы менеджер (snmptrapd) мог их получить и запустить хорошее действие (скрипт оболочки). - person nixmind; 02.02.2015
comment
Привет Йолта. Да, вы получили именно то, что я хотел бы настроить. Мое настоящее дело - отправлять ловушки и интерпретировать их от менеджера. Единственное, что для меня сложно, это отправить имя файла внутри trap, чтобы менеджер (snmptrapd) мог их получить и запустить хорошее действие (скрипт оболочки). Чтобы ответить на ваш вопрос, на стороне менеджера я (хотел бы) установить четыре строки, подобные этим, поскольку у меня есть четыре файла для наблюдения: traphandle OID /path_to_script/script Пожалуйста, дайте мне знать, как написать это от агента (клиент)? Я имею в виду правильный синтаксис snmptrap для использования в моем случае. Спасибо - person nixmind; 02.02.2015
comment
Я не могу понять из вашего описания: 1. Что вы уже пробовали или 2. С какой проблемой вы сталкиваетесь при этом. Если вы сможете переписать вопрос, включив в него эту информацию, будет легче ответить. - person Jolta; 03.02.2015
comment
Моя проблема в том, что я на самом деле не знаю, как определить OID для обработки имен файлов, чтобы сервер/менеджер мог извлечь значение с другой стороны. Но я постараюсь и дам вам знать. Спасибо. - person nixmind; 04.02.2015
comment
Думаю, это может быть просто значение типа DisplayString. - person Jolta; 04.02.2015