Tenemos un servidor con una alta carga inusual y una utilidad de CPU, pero no podemos entender por qué. Cuando corremos arriba, todos los procs parecen tener una CPU muy baja.
http://cl.ly/2d1g0K3q261r0R0K3e35
¿Hay una mejor manera de buscar lo que está causando esto?
Respuestas:
Creo que este error es tu caso. Por lo que veo en la salida, tiene suficiente memoria (tenga en cuenta los aproximadamente 14 GB en caché), no hay problemas de E / S, pero tiene procesos relacionados con xen en ejecución. Esto me hace pensar que es un error.
fuente
La carga es una medida de la carga de trabajo que un sistema ha tenido en una base de 1, 5 y 15 minutos.
La idea errónea más común es que Load Average está puramente conectado al uso de la CPU de un sistema.
Sin embargo, la carga incorpora medidas adicionales, como CPU esperando E / S, que creo que es su problema.
Según la imagen, supongo que se quedó sin memoria y comenzó a intercambiar datos en el disco.
Un simple
free -m
le dirá cuánta RAM e intercambio se usa.La columna interesante es la columna libre además
-/+ buffers/cache
.Si está cerca de cero, se ha quedado sin RAM y debe actuar en consecuencia.
fuente
iotop
ovmstat
para intentar ver si es E / S.Noté que el promedio de carga es bastante alto (68, wow). ¿Es posible que haya muchos procesos que ocupan un poco de CPU y, por lo tanto, suman todo el tiempo de CPU? Tal vez, esos procesos solo comienzan y finalizan muy rápidamente, por lo que top no puede capturar la existencia de ellos, puede intentar ver si en la parte superior puede ver eso o no.
fuente
Tratar
IO fue para mí la mayor parte del tiempo.
fuente
Intenta usar:
La
-o
bandera forzará la parte superior para ordenar los procesos por uso de CPU en orden descendente.fuente
top -o cpu
obtuve "top: argumento desconocido 'o'"o
mientras se está ejecutando. Debería pedirte una clave principal. Escribacpu
y presione enter.top -o %CPU
Podrían ser archivos bloqueados en nfs o cualquier otra cosa que bloquee un archivo al que otro proceso necesita acceso
También podría perderse el servicio configurado con demasiados hilos activos
fuente
Parece que el uso de la CPU proviene de un hilo.
top
Parece no tener esto en cuenta. Hace poco vi esto en un servidor mysql. hay instrucciones INSERT en ejecución pero no pude obtener las nuevas filas con SELECT porque algún hilo de mysqld estaba actualizando el índice de la tabla. la parte superior muestra una carga del 100% del usuario en un núcleo, pero cada proceso, incluido mysqld, era una CPU del 0.0%. horas después, el mismo SELECT proporcionó el conjunto de resultados esperado.Ver también
Obtener estadísticas de una CPU por hilo
proceso 'htop' y uso de CPU de subprocesos?
fuente