CentOS 7 RAID 1 和虛擬機
一個 CentOS 7 主機作業系統將在其中執行三個 CentOS 7 虛擬機。Libvirt 將用於設置虛擬機。主機作業系統和三個虛擬機中的每一個都需要針對 RAID 1 進行配置。
我如何規劃四個 CentOS 安裝的硬碟驅動器? (1 台主機和 3 台虛擬機。) RAID 可以只在兩個物理硬碟上完成嗎?一個硬碟用於主記憶體儲,另一個硬碟用於冗餘儲存?每個硬碟驅動器上有 4 個分區,主機作業系統和三個虛擬機作業系統各有一個分區?這樣每個 CentOS 安裝都會在第一個硬碟驅動器上有一個分區用於主記憶體儲,而在第二個硬碟驅動器上有第二個分區用於 RAID 1 備份?
我已經查看了在 CentOS 7 中設置 RAID 的說明,但我在這裡要問的是,我可以如上所述只使用兩個硬碟驅動器嗎? 購買 8 個物理硬碟驅動器(4 個 CentOS 安裝每個 2 個)會貴得多。
談論 RAID1,“主”和“備份”不是正確的術語,因為兩個磁碟只是彼此的“鏡像”,因此可以互換。
當您在主機中的兩個磁碟上擁有 RAID1 時,您就擁有了文件系統中所有數據的鏡像,因此對於虛擬磁碟也是如此,因為它們只是文件。如果這足夠(保護您的數據免受一個磁碟故障的影響),那麼為每個 VM 創建**一個虛擬磁碟就足夠了,因為它受主機的 RAID1 保護。如果出於任何原因您想為虛擬機使用“虛擬”RAID1,只需為每個虛擬機分配兩個虛擬磁碟(也許出於教育原因,您想在虛擬機中使用 RAID,或者您有點偏執)。
在四個不同的 RAID 設備中的每個磁碟上有四個分區並不能為您提供針對磁碟故障的額外保護,因為當一個磁碟發生故障時,所有四個 RAID 設備都會降級。
讓我們具體一點:有兩個磁碟(sda 和 sdb),每個磁碟有四個分區(sda1…sda4,sdb1…sdb4)並創建四個 RAID 鏡像(md1=sda1+sdb1,…,md4=sda4+sdb4 ),如果例如 sdb 失敗,每個鏡像都會失去一個設備,這意味著它仍在工作但已降級。如果兩個磁碟都出現故障,您將失去數據。這就像每個鏡像(md1)只有一個分區(sda1,sdb1)和虛擬機的虛擬磁碟一樣:一個磁碟故障= md1降級,兩個磁碟故障:數據失去。
如果您有機會使用兩個以上的磁碟,您最好考慮不同的 RAID 級別或
zfs
與 RAIDZ2 或 RAIDZ3 一起使用。一切都取決於您的系統應具備的故障安全程度。