SNMP-trapgegevens verzamelen met Azure Monitor Agent

Let op

In dit artikel wordt verwezen naar CentOS, een Linux-distributie die de status End Of Life (EOL) nadert. Overweeg uw gebruik en planning dienovereenkomstig. Zie de Richtlijnen voor het einde van de levensduur van CentOS voor meer informatie.

Simple Network Management Protocol (SNMP) is een algemeen geïmplementeerd beheerprotocol voor het bewaken en configureren van Linux-apparaten en -apparaten.

U kunt SNMP-gegevens op twee manieren verzamelen:

  • Polls : het beheersysteem peilt een SNMP-agent om waarden voor specifieke eigenschappen te verzamelen.
  • Traps : een SNMP-agent stuurt gebeurtenissen of meldingen door naar een beheersysteem.

Traps worden meestal gebruikt als gebeurtenismeldingen, terwijl polls geschikter zijn voor stateful statusdetectie en het verzamelen van metrische prestatiegegevens.

U kunt De Azure Monitor-agent gebruiken om SNMP-traps te verzamelen als syslog-gebeurtenissen of als gebeurtenissen die zijn vastgelegd in een tekstbestand.

In deze zelfstudie leert u het volgende:

  • Opties en indeling voor trapontvangerlogboeken instellen
  • De trapontvanger configureren voor het verzenden van traps naar syslog of tekstbestand
  • SNMP-traps verzamelen met behulp van Azure Monitor Agent

Vereisten

U hebt het volgende nodig om deze zelfstudie te voltooien:

  • 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.

    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.

    Sommige leveranciers onderhouden één MIB voor alle apparaten, terwijl andere honderden MIB-bestanden hebben. 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 gebruiken we 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.

    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.

    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.

Opties en indeling voor trapontvangerlogboeken instellen

De snmptrapd trapontvanger instellen op een CentOS 7, Red Hat Enterprise Linux 7, 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

Er zijn twee manieren waarop snmptrapd SNMP-traps naar De Azure Monitor-agent kan verzenden:

  • Binnenkomende traps doorsturen naar Syslog, die u kunt instellen als de gegevensbron voor De Azure Monitor-agent.

  • Schrijf de syslog-berichten naar een bestand, waarmee de Azure Monitor-agent kan worden achter- en geparseerd. Met deze optie kunt u de SNMP-traps verzenden als een nieuw gegevenstype in plaats van te verzenden als syslog-gebeurtenissen.

De uitvoergedragsconfiguratie van snmptrapd bewerken:

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

    sudo vi /etc/sysconfig/snmptrapd
    
  2. Configureer het uitvoerdoel.

    Hier volgt een 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

Als u snmptrapd hebt geconfigureerd voor het verzenden van gebeurtenissen naar syslog, volgt u de stappen die worden beschreven in Gebeurtenissen en prestatiemeteritems verzamelen met Azure Monitor Agent. Zorg ervoor dat u Linux syslog als gegevensbron selecteert wanneer u de regel voor gegevensverzameling voor Azure Monitor Agent definieert.

Als u snmptrapd hebt geconfigureerd om gebeurtenissen naar een bestand te schrijven, volgt u de stappen die worden beschreven in Tekstlogboeken verzamelen met de Azure Monitor-agent.

Volgende stappen

Meer informatie over: