qemu运行linux内核很慢,linux – qcow2图像的qemu存储性能非常慢
我正在一個小型Openstack集群上使用libvirt運行一些圖像.這些機器上的存儲性能非常差:我的監控工具顯示100%的利用率(通常在寫入時,但有時在讀取時),吞吐量低至~50KB / s – 最高約為1MB / s.
這是nmon工具的屏幕截圖,顯示了隨著時間推移的cpu性能和當前的存儲吞吐量.他們展示的是典型的:
通過使用打包工具使用qemu構建Debian和Ubuntu映像,我在其他兩臺機器上復制了相同的性能問題.這是我的qemu命令行:
/usr/bin/qemu-system-x86_64 -netdev user,id=user.0,hostfwd=tcp::3213-:22 -device virtio-net,netdev=user.0 -cdrom /home/$user/packer_cache/23e6874116128e16e11cfad1c369c54be97c20023e59b9b9d39d312233e09cd6.iso -m 512M -display sdl -machine type=pc,accel=kvm -vnc 0.0.0.0:47 -name packer-openstack -drive file=output-openstack/packer-openstack.qcow2,if=virtio,cache=none -boot once=d
如您所見,我正在使用virtio驅動程序,而cache = none.
我甚至修補了packer在qemu-img create的參數中使用-o preallocation = @R_502_338@data.這似乎略微改善了一些事情,但性能仍然比主機系統低幾個數量級.
這個特定的屏幕截圖是在Ubuntu安裝的“安裝基本系統”階段拍攝的,但它與或多或少的任何存儲使用一致.
它是在我的工作站上拍攝的,這是一臺帶有SSD的Macbrook Pro;具有相同問題的Openstack機器正在運行RAID10集群,我在主機系統上以大約1200MB / s的速度進行基準測試.
顯然,我不認為qemu下的存儲性能與主機系統的存儲性能相匹配 – 但它的速度有多慢. Openstack集群上的主機虛擬機需要幾秒鐘來執行操作,就像postgres中的CREATE DATABASE語句一樣簡單.
目前我留下的唯一線索就是這里的截圖:
這里nmon顯示/ dev / sda具有完全利用率,但/ dev / sda7–實際擁有qcow2映像的分區 – 只有1%的使用率.后一個統計數據與我實際期望的磁盤性能相匹配.
值得注意的是,這里的飽和度并不僅僅是我的監控工具的一個工件:在發生這種情況時,主機上的所有操作都非常慢.
如何找出實際發生的情況?
我應該看看在主機上使用電梯= noop和客人調整調度程序等內容嗎?
–
編輯:這是我工作站上uname -a的輸出:
Linux $hostname 3.18.6-1-ARCH #1 SMP PREEMPT Sat Feb 7 08:44:05 CET 2015 x86_64 GNU/Linux
在Openstack機器上:
Linux $hostname 3.13.0-40-generic #69-Ubuntu SMP Thu Nov 13 17:53:56 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
總結
以上是生活随笔為你收集整理的qemu运行linux内核很慢,linux – qcow2图像的qemu存储性能非常慢的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux spyder 目录,linu
- 下一篇: Linux内存中加载二进制,linux