IOPS bizarres sur VMs KVM

camille07 01/12/2025
RÉSOLU
camille07
Auteur Actif
Avatar de camille07
camille07
Auteur Actif

salut à tous on a des perfs IOPS super inconstantes sur nos VMs KVM qui tournent sur un gros serveur physique. Des fois c'est niquel on est à 10k+ IOPS, des fois ça tombe à 200 IOPS pendant quelques minutes sans raison apparente. le stockage backend est ok, pas de souci dessus. ça ressemble à un truc côté hyperviseur ou scheduler.

# exemple de commande pour monitorer les IOPS dans une VM
fio --name=randwrite --ioengine=libaio --iodepth=16 --rw=randwrite --bs=4k --direct=1 --size=1G --numjobs=4 --runtime=60 --group_reporting
01/12/2025 à 12:47

6 commentaires

henri-leroux
Membre Actif Secouriste
Avatar de henri-leroux
henri-leroux
Membre Actif Secouriste

yo. quel est l'I/O scheduler configuré sur l'hôte et dans les VMs ? cfq c'est un carnage pour les VMs. deadline ou noop sont souvent mieux. et quelle version de kernel sur l'hôte ?

Modifié le 23/05/2026 à 16:20
camille07
Auteur Actif
Avatar de camille07
camille07
Auteur Actif

kernel 5.15 partout, et deadline est configuré sur l'hôte et les vms. je me suis déjà brûlé avec cfq haha. mais même avec deadline c'est la galère.

Modifié le 23/05/2026 à 16:20
duval-pierre
Membre Actif Secouriste
Avatar de duval-pierre
duval-pierre
Membre Actif Secouriste

t'as jeté un oeil aux logs dmesg sur l'hôte quand ça arrive ? des fois c'est des erreurs hardware ou des warnings de sous-système storage. et vérifie le CPU pinning de tes VMs. si t'as une VM qui fait beaucoup d'IO et qu'elle partage des coeurs avec d'autres, ça peut créer des contentions et le scheduler devient fou.

03/12/2025 à 22:28
camille07
Auteur Actif
Avatar de camille07
camille07
Auteur Actif

le CPU pinning et le NUMA sont de très bonnes pistes. on n'a pas optimisé ça du tout. je vais regarder pour pinner les vCPU et assigner les VMs aux bons noeuds NUMA. dmesg est propre par contre.

Modifié le 23/05/2026 à 16:20
henri-leroux
Membre Actif Secouriste
Avatar de henri-leroux
henri-leroux
Membre Actif Secouriste

ouais le NUMA c'est vicieux. utilise numactl --hardware sur l'hôte pour voir ta topologie. et regarde `virsh dumpxml ` pour voir le pinning et le placement NUMA de ta VM. tu peux forcer ça dans la config libvirt

Modifié le 23/05/2026 à 16:20
camille07
Auteur Actif
Avatar de camille07
camille07
Auteur Actif

ok je vais creuser ça. merci à tous pour les idées, ça ouvre pas mal de voies de debug. je sens qu'on va trouver le coupable avec ça !

07/12/2025 à 12:07

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