Compartir vía


Recopilación de datos de captura de SNMP con el agente de Azure Monitor

El Protocolo simple de administración de redes (SNMP) es un protocolo de administración ampliamente implementado para supervisar y configurar dispositivos y dispositivos Linux. En este artículo se describe cómo recopilar datos de captura de SNMP y enviarlos a un área de trabajo de Log Analytics mediante el agente de Azure Monitor.

Puede recopilar datos SNMP de dos maneras:

  • Sondeos: el sistema de administración sondea un agente SNMP para recopilar los valores para propiedades específicas. Los sondeos se usan con más frecuencia para la detección de estado con estado y la recopilación de métricas de rendimiento.
  • Capturas: un agente SNMP reenvía los eventos o las notificaciones a un sistema de administración. Las capturas se suelen usar como notificaciones de eventos.

El agente de Azure Monitor no puede recopilar datos SNMP directamente, pero puede enviar estos datos a uno de los siguientes orígenes de datos que el agente de Azure Monitor puede recopilar:

  • Syslog. Los datos se almacenan en la tabla Syslog con los demás datos de syslog recopilados por el agente de Azure Monitor.
  • Archivo de texto. Los datos se almacenan en una tabla personalizada que se crea. Con una transformación, puede analizar los datos y almacenarlos en un formato estructurado.

Diagrama que muestra la recopilación de datos SNMP mediante el envío a Syslog o a un archivo de texto que, a continuación, recopila el agente de Azure Monitor.

Requisitos previos

  • Un área de trabajo de Log Analytics en la que tenga al menos derechos de colaborador.

  • Archivos de base de información de administración (MIB) para los dispositivos que supervise.

    SNMP identifica las propiedades supervisadas mediante valores de Identificador de objeto (OID), que se definen y describen en archivos MIB proporcionados por el proveedor. El proveedor del dispositivo suele proporcionar los archivos MIB. Si no los tiene, puede encontrar los archivos de muchos proveedores en sitios web de terceros. Algunos proveedores guardan un único MIB para todos los dispositivos, mientras que otros tienen cientos de ellos.

    Coloque todos los archivos MIB para cada dispositivo que envíe capturas de SNMP en /usr/share/snmp/mibs, el directorio predeterminado para los archivos MIB. Esto permite registrar los campos de la captura de SNMP con nombres significativos en lugar de identificadores de dominio. Para cargar correctamente un archivo MIB, snmptrapd debe cargar todas las MIB dependientes. Asegúrese de comprobar el archivo de registro snmptrapd después de cargar las MIB para asegurarse de que no faltan dependencias en el análisis de los archivos MIB.

  • Un servidor Linux con un receptor de captura de SNMP.

    En este artículo se usa snmptrapd, un receptor de captura snmp del agente de net-SNMP, que proporcionan la mayoría de las distribuciones de Linux. Sin embargo, puede usar muchos otros servicios receptores de captura de SNMP. Es importante que el receptor de captura de SNMP que use pueda cargar archivos MIB para su entorno, de modo que las propiedades del mensaje de captura de SNMP tengan nombres significativos en lugar de OID.

    El procedimiento de configuración de snmptrapd puede variar de una distribución de Linux a otra. Para más información sobre la configuración de snmptrapd, incluidas las instrucciones para configurar la autenticación de SNMP v3, consulte la documentación de Net-SNMP.

Configuración de las opciones y el formato del registro del receptor de capturas

Para configurar el receptor de captura snmptrapd en un servidor Red Hat Enterprise Linux 7 o Oracle Linux 7:

  1. Instale y habilite 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. Autorice las cadenas de comunidad (cadenas de autenticación de SNMP v1 y v2) y defina el formato de las capturas escritas en el archivo de registro:

    1. Abra snmptrapd.conf:

      sudo vi /etc/snmp/snmptrapd.conf  
      
    2. Agregue estas líneas al archivo 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
      

      Nota

      snmptrapd registra tanto las capturas como los mensajes de demonio (por ejemplo, service stop and start) en el mismo archivo de registro. En el ejemplo anterior, hemos definido el formato de registro para empezar con la palabra "snmptrap" para facilitar el filtrado de snmptrap desde el registro más adelante.

Configuración del receptor de capturas para enviar datos de captura a syslog o al archivo de texto

Para editar la configuración del comportamiento de salida de snmptrapd:

  1. Abra el archivo /etc/snmp/snmptrapd.conf:

    sudo vi /etc/sysconfig/snmptrapd
    
  2. Configure el destino de salida, como en la siguiente configuración de ejemplo:

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

    Las opciones de esta configuración de ejemplo son:

    • -m ALL: cargue todos los archivos MIB en el directorio predeterminado.
    • -Ls2: envíe las capturas a syslog, a la instalación Local2.
    • -Lf /var/log/snmptrapd: registre las capturas en el archivo /var/log/snmptrapd.

Nota

Consulte la documentación de Net-SNMP para más información sobre el establecimiento de las opciones de salida y el establecimiento de las opciones de formato.

Recopilación de capturas de SNMP mediante el agente de Azure Monitor

En función de dónde haya enviado eventos SNMP, use las instrucciones de una de las siguientes opciones para recopilar los datos con el agente de Azure Monitor:

Pasos siguientes

Más información sobre: