Cómo monitorear el uso de CPU en Linux a lo largo del tiempo

0 Comments
  • Anthony Heddings
  • 23 de abril de 2020, 10: 00am EDT

la utilidad top muestra el uso actual de CPU para cada proceso en ejecución, pero ¿qué pasa si desea monitorear esto a lo largo del tiempo y mostrarlo en un gráfico? Hay algunas utilidades para esto si su proveedor de nube no tiene una ya.

como nota al margen, si no lo tiene instalado ya, la utilidad htop (en la imagen anterior) es mucho más agradable de usar que la predeterminada top.,

la solución Trivial: Use los gráficos de su proveedor de nube

esta solución es, con mucho, la más fácil de usar, pero no estará disponible para todos. Si está en AWS, CloudWatch hace que supervisar el uso de la CPU sea muy fácil.

en la consola de administración de CloudWatch, seleccione «métricas» y, a continuación, vea las métricas de EC2. La métrica» CPUUtilization » muestra la utilización media de la CPU:

Advertisement

la utilización media de la CPU se mide en incrementos de 5 minutos, pero puede habilitar la supervisión ampliada de la instancia y aumentarla hasta incrementos de 1 minuto., Sin embargo, hacerlo cuesta más. También puede configurar fácilmente alarmas para cuando el uso de la CPU también es demasiado alto.

si está en Google Cloud Platform, aparecerá un gráfico en la pestaña «supervisión» cuando seleccione una instancia.

Azure tiene Azure Monitor, que muestra información similar:

para la mayoría de los otros proveedores de nube, es probable que también tengan un gráfico como este.

usando/proc/loadavg

La mejor manera de hacer esto de forma nativa es mirar de donde top obtiene su información. /proc/loadavg contiene promedios de 1 minuto, 5 minutos y 15 minutos., Puede registrarlo con cat

cat /proc/loadavg/ 1.71 1.32 1.38 2/97 6429

puede usar esto para generar un gráfico imprimiendo cada línea en un archivo CSV separado por comas, utilizando algunos awk magic:

cat /proc/loadavg | awk "{print $1","$2","$3}" >> cpu.csv

conecte esto a un trabajo cron que se ejecuta cada minuto, gire los registros con logrotate y tendrá un monitor de CPU improvisado. Puede importar el archivo CSV a Excel, donde será fácil graficar la utilización promedio de la CPU en un gráfico de líneas.,

Advertisement

Nota, el comando anterior imprime los promedios de 1 minuto, 5 minutos y 15 minutos. Si lo estás ejecutando cada minuto, no es realmente necesario imprimir los promedios de 5 y 15 minutos, porque puedes averiguarlo computacionalmente.

Install sysstat

la utilidad sar es ideal para monitorear el rendimiento del sistema. Se incluye como parte de sysstat, que probablemente no esté instalado de forma predeterminada en su sistema. Tendrás que obtenerlo del gestor de paquetes de tu distro., Para sistemas basados en Debian como Ubuntu, sería:

sudo apt-get install sysstat

a continuación, habilítelo editando /etc/default/sysstat y ajustando «ENABLED» a true.

al hacerlo, monitorea su sistema y genera un informe cada 10 minutos, rotándolo después de una semana. Puede modificar este comportamiento editando el crontab de sysstat en /etc/cron.d/sysstat, o cambiando la configuración de rotación en sysstat configuración en /etc/sysstat/sysstat.,

Puede generar un informe en tiempo real con el siguiente comando:

sar -u 1 3

sysstat recopilará datos de uso de CPU en segundo plano cada minuto, guardándolos en /var/log/sysstat/. A continuación, puede importar estos datos para su análisis, utilizando un programa de hoja de cálculo o una herramienta personalizada como sargraph, que muestra un gráfico agradable:

También puede usar utilidades de línea de comandos para trazar gráficos como este, como ttyplot, pero ninguna de ellas se acerca a ser tan fácil de usar (y tan agradable) como una GUI., La línea de comandos está vencida en este caso-los gráficos son más agradables.

Monit puede alarmarlo si el uso de la CPU es demasiado alto

Monit es una suite de monitoreo de código abierto para Unix que comprueba el estado de su servidor y se puede configurar para enviarle notificaciones si el uso de la CPU de su servidor se vuelve peligrosamente alto. Lea nuestra guía para configurarlo para obtener más información.

Advertisement

tenga en cuenta que CloudWatch logra lo mismo con las alarmas, y puede operar en múltiples métricas diferentes, no solo en el uso de la CPU.,Anthony Heddings es el ingeniero residente en la nube de LifeSavvy Media, escritor técnico, programador y experto en la plataforma AWS de Amazon. Él » s escrito cientos de artículos para cómo-a Geek y CloudSavvy que se han leído millones de veces.Leer la Biografía Completa «


Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *