Consulta resultado script via SNMP

    Vamos a obtener la a temperatura de una Raspberry PI, via SNMP. Porque hacer esto y en que caso? Por ejemplo, si tenemos un sistema de monitorización que obtenga datos via SNMP.

    Lo primero, disponer de un script (/scripts/TEMP_RPI_CPU.sh) y con sus respectivos permisos de ejecucion.

    #!/bin/bash
    cpu=$(</sys/class/thermal/thermal_zone0/temp)
    cpu2=$(echo print $cpu/1000 | /usr/bin/perl)
    echo "CPU $cpu2"
    

    Ahora, añadiremos el script en la propia configuraciión de snmpd

    cat >> /etc/snmp/snmpd.conf << EOF
    
    extend TEMP_RPI_CPU /scripts/TEMP_RPI_CPU
    
    view   systemonly  included   .1.3.6.1.4.1.8072.1.3.2.4.1.2
    view   systemonly  included   .1.3.6.1.2.1.2
    view   systemonly  included   .1.3.6.1.2.1.25.2.3.1
    EOF
    

    Referente a la configuración de SNMP, de forma adicional activaremos el parametro SNMPDRUM para activar el servicio

    cat >> /etc/default/snmpd << EOF
    SNMPDRUN=yes
    EOF
    

    Solo nos quedará reiniciar el servico y hacer una llamada al MIB que nos va a permitir descubrir el resultado de la ejecución del script

    systemctl restart snmpd
    
    snmpwalk -v 2c -c public 10.0.1.71 .1.3.6.1.4.1.8072.1.3.2.4.1.2
    snmpwalk -v 2c -c public 10.0.1.71 NET-SNMP-EXTEND-MIB::nsExtendOutLine
    

    Leave a Reply

    Your email address will not be published. Required fields are marked *