04/04/09

Servidor Intel con Debian, IPMI y software RAID (II)

Proseguimos el relato de la instalación y configuración inicial de un servidor Intel. Estábamos justo con el sistema recien instalado y arrancado. Lo primero es ajustar el grub para que guarde en el MBR del segundo disco también la información para arrancar (sólo los datos en el /boot no son suficientes). Para ello:
  • device (hd0) /dev/sdc
  • root (hd0,0)
  • setup (hd0)
Ahora vamos a probarlo. Paro la máquina, desenchufo el primer disco y reinicio. Aparece el menú de grub, kernel arrancando... correcto, me pide login. Comprobado. Paro de nuevo, reconecto y reinicio otra vez. Arranca de nuevo correctamente aunque los discos RAID no han reencontrado las particiones del primer disco. Las añado manualmene:
  • mdadm /dev/md0 -a /dev/sda1
  • mdadm /dev/md1 -a /dev/sda2
Pasamos ahora a la configuración inicial del servicio IPMI. Para los que no sepan que es esto del IPMI permitidme una explicación burda y tremendamente simplificada: en ciertas placas base destinadas a actuar de servidor se instala un pequeño chip controlador que puede interactuar con elementos del equipo de manera independente e incluso estando parado (con los voltajes de standby y esas cosas que hacen las fuentes de alimentación modernas). Permite consultar sensores, el estado del equipo (activado, parado...), incluso arrancarlo, pararlo, hacer un reset, consultar la BIOS y un largo etcétera. Pero quizas una de las mejores funcionalidades (bajo mi punto de vista) es que puede utilizarse remotamente a través de la interfaz de red. Eso unido a la capacidad de redireccionar un puerto serie... nos permite entrar al equipo de manera remota. Además la "cónsola" permite ser redireccionada al puerto serie también de manera que, en teoria, deberiamos poder ver y interactuar con el equipo desde la BIOS, proceso de arranque, hasta hacer un shell como si estuvieramos en local. Veremos si lo conseguimos.

El primer paso es el fácil: conseguir soporte IPMI local. Instalo los paquetes ipmitool y openipmi. Hay que cargar los siguientes módulos de manera que modificamos el fichero /etc/modules:
  • ipmi-si
  • ipmi_devintf
Con esos módulos cargados nos aparece el dispositivo de comunicación con el IPMI: /dev/ipmi0. Con esto ya nos funciona la comunicación IPMI local que podemos probar de la siguiente manera:

boverals:~# ipmitool chassis status
System Power : on
Power Overload : false
Power Interlock : inactive
Main Power Fault : false
Power Control Fault : false
Power Restore Policy : previous
Last Power Event :
Chassis Intrusion : inactive
Front-Panel Lockout : inactive
Drive Fault : false
Cooling/Fan Fault : false
Sleep Button Disable : not allowed
Diag Button Disable : not allowed
Reset Button Disable : allowed
Power Button Disable : allowed
Sleep Button Disabled: false
Diag Button Disabled : false
Reset Button Disabled: true
Power Button Disabled: true

Aprovechamos este soporte local para activar el demonio ipmievd que se encargará de recoger los eventos de sistema (del System Event Log de la BIOS) y mostrarlos por el log del linux los que nos permite monitorizarlo como una parte más del sistema. Editamos el /etc/default/ipmievd para activarlo y lo arrancamos:

boverals:~# /etc/init.d/ipmievd start
ipmievd: using pidfile /var/run/ipmievd.pid0

Servidor Intel con Debian, IPMI y software RAID (I)

Primera parte de una pequeña serie de artículos donde comentaré a modo de resumen los pasos seguidos para la configuración de un nuevo pequeño servidor Intel encargado de copias de seguridad e histórico, principalmente.

Empecemos por el hardware, esta es la lista de componentes:
  • Chasis Intel SC-5299DP
  • Placa base Intel S3210SHLX
  • Procesador Xeon X3220 Quad-Core 2.4 GHz 8MiB 1066 MHz
  • 4 GiB (2x2) Memoria Kingston DDR2 ECC 800 MHz
  • 2 x Western Digital Caviar Black 1 TB SATA HD
Una vez montado el equipo procedemos a arrancar con el CD de instalación que viene con la placa base. Esto es muy necesario servidores (al contrario que con equipos sobremesa donde es más opcional) para no sólo actualizar BIOS y demás sino para ajustar configuraciones como por ejemplo la del ventilador (sino está siempre al 100%!).

El CD de arranque carga un linux que autodetecta el hardware y utiliza la conexión a internet para descargar las actualizaciones de BIOS y diferentes firmwares. Es realmente un proceso tremendamente cómodo, lo echo a faltar en equipos sobremesa.

Arrancando de nuevo procedemos a la instalación de Debian 5.0 lenny. Utilizando la distribución amd64 de 64 bits para poder aprovechar convenientemente los 4 GiB de RAM del equipo sin problemas. La instalación es bastante estándar con un sistema mínimo para arrancar y a partir de ahi instalar los servicios.

En cuando a la partición de discos y la configuración sigo los mecanismos habituales de software RAID y LVM que ya he comentado por aquí anteriormente. Este equipo ha de acabar con 6 discos ya que sustituye a otro aunque de momento lo he colocado dos para la instalación. Resumiendo la instalación:
  • Partición de 250MiB al inicio de cada disco, combinadas en RAID 1, para /boot.
  • Resto de cada disco (casi 1000GB) en RAID 1 como disco físico LVM.
  • 4 volúmenes lógicos LVM de 2 GB cada uno para: swap, /home, / y /var.
Y con esto concluimos la instalación inicial del sistema. Una vez finalizado reiniciamos la máquina y arrancamos el nuevo sistema instalado.