Inicio / Comunidad / Blog / Control de consolas HP ILO3 desde IPMITool en GNU/Linuxv

Control de consolas HP ILO3 desde IPMITool en GNU/Linuxv

Introducción

En este articulo hablare un poco sobre IMPI, IPMItool y conexiones de administración out-of-band a las consolas ILO de servidores HP.

IMPI o Intelligent Platform Management Interface es una interfaz estandarizada usada por administradores de sistmeas para administración out-of-band de equipos de computo y monitorización de la operación. Permite administrar computadoras que pudieran estár apagadas o no responden, a través de una conexión a el hardware en lugar de el sistema operativo o un login shell.

La herramienta IPMItool provee una interfaz de línea de comandos simple hacía dispositivos con soporte IPMI a través de interfaces IPMIv1.5 o interfaz IPMIv2.0 LAN o un driver del kernel de Linux.

Objetivo

En este documento se describe como configurar la herramienta ipmitool para realizar conexiones a las interfaces ILO de servidores HP, esto con la intención de realizar tareas administrativas en los servidores HP.

En especifico veremos como consultar información desde la consola ILO, como cambiar el orden de arranque para iniciar el sistema por red vía PXE, además de como apagar o reiniciar los equipos de forma remota.

Instalación de herramienta IPMITool

En la estación de trabajo del administrador, instalar el programa ipmitool:

$ sudo aptitude install ipmitool
[sudo] password for jmedina:
Se instalarán los siguiente paquetes NUEVOS:
ipmitool libopenipmi0{a} openipmi{a}

NOTA: El programa ipmitool puede ser ejecutado como usuario no privilegiado, no es necesario ejecutarlo como root.

Para facilitar la conexión a las consolas ILO3 he agregado los nombres de los servidores en el archivo/etc/hosts de mi equipo:

$ cat /etc/hosts
...
...
...
# Consolas HP ILO3 hosts Producción
192.110.82.150 ilo-host01-mx
191.110.82.192 ilo-host02-mx
192.110.82.23 ilo-host03-mx
192.110.83.54 ilo-host04-mx
192.110.83.40 ilo-host05-mx
192.110.83.58 ilo-host06-mx
192.110.83.63 ilo-host07-mx
192.110.83.79 ilo-host08-mx

Lanzando consultas vía IPMI

En esta sección veremos algunos comandos que podemos usar para realizar las tareas de operación de rutina contra servidores HP con consola ILO3.

Los ejemplos son usados para lanzar comandos a un servidor o a varios servidores a la vez.

Ver la información de un servidor

Ejecutamos una consulta sobre el servidor:

$ ipmitool -H ilo-host01-mx -I lanplus -U admin mc info
Password:
Device ID : 19
Device Revision : 1
Firmware Revision : 1.55
IPMI Version : 2.0
Manufacturer ID : 11
Manufacturer Name : Hewlett-Packard
Product ID : 8224 (0x2020)
Product Name : Unknown (0x2020)
Device Available : yes
Provides Device SDRs : no
Additional Device Support :
Sensor Device
SDR Repository Device
SEL Device
FRU Inventory Device
Chassis Device
Aux Firmware Rev Info :
0x00
0x00
0x00
0x13

Consultando el estado chassis

Lanzamos una consulta al servidor para ver el estado del chassis:

$ ipmitool -H ilo-host01-mx -I lanplus -U admin chassis status
Password:
System Power : on
Power Overload : false
Power Interlock : inactive
Main Power Fault : false
Power Control Fault : false
Power Restore Policy : always-on
Last Power Event :
Chassis Intrusion : inactive
Front-Panel Lockout : inactive
Drive Fault : false
Cooling/Fan Fault : false
Front Panel Control : none

Consultando información de sensores

Lanzamos una consulta al servidor para ve información de los sensores:

$ ipmitool -H ilo-host01-mx -I lanplus -U admin sensor list
Password:
UID Light | 0x0 | discrete | 0x0080| na | na | na | na | na | na
Health LED | 0x0 | discrete | 0x0080| na | na | na | na | na | na
VRM 1 | 0x0 | discrete | 0x0280| na | na | na | na | na | na
VRM 2 | 0x0 | discrete | 0x0280| na | na | na | na | na | na
VRM 3 | 0x0 | discrete | 0x0280| na | na | na | na | na | na
VRM 4 | 0x0 | discrete | 0x0280| na | na | na | na | na | na
Inlet Ambient | 14.000 | degrees C | ok | na | na | na | na | 42.000 | 46.000
System Board | 23.000 | degrees C | ok | na | na | na | na | 85.000 | 90.000
CPU 1 | 18.000 | degrees C | ok | na | na | na | na | 75.000 | 80.000
CPU 2 | 18.000 | degrees C | ok | na | na | na | na | 75.000 | 80.000
CPU 3 | 13.000 | degrees C | ok | na | na | na | na | 75.000 | 80.000
CPU 4 | 16.000 | degrees C | ok | na | na | na | na | 75.000 | 80.000
DIMMs 1 | 29.000 | degrees C | ok | na | na | na | na | 87.000 | 92.000
DIMMs 2 | 27.000 | degrees C | ok | na | na | na | na | 87.000 | 92.000
DIMMs 3 | 23.000 | degrees C | ok | na | na | na | na | 87.000 | 92.000
DIMMs 4 | 25.000 | degrees C | ok | na | na | na | na | 87.000 | 92.000
Mem 1 1-4 Zone | 38.000 | degrees C | ok | na | na | na | na | 85.000 | 90.000
Mem 1 5-8 Zone | 39.000 | degrees C | ok | na | na | na | na | 85.000 | 90.000
Mem 2 1-4 Zone | 28.000 | degrees C | ok | na | na | na | na | 85.000 | 90.000
Mem 2 5-8 Zone | 32.000 | degrees C | ok | na | na | na | na | 85.000 | 90.000
Mem 3 1-4 Zone | 20.000 | degrees C | ok | na | na | na | na | 85.000 | 90.000
Mem 3 5-8 Zone | 21.000 | degrees C | ok | na | na | na | na | 85.000 | 90.000
Mem 4 1-4 Zone | 20.000 | degrees C | ok | na | na | na | na | 85.000 | 90.000
Mem 4 5-8 Zone | 22.000 | degrees C | ok | na | na | na | na | 85.000 | 90.000
IOH 1 | 66.000 | degrees C | ok | na | na | na | na | 100.000 | 105.000
IOH 2 | 51.000 | degrees C | ok | na | na | na | na | 100.000 | 105.000
NIC Zone | 66.000 | degrees C | ok | na | na | na | na | 90.000 | 95.000
Mezz Zone | 57.000 | degrees C | ok | na | na | na | na | 90.000 | 95.000
Chassis Exit | 67.000 | degrees C | ok | na | na | na | na | 100.000 | 105.000
HDD Max | 35.000 | degrees C | ok | na | na | na | na | 60.000 | 65.000
ProcHot | 0x0 | discrete | 0x0280| na | na | na | na | na | na
Virtual Fan | 27.048 | percent | ok | na | na | na | na | na | na
Enclosure Status | 0x0 | discrete | 0x0080| na | na | na | na | na | na
Power Meter | 284 | Watts | ok | na | na | na | na | na | na
Memory Status | 0x0 | discrete | 0x4080| na | na | na | na | na | na
Cntlr 1 Bay 1 | 0x1 | discrete | 0x0180| na | na | na | na | na | na
Cntlr 1 Bay 2 | 0x1 | discrete | 0x0180| na | na | na | na | na | na
Cntlr 1 Bay 3 | 0x0 | discrete | 0x0080| na | na | na | na | na | na
Cntlr 1 Bay 4 | 0x0 | discrete | 0x0080| na | na | na | na | na | na

Esta es otra forma:

$ ipmitool -H ilo-host01-mx -I lanplus -U admin sdr list
Password:
UID Light | 0x00 | ok
Health LED | 0x00 | ok
VRM 1 | 0x00 | ok
VRM 2 | 0x00 | ok
VRM 3 | 0x00 | ok
VRM 4 | 0x00 | ok
Inlet Ambient | 14 degrees C | ok
System Board | 23 degrees C | ok
CPU 1 | 18 degrees C | ok
CPU 2 | 18 degrees C | ok
CPU 3 | 13 degrees C | ok
CPU 4 | 16 degrees C | ok
DIMMs 1 | 29 degrees C | ok
DIMMs 2 | 27 degrees C | ok
DIMMs 3 | 23 degrees C | ok
DIMMs 4 | 25 degrees C | ok
Mem 1 1-4 Zone | 38 degrees C | ok
Mem 1 5-8 Zone | 39 degrees C | ok
Mem 2 1-4 Zone | 28 degrees C | ok
Mem 2 5-8 Zone | 32 degrees C | ok
Mem 3 1-4 Zone | 20 degrees C | ok
Mem 3 5-8 Zone | 21 degrees C | ok
Mem 4 1-4 Zone | 20 degrees C | ok
Mem 4 5-8 Zone | 22 degrees C | ok
IOH 1 | 66 degrees C | ok
IOH 2 | 51 degrees C | ok
NIC Zone | 66 degrees C | ok
Mezz Zone | 57 degrees C | ok
Chassis Exit | 67 degrees C | ok
HDD Max | 35 degrees C | ok
ProcHot | 0x00 | ok
Virtual Fan | 27.05 percent | ok
Enclosure Status | 0x00 | ok
Power Meter | 284 Watts | ok
Memory Status | 0x00 | ok
Cntlr 1 Bay 1 | 0x01 | ok
Cntlr 1 Bay 2 | 0x01 | ok
Cntlr 1 Bay 3 | 0x00 | ok
Cntlr 1 Bay 4 | 0x00 | ok

Control de encendido, reinicio y apagado

Aquí mostramos algunos ejemplos de tareas que podemos usar para controlar el encendido, reinicio y apagado de servidores vía ILO3.

Encender un servidor:

$ ipmitool -H ilo-host01-mx -I lanplus -U admin chassis power on

Reiniciar un servidor:

$ ipmitool -H ilo-host01-mx -I lanplus -U admin chassis power cycle

Apagar un servidor:

$ ipmitool -H ilo-host01-mx -I lanplus -U admin chassis power off

Cambio de opciones de arranque

Para decirle a un servidor que el siguiente reinicio sea por red vía PXE:

$ ipmitool -H ilo-host01-mx -I lanplus -U admin chassis bootdev pxe

Para decirle a un servidor que el siguiente reinicio sea el predeterminado:

$ ipmitool -H ilo-host01-mx -I lanplus -U admin chassis bootdev none

Conexión desatendida (sin pasar contraseña)

Creamos un archivo de texto plano con la contraseña:

$ cat ilo-hosts-pass
s3c3t$$$

Lazamos la consulta desatendida:

$ ipmitool -H ilo-host01-mx -I lanplus -U admin -f ilo-hosts-pass mc info
Device ID : 19
Device Revision : 1
Firmware Revision : 1.55
IPMI Version : 2.0
Manufacturer ID : 11
Manufacturer Name : Hewlett-Packard
Product ID : 8224 (0x2020)
Product Name : Unknown (0x2020)
Device Available : yes
Provides Device SDRs : no
Additional Device Support :
Sensor Device
SDR Repository Device
SEL Device
FRU Inventory Device
Chassis Device
Aux Firmware Rev Info :
0x00
0x00
0x00
0x13

Conectandonos a la consola serial del sistema Linux

Si deseamos conectarnos desde la ILO a la consola de un servidor Linux debemos de realizar los siguientes pasos:

Configurar grub /boot/grub/menu.lst para redireccionar mensajes al puerto serial:

serial -unit=0 -speed=115200
terminal -timeout=10 serial console

Agregar el parámetro de consola serial a la línea del kernel console=ttyS1,115200, por ejemplo:

title SUSE Linux Enterprise Server 11 SP2 - 3.0.93-0.5
root (hd0,0)
kernel /boot/vmlinuz-3.0.93-0.5-default root=/dev/cciss/c0d0p1 ramdisk_blocksize=4096 resume=/dev/system/swapvol splash=silent crashkernel= showopts vga=normal console=ttyS1,115200
initrd /boot/initrd-3.0.93-0.5-default

Redireccionar la salida de login al puerto serial:

host08:~ # grep ttyS /etc/inittab
S0:12345:respawn:/sbin/agetty -L 115200 ttyS0 vt102

La configuración de la consola ILO de la velocidad se define en la consola web de laILO=>Administration=Access Settings=>Access Options=>Serial Command Line Interface Speedigual 115200.

Actualizamos los cambios:

host08:~ # init q

También se deben de dar permisos a root por la terminal serial:

host08:~ # echo ttyS0 > /etc/securetty

Hacemos una prueba:

$ ssh admin@ilo-host01-mx
Enter passphrase for key '/home/jmedina/.ssh/id_dsa':
admin@ilo-host01-mx's password:
User:admin logged-in to ILOUSE250P8VX.(ilo-host01-mx / fe80::2a92:4aff:fe2f:99ac)
iLO 3 Standard Blade Edition 1.55 at Jan 24 2013
Server Name: linux
Server Power: On
hpiLO-> vsp
Virtual Serial Port Active: COM1
Starting virtual serial port.
Press 'ESC (' to return to the CLI Session.

IMPORTANTE: Para desconectarse usar: ESC+ (.

Reseteando una consola HP ILO3

Si se quiere resetear la consola usamos:

hpiLO-> cd /map1
status=0
status_tag=COMMAND COMPLETED
hpiLO-> reset
status=0
status_tag=COMMAND COMPLETED
Resetting iLO.
CLI session stopped

Este procedimiento también se puede hacer vía web llendo a Information => Diagnostico => Reset.

Reinicio manual de un servidor

Configuramos el arranque vía PXE del servidor host01:

$ ipmitool -H ilo-host01-mx -I lanplus -U admin -f ilo-hosts-pass chassis bootdev pxe
Set Boot Device to pxe

Reiniciamos el servidor host01 para que arranque vía PXE:

$ ipmitool -H ilo-host01-mx -I lanplus -U admin -f ilo-hosts-pass chassis power cycle
Chassis Power Control: Cycle

Regresamos el arranque al default del servidor host01:

$ ipmitool -H ilo-host01-mx -I lanplus -U admin-f ilo-hosts-pass chassis bootdev none
Set Boot Device to none

Para ver el arranque del sistema solo se puede hacer por la consola virtual desde la consola ILO.

Reinicio automático de todos los servidores

Configuramos el arranque vía PXE de los servidores 1 al 7:

$ for i in `seq 1 7`; do ipmitool -H ilo-host0$i-mx -I lanplus -U admin -f ilo-hosts-pass chassis bootdev pxe; done
Set Boot Device to pxe
Set Boot Device to pxe
Set Boot Device to pxe
Set Boot Device to pxe
Set Boot Device to pxe
Set Boot Device to pxe
Set Boot Device to pxe
Set Boot Device to pxe

Reiniciamos los servidores 1 al 7:

$ for i in `seq 1 8`; do ipmitool -H ilo-host0$i-mx -I lanplus -U admin -f ilo-hosts-pass chassis power cycle; done
Chassis Power Control: Cycle
Chassis Power Control: Cycle
Chassis Power Control: Cycle
Chassis Power Control: Cycle
Chassis Power Control: Cycle
Chassis Power Control: Cycle
Chassis Power Control: Cycle
Chassis Power Control: Cycle

Cuando los servidores se hayan reinstalado, regresamos el arranque al default de los servidores 1 al 7:

$ for i in `seq 1 7`; do ipmitool -H ilo-host0$i-mx -I lanplus -U admin -f ilo-hosts-pass chassis bootdev none; done

Referencias

Comments

Log in or create a user account to comment.

Mon Tue Wed Thu Fri Sat Sun
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30