如何制定數據中心冗余計劃?
如果想要確保虛擬基礎架構的高可用性,無疑需要冗余技術,下面我們的專家顧問將會介紹企業應該如何選擇最適合自己的冗余等級。
如果企業想要實現彈性機制從而確保系統高可用性,那么為虛擬基礎架構選擇恰當的冗余等級至關重要,但是想要完全了解企業當前需要哪種等級的冗余架構非常困難。對于部分企業來說,N+1的冗余計劃足夠實現系統彈性并且提供穩定的性能表現。而其他企業可能需要更高的冗余等級,也許會選擇N+2或者N+1+1等方案。
那么企業應該如何確定自己的數據中心究竟需要哪種等級的冗余機制呢?為此我們聯系了幾位行業專家,就企業應該考慮哪些方面以及何時做出決定等方面請他們分享各自觀點。
Alastair Cooke——獨立分析師兼顧問
企業可以在應用和基礎架構等多個層次實現冗余機制。通常,冗余機制距離應用層越近,系統的高可用性就越好。一個動態、負載均衡的web服務器集群無疑要比一臺虛擬機當中的單個web服務器可用性更高。而主要問題在于每個應用都使用不同的彈性機制以及工具集。因此如果企業從更低的硬件和基礎架構層提供彈性機制,那么不同應用就能夠使用相同的工具集了。是否在應用層實現冗余還需要考慮管理彈性機制所需要的開銷。
Jim O'Reilly——Volanto
數據完整性需要某種形式的存儲冗余。在磁盤時代,冗余意味著RAID陣列,但是這種技術自身存在缺陷。存儲控制器并不十分可靠,雖然大多數陣列使用雙控制器架構,但是這種架構需要使用非常昂貴的企業級雙接口磁盤,這種情況導致企業為了實現數據完整性需要支付高昂的費用。
許多用戶將RAID配置為使用兩個副本的鏡像或者帶有額外校驗磁盤的RAID5。這種方式能夠滿足基本需求,但是如果磁盤達到TB級別,那么故障磁盤的重建時間將會被大大延長,重建過程當中同一RAID陣列當中的其他磁盤也有可能出現故障。為了解決這種問題,RAID6使用了兩塊校驗磁盤,但是系統在性能方面出現損失。
由于RAID控制器不能滿足日益發展的需求,因此固態硬盤(SSD)取代了RAID陣列。現在,存儲領域最常見的解決方案是使用x86或者ARM控制器、包含12塊磁盤的2U設備。這種方式不需要使用冗余電源或者控制器以及RAID校驗技術。其能夠在不用設備之間同步數據,因此即便整臺設備出現故障,還是能夠對數據進行恢復。這種方案通常在三個不同站點之間同步數據,在遠距離站點當中保存一份額外備份以防止大規模災難發生。AWS(Amazon Web Services)引以為傲的S3(Simple Storage Service)使用的就是這種方式。
下面介紹的是糾刪碼(EC)技術,向每個包含數據的條帶當中添加額外數據,類似于RAID,但是每個條帶中最多只有20個數據和6個EC塊被寫入到存儲當中。盡管EC需要占用大量計算資源,但是26塊磁盤當中的任意20塊都能夠交付數據。這種方式***的優點是26塊磁盤可以位于多臺設備上,在給出的實例當中,能夠支持最多6塊磁盤或者6臺設備同時出現故障。
企業應該使用哪種技術?如果對于系統性能有很高要求,那么同步無疑是***選擇。事實上,可以選擇同步到兩臺設備或者服務器上。將不常用的數據轉換為備份存儲需要創建EC——這個過程在后臺進行——之后使用Ceph或者其他類似軟件將數據寫入條帶。
許多全閃存陣列都使用EC技術。數據的寫入過程被保存在日志文件,之后被放在持續存儲空間當中。這種情況下,可以同時使用EC和數據壓縮技術來節省空間。
對象存儲使用代表性的狀態遷移訪問方式,像S3一樣需要進行同步,但是這種理念——記錄日志和后臺處理、擦除編碼數據——正在變得越來越流行,因為這種方式只需要占用大約之前一半的存儲空間。
有一件事情是肯定的:對于絕大多數計算來說,數據冗余都是必需的。如果沒有實現冗余機制,那么一旦出現問題,就意味著任務必需從頭開始,此外,重要數據也有可能丟失。
Brian Kirsch——密爾沃基技術學院
對于許多企業來說冗余是一個特殊問題;絕對是必要的,但是企業究竟需要哪種級別的冗余?幾年之前,一位CIO表示他希望最重要應用程序的所有組件都是冗余的,但是當他看到第二套存儲區域網絡和光纖網絡的價格時,就不再堅持“redundant everything”的想法了。對于現在的數據中心來說,冗余計劃需要和業務目標以及成本相結合。需要了解的重要一點是當前業務需要何種等級的冗余,因為虛擬基礎架構冗余可能涉及多種技術和高昂成本。
對于大多數虛擬基礎架構來說,擁有額外網絡以及電力供應的傳統硬件冗余只能滿足基本需求。這些通常需要和主機層面的N+1冗余機制相結合,允許某臺機器出現故障或者進行維護。盡管可以通過提升整體冗余比例以實現更好的高可用性,但是同時資源使用率也會相應下降。
***冗余等級將會不斷發生變化,以滿足業務需求的發展。需要記住的一件事情是如果企業需要保護的并非單個系統,對于這樣的虛擬環境來說——其中可能包含多種系統和應用——那么需要使用相比于傳統服務器更好的硬件服務器冗余。
從軟件方面來說,管理員可以借助動態資源分配(DRS)技術為部分虛擬機提供FT(Fault-Tolerant)特性,而為其他虛擬機提供HA(High Availability)特性。對于虛擬化環境來說,***的事情就是在同一個基礎架構當中同時實現兩種機制,但是企業可能需要支付額外的授權費用。
需要考慮的另外一件事是虛擬化環境的冗余管理系統。企業通常只重視主機和虛擬機,而忽略管理,這是一個非常大的錯誤,因為一旦出現問題,管理將會變得非常重要。企業虛擬化環境的全面冗余應該符合之前制定的SLA(服務等級協定),確保冗余計劃當中包含了達到SLA的所有部分,當然也包括管理。