6 votes

CPU 100% idle but still showing load average

Je possède un serveur Blade avec CentOS 6.4.

À l'état de repos, il affiche une charge moyenne constante de plus de 1. Cependant, j'ai préparé une autre machine ayant le même matériel et la même version de CentOS et sa charge moyenne reste autour de 0 lorsqu'elle est inactive.

La sortie de top est la suivante:

top - 10:23:04 en marche depuis 156 jours, 18:15,  1 utilisateur,  charge moyenne: 1.08, 1.35, 1.31
Tâches: 534 total,   1 en cours d'exécution, 533 en veille,   0 arrêtées,   0 zombie
Cpu(s):  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:  65959040k total, 10021484k utilisé, 55937556k libre,   167092k tampons
Swap: 32767992k total,    13884k utilisé, 32754108k libre,  7084024k mis en cache

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMANDE
20951 root      20   0 15396 1608  952 R  0.3  0.0   0:01.52 top
    1 root      20   0 19352  684  472 S  0.0  0.0   0:01.64 init
    2 root      20   0     0    0    0 S  0.0  0.0   0:00.03 kthread
    3 root      RT   0     0    0    0 S  0.0  0.0   0:15.31 migration/0
    4 root      20   0     0    0    0 S  0.0  0.0   0:12.32 ksoftirqd/0
    5 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/0
    6 root      RT   0     0    0    0 S  0.0  0.0   0:17.45 watchdog/0
    7 root      RT   0     0    0    0 S  0.0  0.0   0:16.26 migration/1
    8 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/1
    9 root      20   0     0    0    0 S  0.0  0.0   0:18.51 ksoftirqd/1

Quel processus provoque un charge moyenne système > 1 en étant totalement inactif?

8voto

Sobrique Points 3695

La moyenne de charge ne signifie pas ce que vous pensez qu'elle signifie. Il ne s'agit pas de l'utilisation instantanée du CPU, mais plutôt du nombre de processus en attente d'exécution. En général, c'est parce qu'il y a beaucoup de choses voulant le CPU, mais pas toujours. Un coupable fréquent est un processus en attente d'E/S - disque ou réseau.

Essayez d'exécuter ps -e v et de rechercher les indicateurs d'état des processus.

state    L'état est donné par une séquence de caractères, par exemple, "RWNA". Le      premier caractère indique l'état d'exécution du processus :
D    Indique un processus en attente sur le disque (ou autre attente à court terme, ininterrompue).
I    Indique un processus qui est inactif (en veille depuis plus d'environ 20 secondes).
L    Indique un processus en attente d'acquisition d'un verrou.
R    Indique un processus prêt à être exécuté.
S    Indique un processus en veille depuis moins d'environ 20 secondes.
T    Indique un processus arrêté.
W    Indique un fil interrupteur inactif.
Z    Indique un processus mort (un "zombie").

Ceci est tiré du manuel de ps, vous pouvez donc trouver plus de détails là-bas - les processus R et D sont probablement d'un intérêt particulier.

Votre sortie top contient :

Tâches : 534 au total,   1 en cours d'exécution, 533 en attente,   0 arrêtées,   0 zombies

Ce processus en cours d'exécution est la cause de votre moyenne de charge. Trouvez-le et découvrez ce qu'il fait. (Edit : Comme mentionné dans les commentaires - ce processus en cours d'exécution est probablement top. Ignorez-le donc)

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X