kvm可用存储类型简介(译)
09-12
虚拟磁盘文件
可以使用LVM(Logical Volume Manager)创建存储池来管理KVM的存储,创建一个KVM的虚拟机的时候,默认使用虚拟磁盘文件作为后端存储。如果使用这种类型的配置,虚拟机可见到的是一块实际的硬盘,但实际上使用的是一个虚拟磁盘文件所表示的一个硬盘。这里包含了一层额外的文件系统层,而且这一层文件系统层也会导致系统变慢。
当然,虚拟磁盘文件也有它的好处,虚拟磁盘文件很容易就能被其他的KVM虚拟机使用,但是如果你想优化KVM的虚拟化性能,还是需要考虑其他的KVM存储。
基于文件系统的存储
部署KVM主机的时候,你可以选择文件系统目录(dir)或者格式化的块设备(fs)作为KVM的存储。默认是使用dir,KVM会在选择的本地文件系统目录中创建磁盘映像文件。
如果使用fs选项,需要提供存储磁盘映像文件的格式化文件系统的名字。此选项和目录类型的存储最大的区别在于,格式化磁盘映像没有挂载在一个指定的路径下。
使用上述的任意一个选项,都可以使用本地文件系统或者在物理上是基于SAN的文件系统。相比于SAN,本地存储期铜不会同时被多个主机并发的访问。
另外一种基于文件的磁盘存储方式是netfs,只需要你提供一个网络文件系统的名字即可,比如说挂载的Samba文件系统。使用这个方式作为KVM的存储是比较方便的,因为这中方式能比较方便的从另外一台服务器上去访问,同样也允许你在多台主机上去访问同一个磁盘文件。
上述的各种类型的基于文件系统的KVM存储方式都存在一些缺点:文件系统。由于KVM的虚拟机对于硬盘的操作都不是直接写入到KVM的存储介质,而是在宿主主机上的文件系统。这就意味这访问文件系统的时候都需要经过一个不必要经过的中间访问层,这通常会降低性能。
所以,如果想要追求KVM虚拟化的性能,基于设备的存储可能是更好的选择。
基于设备的存储
另一种方式是使用基于设备的存储。有四种方式可以提供此类型的物理存储设备访问:disk、iSCSI、SCSI以及logical。disk允许你直接对磁盘进行读写。iSCSI和SCSI方式提供了一种替代和原有方案具有可比性的方式对磁盘进行访问。这种类型的KVM存储方式的好处在于:你可以使用持久化的命名而不依赖于宿主主机发现设备的顺序。
这些访问磁盘的方式也存在缺点:不灵活,比较僵化。如果使用此种类型的存储,那么基本上没有办法修改虚拟磁盘的大小,或者针对虚拟机进行快照功能。
LVM(Logical Volume Manager)是KVM存储方式中,提升灵活性的最佳方式。一个好处是LVM允许你使用快照功能,另外一个好处是只能作为KVM虚拟化的一个部分,否则无法使用。
LVM允许将存储放置到一个存储卷组中,基于存储卷组,可以很容易的创建一个逻辑的卷。卷组是抽象的物理磁盘设备,所以当你的可用磁盘空间不足的时候,你可以新添加一个设备到卷组中,这个操作实际上增加了可用的直接存储空间到逻辑卷。使用LVM使得设备空间分配更灵活,同时也使得更容易的添加和删除存储。
最后LVM能比较好的工作在单机场景和多主机场景中。如果需要多主机同时访问,你只需要基于SAN创建逻辑的卷即可。如果你使用LVM集群,你可以很容易的配置所有的主机同时访问逻辑卷。
KVM存储池的使用
为了方便KVM存储的管理,可以创建存储池。在主机层次创建存储池可以更容易的访问KVM存储设备。使用KVM存储池也可以将实现预备好的存储管理器来,以供访问。这种策略在大型环境中非常有用,因为存储管理员通常和虚拟机管理员不是同一个人,所以在创建虚拟机前创建一个KVM存储池是一个不错的选择。
当深入KVM虚拟化之后,在主机级别配置一个KVM存储池,并在池中提供LVM逻辑卷。
翻译自:http://searchservervirtualization.techtarget.com/tip/Keeping-up-with-the-KVM-storage-options
转载请注明出处:http://www.nohouse.net