o desempenho da minha configuração é muito bom (geekbench, como é 'sentir', ...) mesmo o rendimento do disco (libvirt na partição lvm bruta) está muito próximo do desempenho bruto no servidor) but Os IOPs são tão baixos quanto 100 a 200 guestside (comparado a ~ 1000 hostside) tanto no linux quanto no windows-guests.
Isso é algo para se viver (kvm não pode fazer melhor) ou estou fazendo algo completamente errado?
O interessante é que eu consegui impactar o throughput alterando a configuração (qcow2 vs raw-image vs raw-partition) ou a configuração (caching ou io-scheduling) e variações, mas as IOPs ficaram no mesmo ponto baixo sobre todas essas combinações.
hardware #
• supermicro dual xeon E5520 com 24 GB de RAM |
• 2x constelação seagate 1TB (RAID1 no Adaptec 3405)
• 2x chitas seagate (RAID1 no Adaptec 6405).
software
• ubuntu 11.10 3.0.0-13-server
O emulador kvm / QEMU versão 0.14.1 (qemu-kvm-0.14.1)
• benchmarking dos discos (bonnie ++, hdparm) dos anfitriões e convidados (bonnie ++, hdparm, hdtune no windows)
config
eu testei várias configurações de disco, a configuração atual é:
hosts linux
(Eles simplesmente não "precisam" de alto desempenho IO para manter os arquivos discfiles mais confortáveis)
Arquivos de disco qcow2 em lvm em minhas constelações
• qemu / ide
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/media/vm/images/mex/mex_root.qcow2'/>
<target dev='hda' bus='ide'/>
<address type='drive' controller='0' bus='0' unit='0'/>
</disk>
hosts do Windows ###
(Executando o SQL-Server e o Remote Desktop Services, então eu definitivamente preciso de um bom desempenho IO)
• partições lvm brutas em minhas chitas
• virtio
<emulator>/usr/bin/kvm</emulator>
<disk type='block' device='disk'>
<driver name='qemu' type='raw' cache='none'/>
<source dev='/dev/Cheetah/mts'/>
<target dev='vda' bus='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
</disk>