題 ZFS文件系統上的虛擬機磁盤映像:幾個問題


背景

我使用安裝在ZFS文件系統上的Ubuntu 16.04.4 LTS(轉換為Server from Desktop),該文件系統本身位於Samsung 840 Evo 120 GB SSD上。我還有四個硬盤,它們是兩個鏡像(1 TB和2 TB鏡像),也是ZFS。

我使用系統進行存儲,還使用虛擬化。我在Ubuntu上使用KVM虛擬化,對於其中一個VM,我將SSD OS磁盤映像(安裝在'/'上)存儲在SSD上,而存儲磁盤映像(安裝在'/ home'上)則存儲在1TB HDD上鏡子。

該系統具有16 GB ECC RAM,並且在SSD上有8GB SWAP卷(ZLE壓縮)。 VM設置為8192 MB,因此主機上的其他服務可以提供約。 ZFS ARC為7.8 GB。

我注意到,當在VM中將大量數據寫入VM磁盤映像時,ZFS ARC的大小會大幅增加。雖然這是ARC的預期行為,因為數據正在點擊,但我確實有一些問題要求關於ZFS在存儲和使用VM圖像方面的使用,我在下面不確定。

案件

請注意以下事項:

  • VM磁盤映像不存儲任何重要數據 - 它們僅用於託管和實驗,因此完整性不是那麼重要;
  • 磁盤映像存儲在文件系統中的文件系統中 - 因此,如果目錄是'/ MyMirror / VM /',則'MyMirror'是初始文件系統,後者('VM')是文件系統;
  • 磁盤映像是RAW格式(* .img)。

問題

考慮到上述情況並考慮案例......

  1. 與ext4相比,在ZFS中使用VM磁盤映像實際上有什麼好處嗎?
  2. ARC緩存VM磁盤映像有任何邏輯上的原因/好處嗎?
  3. 我做得對嗎?

由於我正在努力查看ARC緩存磁盤映像的邏輯和任何潛在好處,因此2號目前最令我困惑的是。我可能完全忽略了這一點(也許是一個混亂的頭腦),但是如何緩存主機上的磁盤映像,幫助主機甚至VM本身?

我理解3號可能更像是一種觀點(我想避免),但我不確定我是否採用“正確”的方式。也許有一種更好的方法,考慮到我的設置,存儲和使用VM。

提前致謝!


3
2018-02-27 21:41


起源


現在這是一個非常廣泛的帖子,有幾個問題。請關注每個帖子的單個特定問題,以便我們可以針對每個問題獲得單一,正確的答案。 - music2myear
也許是輕微的編輯。從我的閱讀中可以看出,這三個問題實際上是在問同一個問題,或者更確切地說,三個問題中的任何一個問題的回答都必然會通過背景和闡述來涵蓋其他兩個問題。 - Dawn Benton


答案:


  1. 將ZFS用於VM磁盤存儲有什麼好處嗎?

有可能。 ZFS具有內置的壓縮,重複數據刪除,快照和克隆,以及許多其他功能,您可以使用這些功能來減少存儲空間,更輕鬆地將這些文件系統複製到另一個系統,等等。這真的取決於你的用例。不是狂熱者;),但如果你需要它們,可能有靈活性使用這些功能足以說“是”?

  1. ARC做了什麼有用的事情?

從你所說的,我不知道你是否有很多虛擬機,如果是這樣,他們是否相互共享任何塊(通過快照/克隆或通過重複數據刪除)。如果是這樣,緩存可能會使您受益,因為將數據放在一個中將有利於所有其他數據的性能。如果沒有,那麼好處可能是最小的,因為客戶操作系統通常具有他們已經讀取或寫入的所有內容的頁面緩存。但是,如果主機操作系統有任何壓力,這個內存將被迅速驅逐,因為它只會被訪問一次(並且將在ARC的LRU列表中),所以我不擔心浪費的空間。

  1. 我做得對嗎?

完全取決於您的使用案例。對於你所描述的簡單案例,它似乎很好,但話又說回來,幾乎任何事情都會如此。如果您嘗試為大型VM場構建存儲設備:

  • 您可以考慮將ZFS ZVOL用於存儲而不是ZFS文件系統中的文件
  • 您可能在與存儲不同的服務器上運行VM(這樣您可以更輕鬆地擴展RAM和CPU,並且可以將存儲性能與VM性能隔離開來);在這種情況下,您將ZVOL暴露為iSCSI或FibreChannel目標
  • 為了提高性能,您可能需要添加更多RAM,啟用重複數據刪除和壓縮以節省存儲空間(在RAM和磁盤上),添加專用SLOG設備以實現更快的同步寫入,添加L2ARC設備以將緩存擴展到SSD
  • 對於數據彈性,您可能希望啟用RAID-Z或類似功能
  • 為了允許維護停機,您可能希望另一個存儲主機處於待機狀態,您可以將數據複製到使用狀態 zfs send 和 zfs receive,然後一些方法來切換VM主機指向新位置(或者可能是其他一些故障轉移方式;這只是一個選項)

如果它足夠嚴重,你可以在部署中獲得相當複雜的任務。但是,如果您對系統現在的工作方式沒有任何抱怨,那麼保持系統運行的危害是什麼?


2
2018-02-28 07:39



謝謝你的回复,丹。你已經強調了很多好處。在一天結束時,正如你所指出的那樣,正如它正在發揮作用那麼改變它的意義何在?我最初不太確定ARC為VM磁盤映像提供了哪些好處,但即使它在這種情況下幾乎沒有提供,那麼我應該接受它,因為這是ZFS的工作方式。我想在他們自己的硬件上運行虛擬機,但新硬件,電力和遷移(如果可能)虛擬機的痛苦。 - Joel