Pour aller un tout petit peu plus loin dans les perfs LXC :
steph@forumtest:~$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/loop4 30G 2.5G 26G 9% /
[ ... ]
steph@forumtest:~$ mount
/backup/images/102/vm-102-disk-0.raw on / type ext4 (rw,relatime,data=ordered)
Le disque / est monté en mode "loop". Voici un test de perf :
root@forumtest:~# time sh -c "dd if=/dev/zero of=/test.tmp bs=4k count=200000 && sync"
200000+0 records in
200000+0 records out
819200000 bytes (819 MB, 781 MiB) copied, 5.87151 s, 140 MB/s
real 0m14.978s
user 0m0.033s
sys 0m1.436s
Soit 14 secondes pour écrire 780 Mo (avec un TRES grosse latence sur le "sync").
Si je lance la même commande sur une VM sur le même hôte, avec les mêmes cpu/ram (et chargée un peu de la même façon) :
root@log:~# time sh -c "dd if=/dev/zero of=/test.tmp bs=4k count=200000 && sync"
200000+0 records in
200000+0 records out
819200000 bytes (819 MB, 781 MiB) copied, 1,00877 s, 812 MB/s
real 0m1,125s
user 0m0,139s
sys 0m0,849s
Soit... plus de dix fois plus rapide !
Pour finaliser, j'ai mis en place une infra zabbix pour superviser l'hôte et toutes les VM/LXC, et la db mysql était sur un lxc. Au final, j'avais tellement d'IO wait que zabbix ne pouvait pas fonctionner. Dès que j'ai porté la db sur une vm, c'était immédiat.