Delen via


SNMP-trapgegevens verzamelen met Azure Monitor Agent

Simple Network Management Protocol (SNMP) is een algemeen geïmplementeerd beheerprotocol voor het bewaken en configureren van Linux-apparaten en -apparaten. In dit artikel wordt beschreven hoe u SNMP-trapgegevens verzamelt en verzendt naar een Log Analytics-werkruimte met behulp van de Azure Monitor-agent.

U kunt SNMP-gegevens op twee manieren verzamelen:

  • Polls : het beheersysteem peilt een SNMP-agent om waarden voor specifieke eigenschappen te verzamelen. Polls worden meestal gebruikt voor stateful statusdetectie en het verzamelen van metrische prestatiegegevens.
  • Traps : een SNMP-agent stuurt gebeurtenissen of meldingen door naar een beheersysteem. Traps worden meestal gebruikt als gebeurtenismeldingen.

Azure Monitor-agent kan geen SNMP-gegevens rechtstreeks verzamelen, maar u kunt deze gegevens verzenden naar een van de volgende gegevensbronnen die de Azure Monitor-agent kan verzamelen:

  • Syslog. De gegevens worden opgeslagen in de Syslog tabel met uw andere syslog-gegevens die zijn verzameld door de Azure Monitor-agent.
  • Tekstbestand. De gegevens worden opgeslagen in een aangepaste tabel die u maakt. Met behulp van een transformatie kunt u de gegevens parseren en opslaan in een gestructureerde indeling.

Diagram van het verzamelen van SNMP-gegevens door deze te verzenden naar Syslog of een tekstbestand dat vervolgens wordt verzameld door de Azure Monitor-agent.

Vereisten

  • Een Log Analytics-werkruimte met ten minste inzenderrechten.

  • MIB-bestanden (Management Information Base) voor de apparaten die u bewaakt.

    SNMP identificeert bewaakte eigenschappen met behulp van OID-waarden (Object Identifier), die zijn gedefinieerd en beschreven in door de leverancier geleverde MIB-bestanden. De leverancier van het apparaat levert doorgaans MIB-bestanden. Als u de MIB-bestanden niet hebt, kunt u de bestanden voor veel leveranciers vinden op websites van derden. Sommige leveranciers onderhouden één MIB voor alle apparaten, terwijl andere honderden MIB-bestanden hebben.

    Plaats alle MIB-bestanden voor elk apparaat waarin SNMP-traps worden /usr/share/snmp/mibsverzonden, de standaardmap voor MIB-bestanden. Hierdoor kunnen SNMP-trapvelden met betekenisvolle namen worden opgenomen in plaats van OID's. Als u een MIB-bestand correct wilt laden, moet snmptrapd alle afhankelijke MIBs laden. Controleer het snmptrapd logboekbestand na het laden van MIBs om ervoor te zorgen dat er geen ontbrekende afhankelijkheden zijn bij het parseren van uw MIB-bestanden.

  • Een Linux-server met een SNMP-trapontvanger.

    In dit artikel wordt gebruikgemaakt van snmptrapd, een SNMP-trapontvanger van de Net-SNMP-agent , die de meeste Linux-distributies bieden. Er zijn echter veel andere SNMP-trapontvangerservices die u kunt gebruiken. Het is belangrijk dat de SNMP-trapontvanger die u gebruikt MIB-bestanden voor uw omgeving kan laden, zodat de eigenschappen in het SNMP-trapbericht betekenisvolle namen hebben in plaats van OID's.

    De configuratieprocedure voor snmptrapd kan variëren tussen Linux-distributies. Zie de Net-SNMP-documentatie voor meer informatie over snmptrapd-configuratie, waaronder richtlijnen voor het configureren voor SNMP v3-verificatie.

Opties en indeling voor trapontvangerlogboeken instellen

De snmptrapd trapontvanger instellen op een Red Hat Enterprise Linux 7- of Oracle Linux 7-server:

  1. Snmptrapd installeren en inschakelen:

    #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. Autoriseren communitytekenreeksen (SNMP v1- en v2-verificatiereeksen) en definieer de indeling voor de traps die naar het logboekbestand worden geschreven:

    1. Open snmptrapd.conf:

      sudo vi /etc/snmp/snmptrapd.conf  
      
    2. Voeg deze regels toe aan uw snmptrapd.conf bestand:

      # 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
      

      Notitie

      snmptrapd logboeken traps en daemon-berichten , bijvoorbeeld servicestop en start - naar hetzelfde logboekbestand. In het bovenstaande voorbeeld hebben we de logboekindeling gedefinieerd om te beginnen met het woord 'snmptrap' om snmptraps later eenvoudig te filteren vanuit het logboek.

De trapontvanger configureren voor het verzenden van trapgegevens naar syslog of tekstbestand

De uitvoergedragsconfiguratie van snmptrapd bewerken:

  1. Open het /etc/snmp/snmptrapd.conf bestand:

    sudo vi /etc/sysconfig/snmptrapd
    
  2. Configureer de uitvoerbestemming, zoals in de volgende voorbeeldconfiguratie:

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

    De opties in deze voorbeeldconfiguratie zijn:

    • -m ALL - Alle MIB-bestanden in de standaardmap laden.
    • -Ls2 - Output traps to syslog, to the Local2 facility.
    • -Lf /var/log/snmptrapd - Logboekvallen naar het /var/log/snmptrapd bestand.

Notitie

Zie net-SNMP-documentatie voor meer informatie over het instellen van uitvoeropties en het instellen van opmaakopties.

SNMP-traps verzamelen met behulp van Azure Monitor Agent

Afhankelijk van waar u SNMP-gebeurtenissen hebt verzonden, gebruikt u de richtlijnen op een van de volgende manieren om de gegevens te verzamelen met de Azure Monitor-agent:

Volgende stappen

Meer informatie over: