Сбор данных об ловушке SNMP с помощью агента Azure Monitor

Простой протокол управления сетями (SNMP) — это широко развернутый протокол управления для мониторинга и настройки устройств и устройств Linux. В этой статье описывается, как собирать данные snMP-ловушки и отправлять их в рабочую область Log Analytics с помощью агента Azure Monitor.

Данные SNMP можно собирать двумя способами:

  • Опросы — система управления опрашивает агент SNMP для сбора значений для определенных свойств. Опросы чаще всего используются для обнаружения работоспособности с отслеживанием состояния и сбора метрик производительности.
  • Ловушки — агент SNMP перенаправит события или уведомления в систему управления. Ловушки чаще всего используются в качестве уведомлений о событиях.

Агент Azure Monitor не может напрямую собирать данные SNMP, но вы можете отправить эти данные в один из следующих источников данных, которые агент Azure Monitor может собирать:

  • Syslog. Данные хранятся в Syslog таблице с другими данными системного журнала, собранными агентом Azure Monitor.
  • Текстовый файл. Данные хранятся в создаваемой пользовательской таблице. С помощью преобразования можно проанализировать данные и сохранить их в структурированном формате.

Схема, показывающая коллекцию данных SNMP, отправляя его в системный журнал или текстовый файл, который затем собирается агентом Azure Monitor.

Необходимые компоненты

  • Рабочая область Log Analytics, в которой у вас есть по крайней мере права участника.

  • Файлы базы сведений об управлении (MIB) для отслеживаемого устройства.

    SNMP определяет отслеживаемые свойства с помощью значений идентификатора объекта (OID), которые определены и описаны в файлах MIB, предоставляемых поставщиком. Поставщик устройств обычно предоставляет файлы MIB. Если у вас нет файлов MIB, вы можете найти файлы для многих поставщиков на сторонних веб-сайтах. Некоторые поставщики поддерживают один MIB для всех устройств, а другие имеют сотни файлов MIB.

    Поместите все файлы MIB для каждого устройства, которое отправляет ловушки SNMP в /usr/share/snmp/mibsкаталог по умолчанию для файлов MIB. Это позволяет ведения журнала полей ловушки SNMP с значимыми именами вместо OID. Чтобы правильно загрузить файл MIB, snmptrapd должен загрузить все зависимые МИБ. Не забудьте проверить файл журнала snmptrapd после загрузки МИБ, чтобы убедиться, что отсутствуют зависимости при анализе файлов MIB.

  • Сервер Linux с приемником ловушки SNMP.

    В этой статье используется snmptrapd, приемник ловушки SNMP из агента Net-SNMP , который предоставляет большинство дистрибутивов Linux. Однако существует множество других служб приемников SNMP, которые можно использовать. Важно, чтобы приемник SNMP-ловушки, который можно использовать для загрузки MIB-файлов для вашей среды, чтобы свойства в сообщении SNMP-ловушки имели значимые имена вместо OID.

    Процедура конфигурации snmptrapd может отличаться от дистрибутивов Linux. Дополнительные сведения о конфигурации snmptrapd, включая рекомендации по настройке проверки подлинности SNMP версии 3, см. в документации по Net-SNMP.

Настройка параметров журнала приемника ловушки и форматирования

Чтобы настроить приемник snmptrapd ловушки на сервере Red Hat Enterprise Linux 7 или Oracle Linux 7:

  1. Установите и включите snmptrapd:

    #Install the SNMP agent
    sudo yum install net-snmp
    #Enable the service
    sudo systemctl enable snmptrapd
    #Allow UDP 162 through the firewall
    sudo firewall-cmd --zone=public --add-port=162/udp --permanent
    
  2. Авторизуйте строки сообщества (строки проверки подлинности SNMP версии 1 и версии 2) и определите формат ловушек, записанных в файл журнала:

    1. Открыть snmptrapd.conf:

      sudo vi /etc/snmp/snmptrapd.conf  
      
    2. Добавьте в файл следующие строки snmptrapd.conf :

      # Allow all traps for all OIDs, from all sources, with a community string of public
      authCommunity log,execute,net public
      # Format logs for collection by Azure Monitor Agent
      format2 snmptrap %a %B %y/%m/%l %h:%j:%k %N %W %q %T %W %v \n
      

      Примечание.

      snmptrapd регистрирует как ловушки, так и сообщения управляющей программы ( например, остановка службы и запуск — в один и тот же файл журнала. В приведенном выше примере мы определили формат журнала для начала с слова snmptrap, чтобы упростить фильтрацию snmptraps из журнала позже.

Настройка приемника ловушки для отправки данных ловушки в системный журнал или текстовый файл

Чтобы изменить конфигурацию поведения вывода snmptrapd:

  1. /etc/snmp/snmptrapd.conf Откройте файл:

    sudo vi /etc/sysconfig/snmptrapd
    
  2. Настройте назначение выходных данных, например в следующем примере конфигурации:

    # snmptrapd command line options
    # '-f' is implicitly added by snmptrapd systemd unit file
    # OPTIONS="-Lsd"
    OPTIONS="-m ALL -Ls2 -Lf /var/log/snmptrapd"
    

    Параметры в этом примере конфигурации:

    • -m ALL — Загрузка всех файлов MIB в каталоге по умолчанию.
    • -Ls2 — выходные ловушки для системного журнала в объект Local2.
    • -Lf /var/log/snmptrapd — перехваты журналов в /var/log/snmptrapd файл.

Примечание.

Дополнительные сведения о настройке параметров вывода и настройке параметров форматирования см. в документации по Net-SNMP.

Сбор ловушек SNMP с помощью агента Azure Monitor

В зависимости от того, где вы отправили события SNMP, используйте инструкции по одному из следующих способов сбора данных с помощью агента Azure Monitor:

Следующие шаги

Дополнительные сведения: