LVM 分區應該在虛擬機映像中使用嗎?
創建 VM 映像(例如,KVM 映像)時是否應將 LVM 用於分區?如果您想在主機中掛載 qcow2 映像(如果映像具有 LVM 分區),這似乎會增加複雜性。
另一方面,LVM 分區的優勢在 VM 映像上似乎並不那麼重要,因為與物理系統相比,使 VM 離線和調整分區大小要容易得多。
“這取決於。”
如果您在您控制的環境中(vmware 或 kvm 或其他),並且可以自行決定磁碟性能 QoS,那麼我建議您不要在 VM 中使用 LVM。它不會給您帶來太多在管理程序級別無法獲得的靈活性。
請記住,管理程序已經在有效地執行這些任務。如果您希望能夠任意調整文件系統的大小(一個好主意),只需為每個文件系統創建一個單獨的虛擬磁碟。
當你走這條路時,你可能會想到一件事。您甚至不一定需要以這種方式在虛擬磁碟上放置分區。例如,您可以為 ; 創建一個虛擬磁碟
/home
;它/dev/vdc
在你的虛擬機裡面。創建文件系統時,只需執行類似的操作,mke2fs -j /dev/vdc
而不是指定分區。這是個好主意,但是……大多數工具(以及其他追隨您的管理員)都希望看到每個磁碟上的分區。我建議只在磁碟上放置一個分區並完成它。不過,這確實意味著在調整文件系統大小時又邁出了一步。並且不要忘記正確對齊分區 - 從 1MB 開始第一個分區是一個很好的經驗法則。
綜上所述——在管理程序級別執行所有這些操作意味著您可能必須重新啟動 VM 才能調整分區大小。使用 LVM 將允許您熱添加虛擬磁碟(假設您的管理程序/作業系統組合允許這樣做),並在不重新啟動的情況下擴展文件系統。這絕對是一個加分項。
同時,如果您使用的是雲提供商,那就更微妙了。
我對 Azure、GCP 或任何較小的參與者了解不多,所以我無能為力。
使用 AWS,您可以按照我上面的建議進行操作,並且通常會很好。您可以(現在)即時增加 EBS 卷(虛擬磁碟)的大小,並調整分區大小等。
但是,在一般情況下,將所有內容放在一個大 EBS 卷上並使用 LVM(或者,我想是普通分區)可能是有意義的。Amazon 為您提供每個卷的 IOPS 限制。預設情況下,此限制隨卷的大小而變化。例如,對於
gp2
卷,每 GiB 獲得 3 IOPS(至少 100 IOPS)。請參閱https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html對於大多數工作負載,您會希望所有可用的 IOPS 都可用於任何文件系統,具體取決於目前的需要。因此,創建一個大 EBS 卷,將所有 IOPS 放在一個儲存桶中,然後對其進行分區/LVM 是有意義的。
例子:
3 個具有獨立文件系統/交換區域的磁碟,每個 100GB 大小。每個獲得 300 IOPS。每個磁碟的性能限制為 300 IOPS。
1 個磁碟,300GB 大小。每個 100GB 磁碟上的 LVM 分區。磁碟獲得 900 IOPS。任何分區都可以使用全部 900 IOPS。