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

Внимание

Эта статья ссылается на CentOS, дистрибутив Linux, который приближается к состоянию конца жизни (EOL). Пожалуйста, рассмотрите возможность использования и планирования соответствующим образом. Дополнительные сведения см. в руководстве centOS End Of Life.

Простой протокол управления сетями (SNMP) — это широко развернутый протокол управления для мониторинга и настройки устройств Linux и (модуль).

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

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

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

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

В этом руководстве описано следующее:

  • Настройка параметров журнала приемника ловушки и форматирования
  • Настройка приемника ловушки для отправки ловушек в системный журнал или текстовый файл
  • Сбор ловушек SNMP с помощью агента Azure Monitor

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

Для работы с этим учебником необходимы указанные ниже компоненты.

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

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

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

    Поставщик устройств обычно предоставляет файлы MIB. Если у вас нет файлов MIB, вы можете найти файлы для многих поставщиков на сторонних веб-сайтах.

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

    Некоторые поставщики поддерживают один MIB для всех устройств, а другие имеют сотни файлов MIB. Чтобы правильно загрузить файл MIB, snmptrapd должен загрузить все зависимые МИБ. Не забудьте проверка файл журнала snmptrapd после загрузки МИБ, чтобы убедиться, что отсутствуют зависимости при анализе файлов MIB.

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

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

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

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

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

Чтобы настроить приемник snmptrapd ловушки на сервере CentOS 7, 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 могут отправлять ловушки SNMP в агент Azure Monitor:

  • Пересылайте входящие ловушки в системный журнал, который можно задать в качестве источника данных для агента Azure Monitor.

  • Записывайте сообщения системного журнала в файл, который агент Azure Monitor может анализировать и анализировать. Этот параметр позволяет отправлять ловушки SNMP в качестве нового типа данных, а не отправлять в качестве событий системного журнала.

Чтобы изменить конфигурацию поведения вывода 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

Если вы настроили snmptrapd для отправки событий в системный журнал, выполните действия, описанные в разделе "Сбор событий и счетчиков производительности" с помощью агента Azure Monitor. Обязательно выберите системный журнал Linux в качестве источника данных при определении правила сбора данных для агента Azure Monitor.

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

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

См. также: