performances disk bizarres sur vm linux cloud

Posté par yperrin le 03/11/2025
RÉSOLU

yperrin

Membre depuis le 04/10/2024

yo la team linux, j'ai une vm sur un cloud provider (pas aws) avec un disque nvme censé être ultra rapide. mais en prod j'ai des pics de latence I/O de ouf. je parle de centaines de ms alors que ça devrait être sous la milliseconde.

# iotop -oaPk
TID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN     IO>    COMMAND
1234 be/4  appuser    0.00 B/s   10.00 M/s   0.00 % 99.99 % java -jar myapp.jar

le `iotop` montre que mon app est la seule à faire de l'io mais la latence est pas expliquée par le débit qui est faible. y'a un truc au niveau du kernel ou du scheduler que je peux regarder ?

Commentaires

desousa-dominique

Membre depuis le 14/06/2019

salut. déjà t'es sur quel kernel et quel io scheduler ? `cat /sys/block/sdx/queue/scheduler` pour voir. si t'es en `cfq` ou `deadline` pour un nvme c'est pas top. `mq-deadline` ou `none` (pour le driver nvme directement) sont souvent mieux.

bertrand-dubois

Membre depuis le 14/12/2019

et ton `discard` ? si tu fais beaucoup de writes et de deletes, un discard synchrone peut te plomber. t'es en `fstrim -v` en batch ou `mount -o discard` ? la deuxième option peut être problématique.

yperrin

Membre depuis le 04/10/2024

le scheduler est en `mq-deadline` et le fstrim est un cron hebdo. pas de `discard` au mount. la vm est une debian 11 avec un kernel 5.10.0-23-amd64. j'ai essayé de passer `noop` mais pas de changement significatif.

desousa-dominique

Membre depuis le 14/06/2019

hmm si `mq-deadline` est déjà là c bizarre. t'as regardé la métrique `iostat -x 1` ? le `%util` et `await` peuvent donner des indices. et le `latency_histogram` si t'as un outil comme `fio` ou `blkparse` ?

delaunay-elodie

Membre depuis le 13/03/2019

des fois c'est pas le disque direct mais la mémoire. si t'as beaucoup de swap activity ou de pages caches qui sont vidées, ça peut impacter l'io. check `vmstat 1` et les stats du `swappiness` et `vfs_cache_pressure`.

yperrin

Membre depuis le 04/10/2024

vmstat montre que le swap est presque inactif, et le cache est stable. %util d'iostat est souvent bas, genre 5-10% même pendant les pics de latence. le `await` par contre monte à 200-300ms. c'est ça le souci.

bertrand-dubois

Membre depuis le 14/12/2019

si le %util est bas et `await` haut ça sent le problème côté hyperviseur ou le stockage derrière. la vm demande de l'io mais le backend met du temps à répondre même s'il est pas saturé. t'as d'autres vms sur le même host ou le même pool de stockage qui se comportent comme ça ? ptete un overprovisioning sauvage.

yperrin

Membre depuis le 04/10/2024

c'était bien ça. j'ai ouvert un ticket chez le provider et ils ont confirmé un souci sur le SAN derrière. ils ont migré ma VM sur un autre hôte et depuis c nickel chrome. thx pour le coup de main c'était précieux !

Laisser une réponse

Vous devez être connecté pour poster un message !

Rejoindre la communauté

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

S'inscrire