通过一张表格,简单明了的说明这三种硬盘的不同:
IDE硬盘是早期的硬盘,被广泛使用,因而协议的兼容性比较好,在IDE硬盘上安装windows操作系统,能够无缝操作,中间不需要换盘。相比SCSI等协议,IDE自身的性能就比较差一些,再者IDE盘又是一种全虚拟化硬盘,所以性能并不好。为了改善全虚拟化的性能问题,产生了半虚拟化技术的virtio(本文中所有的virtio均是指virtio-blk)。此处并不展开半虚拟化的讨论。但是virtio技术有一定的局限,尤其是每个磁盘都要占用虚拟机的一个pci槽,导致虚拟机并不能大量挂载此类磁盘。为了解决virtio的种种问题,产生了virtio-scsi技术,用来逐渐替代virtio. 整体上来看这三者的最大不同还是挂载磁盘的数量。根据在ovirt的上测试,一台win7的虚拟机,最多可以创建3个ide硬盘,当再次创建新的ide硬盘时候,会提示无法创建。同时,实验中最多创建了14块virtio硬盘,虽然界面允许创建更多virtio硬盘,但是超过14块,虚拟机是无法启动的。virtio-scsi可以创建足够多的硬盘,以至于协议自身并不是限制因素,而内核的限制反而成了硬盘数目的极限。 需要注意的是,在virtio生成的虚拟机里面,硬盘是以/dev/vdX的形式存在的。同时virtio的代码改动,一般情况下主机虚拟机都需要同步更新,但是virtio-scsi一般只需要主机更新,所以virtio-scsi更加方便一些。另外,IDE硬盘不能够热插拔,需要关机之后才能激活。有ovirt关文档说,virtio并不支持透传。但是经过实验,发现这三种设备都是支持透传的。 综上所述,在没有特殊需求的情况下,创建新的硬盘最佳选择是virtio-scsi。 参考文献:
(责任编辑:IT) |