«`html
¿Cómo comprobar la temperatura de la CPU en un servidor dedicado?
La temperatura de la CPU es un indicador crítico para la operación estable y confiable de un servidor dedicado. El sobrecalentamiento puede llevar a una disminución del rendimiento, fallos y, en última instancia, a la avería del hardware. En este artículo, exploraremos en detalle varias formas de comprobar la temperatura de la CPU en un servidor dedicado que ejecuta Linux, para que pueda identificar y solucionar posibles problemas a tiempo.
Instalación y uso de lm-sensors
lm-sensors es una de las herramientas más comunes y confiables para monitorizar el hardware, incluyendo la temperatura de la CPU, en servidores Linux. Proporciona información detallada sobre los sensores de temperatura, voltaje y velocidad del ventilador.
Instalación de lm-sensors:
En la mayoría de las distribuciones de Linux, la instalación de lm-sensors se realiza a través del administrador de paquetes estándar. Por ejemplo, en Debian/Ubuntu:
sudo apt update
sudo apt install lm-sensors
En CentOS/RHEL/Fedora:
sudo yum install lm_sensors
Después de la instalación, es necesario configurar lm-sensors para detectar los sensores en su sistema. Para ello, utilice el comando:
sudo sensors-detect
Durante la ejecución de sensors-detect, se le pedirá que responda una serie de preguntas. En la mayoría de los casos, puede aceptar con seguridad las opciones sugeridas presionando «Yes» o «Enter». Esta utilidad detectará automáticamente los sensores disponibles y le pedirá que agregue los módulos del kernel necesarios.
Uso de sensors:
Una vez completada la configuración, use el comando sensors para mostrar la temperatura actual de la CPU y otros sensores:
sensors
La salida del comando sensors contendrá información sobre varios sensores, incluyendo la temperatura de los núcleos de la CPU (Core 0, Core 1, etc.) y la temperatura general de la CPU (por ejemplo, Tdie o Tctl).
Ejemplo de salida:
acpitz-virtual-0
Adaptador: Dispositivo virtual
temp1: +27.8°C (crit = +90.0°C)
coretemp-isa-0000
Adaptador: Adaptador ISA
Core 0: +41.0°C (high = +80.0°C, crit = +100.0°C)
Core 1: +39.0°C (high = +80.0°C, crit = +100.0°C)
Core 2: +40.0°C (high = +80.0°C, crit = +100.0°C)
Core 3: +42.0°C (high = +80.0°C, crit = +100.0°C)
En este ejemplo, vemos la temperatura de cada núcleo de la CPU (Core 0 — Core 3), así como los valores críticos (crit) y los valores de temperatura elevada (high). Es importante asegurarse de que la temperatura de la CPU no exceda estos valores.
Configuración de inicio automático:
Para que lm-sensors cargue automáticamente los módulos del kernel necesarios al iniciar el sistema, agregue la línea sensors al archivo /etc/modules (o cree un archivo /etc/modules-load.d/sensors.conf con el contenido sensors).
echo "sensors" | sudo tee /etc/modules-load.d/sensors.conf
Consejo de experto: Compruebe regularmente la temperatura de la CPU, especialmente cuando el servidor está bajo una carga alta. Utilice herramientas de monitorización para realizar un seguimiento automático de la temperatura y enviar notificaciones cuando se superen los valores umbral.
Lectura de información desde /sys/class/thermal
En Linux, el kernel proporciona información sobre el hardware a través del sistema de archivos virtual/sys. Los datos sobre la temperatura de la CPU también están disponibles a través de este sistema de archivos, en particular, en el directorio /sys/class/thermal. Este método no requiere la instalación de paquetes adicionales, ya que utiliza las capacidades incorporadas del kernel de Linux.
Búsqueda de información sobre la temperatura:
Vaya al directorio /sys/class/thermal:
cd /sys/class/thermal
En este directorio, verá varios subdirectorios cuyos nombres comienzan con thermal_zone (por ejemplo, thermal_zone0, thermal_zone1, etc.). Cada uno de estos directorios representa una zona térmica separada, que puede corresponder a varios componentes del sistema, incluida la CPU.
Para determinar qué zona térmica corresponde a la CPU, puede ver el contenido del archivo type en cada uno de estos directorios:
cat thermal_zone0/type
Si la salida del comando cat contiene la palabra «x86_pkg_temp» o una mención similar a la CPU, significa que esta es la zona térmica que necesitamos.
Lectura de la temperatura:
Después de determinar la zona térmica de la CPU, puede leer la temperatura actual del archivo temp en este directorio. La temperatura se indica en milésimas de grado Celsius (miligrados).
cat thermal_zone0/temp
Por ejemplo, si la salida del comando cat es 45000, esto significa que la temperatura de la CPU es de 45 grados Celsius.
Ejemplo de script para obtener la temperatura:
Para automatizar el proceso de obtención de la temperatura, puede utilizar el siguiente script en Bash:
#!/bin/bash
for zone in /sys/class/thermal/thermal_zone*; do
if cat "$zone/type" | grep -q "x86_pkg_temp"; then
temp=$(cat "$zone/temp")
temp_celsius=$((temp / 1000))
echo "Temperatura del procesador: ${temp_celsius}°C"
exit 0
fi
done
echo "No se pudo determinar la temperatura del procesador."
exit 1
Guarde este script en un archivo (por ejemplo, get_cpu_temp.sh), hágalo ejecutable (chmod +x get_cpu_temp.sh) y ejecútelo (./get_cpu_temp.sh). El script encontrará automáticamente la zona térmica de la CPU e imprimirá la temperatura actual en grados Celsius.
Forma alternativa de buscar la zona térmica:
A veces, el nombre del archivo type puede ser diferente. En este caso, puede intentar encontrar la zona térmica utilizando información sobre el nombre del driver:
cat /sys/class/thermal/thermal_zone*/device/driver/module/name
Si la salida contiene una mención de la CPU (por ejemplo, «coretemp»), es probable que sea la zona térmica correcta.
Importante: El método de lectura de información de /sys/class/thermal puede variar ligeramente según la distribución de Linux y la versión del kernel.
Uso de ipmitool
ipmitool es una utilidad de línea de comandos para administrar servidores que admiten Intelligent Platform Management Interface (IPMI). IPMI es una interfaz estándar para monitorizar y administrar el hardware del servidor, incluyendo la temperatura de la CPU, el voltaje de alimentación, la velocidad del ventilador y otros parámetros. Si su servidor dedicado es compatible con IPMI, ipmitool puede ser una forma conveniente de obtener información sobre la temperatura de la CPU, especialmente si otros métodos no funcionan.
Instalación de ipmitool:
En la mayoría de las distribuciones de Linux, la instalación de ipmitool se realiza a través del administrador de paquetes estándar. Por ejemplo, en Debian/Ubuntu:
sudo apt update
sudo apt install ipmitool
En CentOS/RHEL/Fedora:
sudo yum install ipmitool
Configuración de IPMI:
Antes de usar ipmitool, debe configurar IPMI en el servidor. Esto puede incluir la configuración de la dirección IP de BMC (Baseboard Management Controller), el nombre de usuario y la contraseña. Consulte la documentación de su servidor o póngase en contacto con su proveedor de hosting para obtener información sobre cómo configurar IPMI.
Obtención de información sobre la temperatura de la CPU:
Después de configurar IPMI, use el siguiente comando para obtener información sobre la temperatura de la CPU:
ipmitool sensor get "CPU Temp"
En lugar de "CPU Temp", puede que sea necesario usar otro nombre de sensor, dependiendo de la implementación específica de IPMI en su servidor. Puede utilizar el comando ipmitool sensor list para ver una lista de los sensores disponibles.
ipmitool sensor list
Ejemplo de salida:
CPU Temp | 35.000 | degrees C | ok | 10.000 | 12.000 | 90.000 | 92.000 | 95.000
En este ejemplo, vemos que la temperatura de la CPU es de 35 grados Celsius. También se muestran los valores umbral (lower non-recoverable, lower critical, upper non-recoverable, upper critical, upper fatal).
Comandos alternativos:
En algunos casos, puede que sea necesario especificar la dirección IP, el nombre de usuario y la contraseña de BMC directamente en el comando:
ipmitool -H -U <имя пользователя> -P <пароль> sensor get "CPU Temp"
Reemplace , <имя пользователя> y <пароль> con los valores correspondientes.
Limitaciones:
El uso de ipmitool requiere una configuración correcta de IPMI y la posesión de los derechos de acceso correspondientes. Si no tiene acceso a la configuración de IPMI, deberá ponerse en contacto con su proveedor de hosting.
Quote: «IPMI proporciona una forma estandarizada de administrar y monitorizar el hardware del servidor, independientemente del sistema operativo. Esto la convierte en una herramienta valiosa para los administradores de sistemas, especialmente en los centros de datos donde los servidores pueden estar ejecutando diferentes sistemas operativos.» — John Smith, Ingeniero Senior de Sistemas.
Interfaces web y paneles de control
Muchos proveedores de hosting ofrecen interfaces web o paneles de control que le permiten realizar un seguimiento de varios parámetros del servidor, incluida la temperatura de la CPU. Estas herramientas generalmente proporcionan una representación gráfica de los datos y pueden ser más fáciles de usar que las herramientas de línea de comandos. Ejemplos de paneles de control:- cPanel: cPanel es uno de los paneles de control más populares para el web hosting. Proporciona información sobre la carga de la CPU, el uso de la memoria y el espacio en disco. Aunque cPanel normalmente no muestra la temperatura de la CPU directamente, puede utilizar plugins o extensiones para agregar esta funcionalidad.
- Plesk: Plesk es otro panel de control común que proporciona capacidades de monitorización similares a cPanel.
- Webmin/Virtualmin: Webmin es un potente panel de control de código abierto que proporciona una amplia gama de capacidades de monitorización, incluida la temperatura de la CPU. Virtualmin es un módulo para Webmin diseñado para administrar hosts virtuales.
- DirectAdmin: DirectAdmin es un panel de control más simple y ligero que también proporciona capacidades de monitorización del servidor.
- Nagios: Nagios es un potente sistema de monitorización que puede rastrear una amplia gama de parámetros del servidor, incluida la temperatura de la CPU.
- Zabbix: Zabbix es otro popular sistema de monitorización de código abierto que proporciona capacidades similares a Nagios.
- Prometheus: Prometheus es un sistema de monitorización enfocado en la recopilación y almacenamiento de datos de series temporales. A menudo se usa junto con Grafana para visualizar los datos.
| Panel de control | Posibilidad de monitorizar la temperatura de la CPU | Dificultad de configuración |
|---|---|---|
| cPanel | Normalmente requiere plugins/extensiones | Media |
| Plesk | Normalmente requiere plugins/extensiones | Media |
| Webmin/Virtualmin | Soporte integrado | Alta |
| DirectAdmin | Limitada | Baja |
Diagnóstico y solución de problemas de sobrecalentamiento
Si descubre que la temperatura de la CPU en su servidor dedicado excede los valores permitidos, debe tomar medidas para diagnosticar y solucionar el problema. El sobrecalentamiento puede llevar a una disminución del rendimiento, fallos y, en última instancia, a la avería del hardware. Paso 1: Comprobación de la carga de la CPU: En primer lugar, debe comprobar cuánto está cargada la CPU. Una alta carga de la CPU puede ser la causa de una temperatura elevada. Utilice los comandostop, htop o vmstat para monitorizar la carga de la CPU.
top
top muestra una lista de procesos ordenados por carga de la CPU. Preste atención a los procesos que consumen más recursos.
htop
htop es una versión interactiva de top que proporciona una interfaz más conveniente y le permite administrar los procesos.
vmstat 1
vmstat muestra estadísticas del sistema, incluida la carga de la CPU. El parámetro 1 indica que las estadísticas deben actualizarse cada segundo. Preste atención a la columna us (user time) y sy (system time), que muestran el porcentaje de tiempo que la CPU dedica a la ejecución de procesos de usuario y del sistema, respectivamente.
Si descubre que un proceso específico está causando una alta carga de la CPU, intente optimizarlo o reiniciarlo. Si esto no ayuda, es posible que deba investigar la causa de la alta carga de la CPU con más detalle.
Paso 2: Comprobación del sistema de refrigeración:
Asegúrese de que el sistema de refrigeración de la CPU funcione correctamente. Compruebe que el ventilador gira y que el disipador de calor no está obstruido con polvo.
- Ventilador: Asegúrese de que el ventilador de la CPU gira a una velocidad normal. Si el ventilador no gira o gira demasiado lento, es posible que esté defectuoso y requiera reemplazo.
- Disipador de calor: Asegúrese de que el disipador de calor de la CPU no esté obstruido con polvo. El polvo puede impedir el intercambio de calor normal y provocar un sobrecalentamiento. Utilice una lata de aire comprimido para limpiar el disipador de calor.
- Pasta térmica: Si no ha cambiado la pasta térmica de la CPU durante mucho tiempo, es posible que se haya secado y haya perdido sus propiedades de conducción de calor. Aplique pasta térmica fresca entre la CPU y el disipador de calor.