===== Agente IPMI ===== En nuestro caso vamos a partir de un servidor Dell con una tarjeta BMC (Baseboard Management Controller). Lo primero sería configurar la BMC, para ello * Cuando se esté inicializando el BMC presionar “Ctrl + E”. * Activar IPMI sobre LAN. * Seleccionar “dedicated” en el NIC si sólo se va a usar como BMC * Establecer una ip estática. * Crear usuario y contraseña para el BMC. Una vez configurada la tarjeta de control debemos de activar el IPMI en el Zabbix, ya que por defecto no viene activado. === Activar IPMI en Zabbix === - Editamos /etc/zabbix/zabbix_server.conf y añadimos al final del archivo StartIPMIPollers=3 - creamos un nuevo host y añadimos la interfaz IPMI. - ponemos el usuario y contraseña que habiamos creado en la BMC en la pestaña IPMI. para poder saber la clave que debemos usar a la hora de monitorizar un ítem en un host, debemos instalar IPMItools y realizar una búsqueda en el equipo que vamos a monitorizar. == Instalar ipmitool == yum install ipmitool Creamos un archivo para recopilar la información de los items disponibles en ese servidor en “/etc/zabbix” ipmitool.sh con lo siguiente: #!/bin/bash /usr/bin/ipmitool -H X.X.X.X -U TuUsuario -P TuContraseña -I lan -L USER sdr > /etc/zabbix/server1.sdr /usr/bin/ipmitool -H X.X.X.X -U TuUsuario -P TuContraseña -I lan -L USER sel > /etc/zabbix/server1.sel /usr/bin/ipmitool -H X.X.X.X -U TuUsuario- P TuContraseña -I lan -L USER fru > /etc/zabbix/server1.fru Cuando ejecutemos el comando se crearán tres archivos con información referente al servidor. De los tres archivos que crea el **sdr** es el más importante Para comprobar la disponibilidad del ítem creamos un archivo llamado comprobar.pl ((en el script debemos modificar la ruta del archivo en el que va a buscar si se ha cambiado el lugar o el nombre del archivo. )) #!/usr/bin/perl # Script provided for Zabbix community by Rick Wagner (wagner.234@gmail.com) use strict; use warnings; die usage() if ($#ARGV == -1); my $regex = qr/\s*\|\s*/; my $val; #my $OUTPUT; if (open( FILE, "< /etc/zabbix/server1.sdr")) { while () { chomp($_); my @fields = split (/$regex/,$_); #print $fields[0]; if ($#fields >= 2 && $ARGV[0] eq $fields[0]) { last if ($fields[2] eq 'ns'); $val = $fields[1]; last; } } } else { die "Error:. $!\n"; } if (defined($val)) { ($val) = ($val =~ /^(\d+)\s+/); print $val."\n"; exit(0); } else { exit (-1); } sub usage { return "Usage: ./$0 " } Ahora ejecutamos el archivo seguido del ítem que queramos comprobar /etc/zabbix/comprobar.pl 'Ambient Temp' y devolverá la temperatura del servidor. Una vez localicemos el ítem que queremos monitorizar vamos al frontend de zabbix y en “host/ítems” create ítem. * Name: nombre del ítem. * Type: IPMI agent. * Key: el nombre que usaremos para llamarlo en un trigger. * Host interface: :623 * IPMI sensor: el nombre que buscamos anteriormente con el comando ipmitool (e.j. Ambient Temp). * Indicar el tipo de dato y el intervalo de actualización. ==== Enlaces ==== * http://systemadmin.es/2010/06/obtener-la-temperatura-ambiente-de-un-servidor-mediante-ipmi * [[http://www.emersonnetworkpower.com/es-EMEA/Brands/Avocent/Innovation/Pages/AvocentThoughtLeadershipIPMI.aspx|Liebert IPMI]] * https://www.zabbix.com/wiki/howto/monitor/ipmi/dell * https://www.zabbix.com/documentation/1.8/manual/tutorials/remote_actions * http://linux.die.net/man/1/ipmitool * http://docs.oracle.com/cd/E19464-01/820-6850-11/IPMItool.html * http://sysengblog.com/?p=49