Sujet :

i/o wait élevé sur un serveur linux mais le disque est pas à fond

RÉSOLU

Liste des sujets Répondre Créer un sujet

hugues13

Membre depuis le 20/11/2024

salut tout le monde ! j'ai un souci bizarre sur un serveur linux avec un kernel 5.10. l'i/o wait est souvent au-dessus de 50% quand je regarde avec top ou sar. mais quand je regarde avec iostat ou iotop l'utilisation du disque (genre %util) est basse genre 10-20% et le read/write en mb/s est pas énorme. je pige pas pourquoi le cpu attend autant si le disque est pas busy.

eric-pichon

Membre depuis le 18/12/2024

yo alors iowait ça veut dire que le cpu est en attente d'opérations d'i/o. ça peut être le disque mais pas que. ça peut être le réseau la mémoire les périphériques block. si le disque est pas busy ça peut être une latence très élevée des requêtes i/o. le disque est pas saturé en débit mais il répond lentement. c'est un disque réseau (nfs iscsi) ou local ?

hugues13

Membre depuis le 20/11/2024

c'est un disque local un nvme. mais le serveur est un vm sur vsphere. on a eu des soucis de storage perf avec vsphere dans le passé. ptete que ça vient de là ? mais d'habitude iostat le montre. là il dit que le disque est chill.

raymond88

Membre depuis le 04/09/2024

si c'est vsphere regarde du côté du host esxi les métriques de latence i/o genre guest latency et kernel latency. c'est possible que le problème vienne du storage sous-jacent et que la vm ne voit pas la saturation directe mais juste les délais de réponse. t'as aussi des options scheduler i/o au niveau kernel. t'es sur quel scheduler vmware noop cfq deadline ?

kpotier

Membre depuis le 02/09/2024

exact les latences. essaie de lancer un fio sur ton nvme avec un blocsize petit et un iodepth genre 1 ou 2 pour voir la latence de base en ms. et un dd simple genre dd if=/dev/zero of=/tmp/test.img bs=1M count=1000 oflag=direct pour voir le débit pur et le temps. ça peut isoler le problème.

madeleine-fabre

Membre depuis le 25/08/2024

autre piste moins fréquente des fois c'est un problème de cache disque ou de sync. genre si t'as une appli qui fait beaucoup de fsync() ou O_DIRECT et que le backend storage est lent pour flush le cache ça peut causer du iowait sans que le débit soit élevé.

vaillant-anais

Membre depuis le 26/10/2024

c'est aussi possible que ce soit pas le disque nvme qui pose problème mais un autre device block ou même une operation réseau qui est classifiée comme i/o. vérifie les kworker processes avec ps et strace s'il y a un kworker qui est bloqué sur une syscall.

hugues13

Membre depuis le 20/11/2024

ok j'ai regardé sur vsphere et le guest latency est parfois énorme genre 50ms alors que d'habitude c'est 2-3ms. le %util du disque dans la vm reste bas car c'est pas le débit qui est le souci mais la latence des requêtes. c'est clairement un problème de backend storage sur l'esxi. je vais ouvrir un ticket avec l'équipe infra. thx pour les coups de main les gars c'était bien la latence le truc.

Répondre

vous devez être connecté pour poster un message !

Rejoindre la communauté

Recevoir les derniers articles gratuitement en créant un compte !

S'inscrire