首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >kvm低io性能

kvm低io性能
EN

Server Fault用户
提问于 2012-02-16 09:07:02
回答 2查看 13K关注 0票数 6

我的设置的性能相当好(geekbench,它是什么感觉,.)即使是磁盘吞吐量(在原始lvm-分区上的libvirt)也非常接近服务器上的原始性能),但是在linux和windows-来宾上,IOP/s的客户端都是100到200次(而不是1000个主机端)。

这是一件可以接受的事情(kvm不能做得更好)还是我做了完全错误的事情?

有趣的是,我能够通过更改设置(qcow2对原始映像和原始分区)或配置(缓存或io调度)和变化来影响吞吐量,但是IOP在所有这些组合上都保持在相同的低点。

硬件

·超微型双xeon E5520,24·内存

·2x希捷星座1TB (RAID1 on Adaptec 3405)

·2辆希捷猎豹(RAID1 on Adaptec 6405)。

软件

·ubuntu 11.10 3.0.0-13-服务器

·kvm/QEMU模拟器版本0.14.1 (qemu-kvm-0.14.1)

·对主机和来宾的磁盘(bonnie++、hdparm)进行基准测试(bonnie++、hdparm、hdtune )

配置

我测试了几个磁盘配置,当前的设置是:

linux主机

(他们只是“不需要”高IO-性能,所以我保留更舒适的磁盘文件)

·qcow2光盘文件在我星座的lvm上

·qemu/ide

代码语言:javascript
复制
<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>

窗口托管

(运行SQL-Server和Remote-Desktop-Services,所以这里我肯定需要一个良好的IO-性能)

·我猎豹上的原始lvm分区

·virtio

代码语言:javascript
复制
<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>
EN

回答 2

Server Fault用户

发布于 2012-02-16 10:58:09

最优配置(通常)如下:

  1. 在主机上,设置elevator=deadline
  2. 使用virtio,而只使用virtio
  3. 尽可能使用原始LV。Qcow2给出了开销。FS上的文件也有开销。
  4. 在VM中使用elevator=noop
  5. 在主机和VM中,只要有可能,都可以在use中使用noatime,nodiratime
  6. 确保virtio驱动程序是最新的,特别是windows驱动程序。
  7. 基于Debian的发行版(可以说)不如QEMU/KVM的Fedora和RHEL好。这并不是为了启动一场火焰大战,但是大部分的开发和测试都是在Fedora和RHEL上完成的,根据我自己的经验,Ubuntu和Debian上有很多我无法在Fedora和RHEL上复制的问题。如果你想要的话,你可以忽略这颗子弹,但是如果你在寻找解决方案,在另一个发行版上快速测试通常是值得一试的。
票数 8
EN

Server Fault用户

发布于 2012-02-16 10:39:29

在启动KVM之前,尝试将"deadline“设置为主机磁盘的I/O调度程序:

代码语言:javascript
复制
 for f in /sys/block/sd*/queue/scheduler; do echo "deadline" > $f; done

如果您有I/O绑定负载,这可能是您最好的选择,正如这篇IBM论文所建议的。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/360718

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档