虛擬磁盤文件
可以使用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