Velocidad excesiva de ventiladores Dell PowerEdge 730xd
 

Hace unas semanas un cliente adquirió un nuevo servidor para ejecutar el roll de backup, un Dell PowerEdge 730xd, 2 procesadores, 2 discos SSD, varios discos SATA de almacenamiento, pero nada del otro mundo.. algo standard que debería funcionar sin problemas... peeerrroooo...

Agarralo que se vuela

Una vez que verificamos algunos problemitas iniciales para que la placa de raid Perc 730mini reconociera correctamente los discos (algo no estaba bien entre la placa iDrac y la información que la Perc 730 tenía y los datos entre ambas no coincidían), logramos instalar el sistema operativo - Windows Server 2012 R2 - (si, si, ya los escucho... hubieras usado Linux.... pero no viene por ahi el problema..), instalamos correctamente el software de backup y comenzamos las pruebas... hasta ahi todo bien...

El problema comenzó cuando le agregamos una placa Dell SAS 5/E para conectar un LTO 6250 HP externo.
Incorporamos la placa, iniciamos el server, y los ventiladores se dispararon a su máxima velocidad, más de 16000 revoluciones por minuto !!!!, una locura...

iDrac y Dell Server Manager

Inmediatamente comenzamos a ver que estaba pasando, usando la iDrac (Integrated Dell Remote Access) y el OMSA Dell (OpenManage Server Administrator), pero los cambios que aplicábamos en los ventiladores no surtían efecto alguno, los mismos permanecían a full.

Obviamente el problema estaba relacionado con la placa SAS 5/E que agregamos en el raiser, porque antes de ello no ocurría.

La placa era perfectamente funcional en un Dell PowerEdge 410, asi que sabíamos que funcionaba ok y no impactaba en los ventiladores, ...entonces porque aqui si????.

Somos los únicos?

Luego de hacer todo los posible a través de las herramientas de Dell (Life Cycle, Hardware Test, etc. etc.) y descartando un problema de hardware, comenzamos a ver si nos había pasado a nosotros solo o a alguien más...

Obviamente no estabamos solos en esto y hay muchos incidentes similares reflejados en la web, sabemos que tenemos que cambiar algún parámetro que está forzando los ventiladores, pero que desde las interfaces gráficas no son accesibles... ahi es donde IPMI y BMC se vuelven necesarios

Que es IPMI?

IPMI proviene de Intelligent Platform Management Interface, se ejecuta en un subsistema de hardware independiente, inicialmente creado por Intel pero luego adoptado por muchas marcas, incluyendo a Dell.
IPMI entonces nos permite comunicarnos con el servidor y alterar ciertos parámetros para adecuar la funcionalidad.
En el caso de Dell, las IPMI tools se pueden descargar como parte de la plataforma del Administrador de Servidores de Dell y desde alli conectarnos al server para hacer los ajustes necesarios...

Ya veremos más adelante como usar IPMI para soluciona este tema...

Pero que pasó entonces?

Al conectar el nuevo hardware, el server Dell PowerEdge 730xd, dijo... ahhh... esto no es mio... vamos a poner los ventiladores a full por si esto calienta.... y eso hizo, ya que la placa no se corresonde con la generación de servidor y por ende no entrega los valores de "cooling" que el server espera.

Buscando los comandos necesarios

Ya tenemos el diagnóstico, y sabemos que tenemos que hacer, sin embargo aún no sabemos los comandos exactos....

Escarbando mucho en los foros de Dell nos encontramos los siguientes comandos...

Set Third-Party PCIe Card Default Cooling Response Logic To Disabled

ipmitool -I lanplus -H -U -P raw 0x30 0xce 0x00 0x16 0x05 0x00 0x00 0x00 0x05 0x00 0x01 0x00 0x00 

Set Third-Party PCIe Card Default Cooling Response Logic To Enabled

ipmitool -I lanplus -H -U -P raw 0x30 0xce 0x00 0x16 0x05 0x00 0x00 0x00 0x05 0x00 0x00 0x00 0x00 

Get Third-Party PCIe Card Default Cooling Response Logic Status

ipmitool -I lanplus -H -U -P raw 0x30 0xce 0x01 0x16 0x05 0x00 0x00 0x00

Las respuestas deberías ser.....

16 05 00 00 00 05 00 01 00 00 (Disabled)

16 05 00 00 00 05 00 00 00 00 (Enabled)

Vamos tadavía !!!!.... pero no... en nuestro caso.. si bien podíamos establecer la respuesta de cooling para placas PCIe de terceras partes, la velocidad de los ventiladores no bajaba lo suficiente...

los ventiladores estaban en 16000 rpm y bajaron a 12000......

Seguimos buscando... en algún lado la solución debe estar...

Y por fin dimos con los comandos necesarios...

Ya que la respuesta de cooling no solucionaba el problema, comenzamos buscar como regular la velocidad de los ventiladores en forma directa, y por fin encontramos la respuesta...

https://www.dell.com/community/PowerEdge-Hardware-General/R710-2nd-PERC-causes-high-fan-rpm/td-p/5029955

Básicamente la solución se basa en 2 comando de IPMI continuos, el primero hablita el 2do setea...

ipmitool raw 0x30 0x30 0x01 0x00 Habilita la sobreescritura de los valores de velocidad de los ventiladores

ipmitool raw 0x30 0x30 0x02 0xff 0x2c Cambio al velocidad de los ventiladores, siendo el último valor el que indica la velocidad y puede variar entre 0x00 a 0x46 según la fuente

El valor pasado, 0x2c da alrededor de 6000 RPM

Entonces? Como es todo el proceso..

Hay varios pasos que debemos completar para poder aplicar esta solución...

PRIMERO

Ahora que llegaste hasta aquí, NO LO HAGAS!!!!, consultá al proveedor de hardware para que te dé una solución específica, la solución en nuestro caso, puede no ser la que tu hardware necesita, un valor erróneo de configuración puede traerte más problemas que soluciones...

Si aún seguis leyendo, entonces...

Configuración de la iDrac para IPMI

Como se explicó anteriormente, en nuestro caso, se trata de un server Dell PowerEdge 730xd, por lo que la solución comienza por la configuración de la placa iDrac para aceptar los comandos IPMI

Una vez que los logueamos a la placa iDrac (root calvin son el usuario y clave por defecto), alli iremos a la configuración de la iDrac para activar el IPMI sobre la lan

Hecho esto, podremos enviar comandos IPMI a través de la IP de LAN de la iDrac, obviamente con usuario y contraseña, pero sería una buena práctica desactivar IPMI sobre la LAN luego de terminar estas configuraciones...

Como paso siguiente, asumiendo que ya tenemos instalado el OMSA (Open Manage Server Administrator) de Dell, le agregamos la interfaz BMC (Dell OpenManage BMC Utility) que nos permitirá emitir los comandos IPMI

La herramienta se instala en..

y debe ser utilizada desde la linea de comandos con privilegios de administrador...

Para pasaje de comandos requerimos IP del Idrac, usuario y contraeña, y obviamente el comando.. algo asi como esto..

En el primer comando, activamos la posibilidad de cambiar la velocidad de los ventiladores (asumiendo que la ip del iDrac es 200.200.200.200 y que el usuario y clave son los por defecto)

ipmitool -I lanplus -H 200.200.200.200 -U root -P calvin raw 0x30 0x30 0x00 0x01 0x00

Hecho esto solo resta indicar la velocidad que necesitamos para los ventiladores... en nuestro caso probamos varios comandos hasta dar con la deseada...

ipmitool -I lanplus -H 200.200.200.200 -U root -P calvin raw 0x30 0x30 0x02 0xff 0x09

... y asi... llegamos a la velocidad deseada.. o la que necesitemos...

Conclusiones

La mezcla de placas de diferentes generaciones no es en principio una buena idea, sin embargo con algo de twicking puede funcionar....

Echaremos mano de IPMI en cada problema?... no de ninguna manera.... cada situación es diferente, nadie mejor que el fabricante para diagnosticar que es lo que esta pasando y como solucionarlo..

Debo seguir estos comando en situaciones similares? No... tampoco... esto sirvió para corregir un problema entre un server PowerEdge 730xd y una placa Dell SAS 5/E.. cada caso debe ser analizado en particular, puede que aplique idéntica solución o similar... pero el IPMI y el BMC no son para jugar... los errores se pueden pagar muy caros....

 

 

Volver a lista de Notas