martes, 3 de junio de 2014

LINUX-cómo utilizar "uptime" y cómo interpretar load average o carga de CPU.

Tiempo atrás expliqué este concepto en este post
http://eloraculodelpinguino.blogspot.com/2014/01/lalal.html

Esta vez mi intención es repasar la explicación, enfocandolo desde otra perspectiva un poco más técnica.

El utilitario uptime viene incluído en la mayoría de las distribuciones de linux.
Al ejecutar el comando, la información desplegada en la consola es la siguiente:

[gcepeda@Emesh ~]$ uptime
 17:05:38 up  7:59,  6 users,  load average: 0.21, 0.28, 0.26
[gcepeda@Emesh ~]$ 


Como se aprecia, el comando entrega la siguiente información:

  • tiempo de encendido del server. 
  • cantidad de usuarios logeados en el server. 
  • Promedio de carga; al minuto, a los 5 minutos y a los 15 minutos. 

Promedio de Carga

Se puede entender como la cantidad de procesos que están utilizando recursos + los que esperan (cuando hay alta carga) por usar una tajada de recursos de la CPU. En los intervalos de 1,5 y 15 minutos.

Comúnmente se asocia que un valor de 1.00 significa que el server se encuentra ocupando su capacidad nominal, y que al aumentar sobre este valor, la CPU del server comienza a sobrecargarse, causando lentitud en el sistema. 

Sin embargo, el cálculo se refiere a un core de la CPU. Esto quiere decir que para un server que cuenta con una CPU con un core, la interpretación de la carga se entiende como:

  • Igual a 0: no existen procesos usando recursos de la CPU.
  • Mayor a 0 y menor a 1:  la cantidad de procesos que estan usando recursos de la CPU no alcanza a sobrecargar la CPU. 
  • Mayor a 1: toda la CPU esta siendo usada en toda su capacidad y existen procesos que esperan por utilizar uan tajada de recursos de la CPU. 
Sin embargo, en la realidad, los servidores cuentan con varios CPU de dos o más core.
En este sentido, la interpretación del valor de carga cambia, siendo el 100% de ocupación para una CPU:

  • CPU dual-core = 2.00
  • CPU quad-core = 4.00
  • CPU octa-core = 8.00

En un server con varios procesadores, lo que importa es sumar la catidad de core en total. de esa forma se puede establecer una máxima nominal de carga.

Intervalos de 1,5,y 15 minutos.

La interpretación en los tiempos de carga indican una tendencia en el uso de recursos de la CPU. De esta manera, si en el primer intervalo (1 minuto) existe una alta carga, aun no se puede determinar un problema de carga. Para ello se debe observar el segundo y tercer intervalo, los cuales indican claramente una tendencia. Si el tercer intervalo indica números altos en relación a la cantidad de cores reconocidos por el sistema operativo entonces la sobrecarga de CPU es real y se debe actuar lo antes posible en reconocer y detener los procesos que están saturando el server. 
NOTA: cómo obtener la cantidad de core reconocidos por el S.O.
utilizar el comando grep 'model name' /proc/cpuinfo | wc -l

[gcepeda@Emesh ~]$ grep 'model name' /proc/cpuinfo | wc -l
2
[gcepeda@Emesh ~]$ 


Fuentes:

No hay comentarios:

Publicar un comentario