Usando Linux para muchas cosas y disfrutando de videojuegos, en dispositivos moviles, consolas y pc. Using Linux for many things and enjoying video games, mobile devices, consoles and pc

Como instalar snmp trap en Nagios

SNMP nos permite monitorear dispositivos, servicios, servidores, etc, solo que a veces no podemos leer directamente los valores sino solo recibirlos e interpretarlos; para eso usamos traps de SNMP y hoy les mostrare como configurar snmptrap en Nagios. Ya sea por un firewall o porque no tengamos control sobre ese dispositivo que queremos monitorear con SNMP la solución es activar el envió de traps de SNMP a nuestro Nagios, el cual interpretara estos msg.
Quieres monitorear por medio de SNMP pero no sabes como? te aconsejo usar Nagios, el cual muestro como instalar en este URL.
Para este articulo mostrare como activar SNMP traps para una instancia virtual ejecutando Cisco Prime sobre un RedHat 6.3.

Requerimientos

  • Usaremos Linux Centos
  • Tener ya instalado y configurado Nagios (damos por hecho que el directorio donde lo compilamos es /root/nagios-4.0.1) El directorio de Nagios puede variar, tener cuidado con eso
  • cp /root/nagios-4.0.1/contrib/eventhandlers/submit_check_result /usr/local/nagios/libexec/
  • rpm -qa|grep snmp
net-snmp-libs-5.5-44.el6_4.4.x86_64
net-snmp-5.5-44.el6_4.4.x86_64
net-snmp-utils-5.5-44.el6_4.4.x86_64

-Descargamos, descomprimimos y copiamos

wget -c http://downloads.sourceforge.net/project/snmptt/snmptt/snmptt_1.3/snmptt_1.3.tgz
tar xzvf snmptt_1.3.tgz
cd snmptt_1.3

cp snmptthandler snmptt /usr/sbin
cp snmpttconvert snmpttconvertmib /usr/bin/

-Configuramos snmptrapd

vi /etc/snmp/snmptrapd.conf
traphandle default /usr/sbin/snmptt
disableAuthorization yes
donotlogtraps  yes

-Modificamos script de inicio. Cambiar el domain (en rojo) al de vuestra red o del dispositivo

vi /etc/rc.d/init.d/snmptrapd
OPTIONS="-On -Lsd -p /var/run/snmptrapd.pid"

-Iniciamos el servicio

service snmptrapd restart

-Creamos el script de snmptt

vi /etc/snmp/snmptt.ini
[General]
mode = standalone
multiple_event = 1
dns_enable = 1
strip_domain = 1
strip_domain_list = <<END
test.com
END

resolve_value_ip_addresses = 0
net_snmp_perl_enable = 1
net_snmp_perl_best_guess = 0
translate_log_trap_oid = 0
translate_value_oids = 1
translate_enterprise_oid_format = 1
translate_trap_oid_format = 1
translate_varname_oid_format = 1
translate_integers = 1
wildcard_expansion_separator = " "
allow_unsafe_regex = 0
remove_backslash_from_quotes = 0
dynamic_nodes = 0
description_mode = 0
description_clean = 1

[Logging]
stdout_enable = 0
log_enable = 1
log_file = /var/log/snmptt.log
unknown_trap_log_enable = 1
unknown_trap_log_file = /var/log/snmpttunknown.log
statistics_interval = 0
syslog_enable = 1
syslog_facility = local0
syslog_level_debug = <<END
END
syslog_level_info = <<END
END
syslog_level_notice = <<END
END
syslog_level_warning = <<END
END
syslog_level_err = <<END
END
syslog_level_crit = <<END
END
syslog_level_alert = <<END
END
syslog_level = info
syslog_system_enable = 1
syslog_system_facility = local0
syslog_system_level = warning

[Exec]
exec_enable = 1
pre_exec_enable = 0
unknown_trap_exec =

[Debugging]
DEBUGGING = 0
DEBUGGING_FILE =
DEBUGGING_FILE_HANDLER =

[TrapFiles]
snmptt_conf_files = <<END
/etc/snmp/snmptt.conf
END

-Descargamos mibs para monitoreo

wget -c ftp://ftp.cisco.com/pub/mibs/v2/SNMPv2-MIB.my

-Compilamos mibs

snmpttconvertmib --in=/root/SNMPv2-MIB.my --out=/etc/snmp/snmptt.conf.prime --exec='/usr/local/nagios/libexec/submit_check_result $r TRAP 1'
exec: /usr/local/nagios/libexec/submit_check_result $r TRAP 1


*****  Processing MIB file *****

snmptranslate version: NET-SNMP version: 5.5
severity: Normal

File to load is:        /root/SNMPv2-MIB.my
File to APPEND TO:      /etc/snmp/snmptt.conf.prime

MIBS environment var:   /root/SNMPv2-MIB.my
mib name: SNMPv2-MIB


Processing MIB:         SNMPv2-MIB
#
skipping a TRAP-TYPE / NOTIFICATION-TYPE line - probably an import line.
#
Line: 430
NOTIFICATION-TYPE: coldStart
Enterprise: snmpTraps
Looking up via snmptranslate: SNMPv2-MIB::coldStart
OID: .1.3.6.1.6.3.1.1.5.1
#
Line: 439
NOTIFICATION-TYPE: warmStart
Enterprise: snmpTraps
Looking up via snmptranslate: SNMPv2-MIB::warmStart
OID: .1.3.6.1.6.3.1.1.5.2
#
Line: 452
NOTIFICATION-TYPE: authenticationFailure
Enterprise: snmpTraps
Looking up via snmptranslate: SNMPv2-MIB::authenticationFailure
OID: .1.3.6.1.6.3.1.1.5.5

Done

Total translations:        3
Successful translations:   3
Failed translations:       0

-Modificamos el snmptt.ini agregando el conf creado

vi /etc/snmp/snmptt.ini
[TrapFiles]
snmptt_conf_files = <<END
/etc/snmp/snmptt.conf
/etc/snmp/snmptt.conf.prime
END

-Activamos el rotate de logs

cp /root/snmptt_1.3/snmptt.logrotate /etc/logrotate.d/snmptt
mkdir /var/log/snmptt/

-Activamos el script de inicio

cp snmptt-init.d /etc/init.d/snmptt

-Creamos un template de service en nagios

cd /usr/local/nagios/etc/objects
vi /usr/local/nagios/etc/objects/templates.cfg
define service{
   name                         snmp-service
   register                     0
   check_period                 24x7
   max_check_attempts           3
   normal_check_interval        15
   retry_check_interval         5
   active_checks_enabled        1
   passive_checks_enabled       0
   parallelize_check            1
   obsess_over_service          0
   check_freshness              0
   event_handler_enabled        0
   flap_detection_enabled       0
   process_perf_data            1
   retain_status_information    1
   retain_nonstatus_information 1
   notification_interval        60
   notification_period          24x7
   notification_options         w,u,c,r
   notifications_enabled        1
}

define service{
   name                    snmptrap-service
   use                     snmp-service
   register                0
   service_description     TRAP
   is_volatile             1
   check_command           check-host-alive
   max_check_attempts      1
   normal_check_interval   1
   retry_check_interval    1
   passive_checks_enabled  1
   check_period            none
   notification_interval   31536000
   contact_groups          admins
}

-Activamos un conf en nagios

vi ../nagios.cfg

cfg_file=/usr/local/nagios/etc/objects/5infra.cfg

-Agregamos el chequeo

vi 5infra.cfg
define service{
   host_name               veop
   use                     snmptrap-service
   contact_groups          admins
}

Generamos algún evento que se reporte por snmp y nos debe mostrar la alerta en el servicio TRAP que creamos en Nagios.
Aunque podríamos no verle la utilidad al principio, en algún momento se encontraran con la necesidad de monitorear pero no podrán instalar los plugins o menos activar un NRPE. En ese momento es que les sera útil activar el envió de traps.
Usas SNMP traps, para que? Te resulta interesante la idea?
Si te resulto útil este articulo, se social, compártelo con otros por medio de los botones o sígueme en twitter google+ o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Como instalar plugins y templates en Process Maker

Manejar procesos en la nueva era es cada vez mas sencillo y útil para automatizar de forma eficiente nuestro negocio como mostré en un anterior articulo sobre como instalar y configurar Process Maker. Este BPM nos permite expandir su funcionalidad pero si no sabes aun como, no te preocupes ya que hoy les mostrare como instalar plugins y plantillas (templates) en Process Maker.

-Descargamos plugins desde este URL



Importando Plugins

-Nos logeamos como admin a la interfaz web de Process Maker y nos vamos al botón Admin para después dar click en la pestaña Plugins
-Damos click en el botón Import

-Continuamos dando click en el botón Choose File lo cual abrirá una nueva ventana


-Después de elegir el plugin, volveremos a la interfaz y veremos su nombre al lado del botón que presionamos en el paso anterior. Damos click al botón Import

-Cuando instalamos plugins, por default estarán deshabilitados, por lo cual debemos activarlos para poder usarlos. Damos click al botón Enable

-Con esto ya tendremos el plugins activo para comenzar a usarlo

Importando plantillas

-Para importar plantillas nos vamos a este URL. El proceso es muy sencillo, busca entre todos el que quieras, descargalo e importalo. Para esto debes logearte a una cuenta, si no la tienes, créala, es gratis.

-Nos logeamos con nuestra cuenta

-Buscamos entre las plantillas existentes y cuando veamos una que queramos, le damos click y la descargamos a nuestro pc

-Nos devolvemos a la interfaz de Process Maker y vamos al botón Designer dando click después a Import

-Siguiente paso, damos click al botón de carpeta lo que nos abrirá una nueva ventana para elegir la plantilla que descargamos en el anterior paso

-Buscamos nuestra plantilla a instalar y le damos doble click

-Ya estamos listos para instalarla dando click al botón Import

-Muy bien, ya tenemos nuestra plantilla instalada, en este caso un proceso de reporte de gastos

Que les pareció? usan Process Maker, o cual BPMS usan?
Si te resulto útil este articulo, se social, compártelo con otros por medio de los botones o sígueme en twitter google+ o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Como instalar Oracle Java en Ubuntu 13.10

Apenas hace unos días salio Ubuntu 13.10 y ya necesitamos Java en el para acceder a esa aplicación sin la cual no podemos estar. No te preocupes, hoy te mostrare como instalar Oracle Java 8 en Ubuntu Saucy Salamander paso a paso.
Java sigue siendo uno de los lenguajes mas usados para aplicaciones por ello la importancia de tenerlo instalado en nuestro pc si queremos poder hacer uso de este software y aunque esta la versión opensource, algunas no son 100% compatibles o presentan errores al ejecutarlas es por eso que sugiero usar Oracle Java de ser posible.

-Abrimos una consola y agregamos el repositorio. Presionamos Enter cuando se nos pida

sudo add-apt-repository ppa:webupd8team/java
[sudo] password for cabrera:
 Oracle Java (JDK) Installer (automatically downloads and installs Oracle JDK6 / JDK7 / JDK8). There are no actual Java files in this PPA. More info: http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in-ubuntu-via.html

Debian installation instructions: http://www.webupd8.org/2012/06/how-to-install-oracle-java-7-in-debian.html
 More info: https://launchpad.net/~webupd8team/+archive/java
Press [ENTER] to continue or ctrl-c to cancel adding it

gpg: keyring `/tmp/tmpfh436p/secring.gpg' created
gpg: keyring `/tmp/tmpfh436p/pubring.gpg' created
gpg: requesting key EEA14886 from hkp server keyserver.ubuntu.com
gpg: /tmp/tmpfh436p/trustdb.gpg: trustdb created
gpg: key EEA14886: public key "Launchpad VLC" imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)

-Actualizamos repositorios

sudo apt-get update

-Instalamos y aceptamos la licencia

sudo apt-get install oracle-java8-installer


-Verificamos versión de java

java -version
java version "1.8.0-ea"
Java(TM) SE Runtime Environment (build 1.8.0-ea-b111)
Java HotSpot(TM) 64-Bit Server VM (build 25.0-b53, mixed mode)

Sencillo cierto? Usas java? la versión comercial que te mostré aquí o la opensource?
Si te resulto útil este articulo, se social, compártelo con otros por medio de los botones o sígueme en twitter google+ o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark