文/凌霞
隨著我國信息化建設(shè)逐步推進(jìn)和完善,企業(yè)信息化程度不斷提高,數(shù)據(jù)已成為企業(yè)的重要資源,數(shù)據(jù)的安全性、可靠性越來越成為企業(yè)生存和發(fā)展的關(guān)鍵,數(shù)據(jù)安全保護(hù)成為每個(gè)企業(yè)需要解決的重要課題。
國外權(quán)威機(jī)構(gòu)統(tǒng)計(jì),造成數(shù)據(jù)損失的最大原因是非計(jì)劃宕機(jī),30%由硬件故障導(dǎo)致,其中存儲(chǔ)設(shè)備故障對(duì)數(shù)據(jù)威脅最大,后果最嚴(yán)重硬件故障30%,其他分別是操作失敗27%,軟件25%,應(yīng)用15%其他3%。
影響存儲(chǔ)可用性因素主要有故障率和修復(fù)周期,其中存儲(chǔ)的修復(fù)周期包括RAID重建和備件更換周期,據(jù)統(tǒng)計(jì)實(shí)際應(yīng)用中修復(fù)周期平均為3天,所以故障率成為決定存儲(chǔ)可用性的關(guān)鍵指標(biāo)。
存儲(chǔ)設(shè)備主要由存儲(chǔ)控制器和硬盤組成,兩者的設(shè)計(jì)平均無故障時(shí)間(MTTF)為百萬小時(shí)以上,其平均年故障率為0.88%,但在實(shí)際使用中,硬盤受外界因素(讀寫壓力、電源、溫度等)影響,故障率遠(yuǎn)大于設(shè)計(jì)值。
本企業(yè)借助服務(wù)器虛擬化技術(shù),將60多個(gè)子系統(tǒng)整合到由4臺(tái)服務(wù)器與一臺(tái)存儲(chǔ)組成的虛擬化平臺(tái)中,在減少物理服務(wù)器的同時(shí),存儲(chǔ)的數(shù)據(jù)變得高度集中,出現(xiàn)了“雞蛋放入一個(gè)籃子”的現(xiàn)象。如何提高虛擬環(huán)境下存儲(chǔ)可用性,保證存儲(chǔ)數(shù)據(jù)的安全,是我們?cè)跍p少物理服務(wù)器的同時(shí),存儲(chǔ)的數(shù)據(jù)變得高度集中,
出現(xiàn)了“雞蛋放入一個(gè)籃子”的現(xiàn)象。如何提高虛擬環(huán)境下存儲(chǔ)可用性,保證存儲(chǔ)數(shù)據(jù)的安全,是我們將要探討解決的課題。
評(píng)價(jià)存儲(chǔ)設(shè)備高可用性的標(biāo)準(zhǔn)有很多,經(jīng)過實(shí)踐和研究,可以從技術(shù)和應(yīng)用兩方面進(jìn)行分析:
2.1.1技術(shù)標(biāo)準(zhǔn):存儲(chǔ)系統(tǒng)的故障恢復(fù)指標(biāo)
技術(shù)標(biāo)準(zhǔn)就是對(duì)存儲(chǔ)高可用性技術(shù)在性能上提出相應(yīng)標(biāo)準(zhǔn),主要分以下兩方面
業(yè)界一般使用RPO與RTO兩個(gè)參數(shù)來衡量存儲(chǔ)系統(tǒng)的故障恢復(fù)指標(biāo)。
RPO(Recovery Point Objective)是指發(fā)生故障時(shí)可接受的最大可容忍數(shù)據(jù)丟失。不同的數(shù)據(jù)復(fù)制技術(shù),將會(huì)影響數(shù)據(jù)的丟失等級(jí),其中同步數(shù)據(jù)復(fù)制技術(shù)使RPO可以達(dá)到秒級(jí)。
RTO(Recovery TimeObjective)是指故障發(fā)生后,從系統(tǒng)宕機(jī)導(dǎo)致業(yè)務(wù)停止開始到完全恢復(fù)之間的時(shí)間段。不同的系統(tǒng)切換技術(shù),直接影響RTO的效率,其中系統(tǒng)自動(dòng)恢復(fù)技術(shù)可以使RTO達(dá)到秒級(jí)
可見構(gòu)建高可用存儲(chǔ)環(huán)境,在設(shè)備故障率上要求就是盡可能將設(shè)備故障率進(jìn)一步降低;在設(shè)備故障恢復(fù)指標(biāo)上的要求就是使RPO和RTO達(dá)到相關(guān)業(yè)務(wù)系統(tǒng)的要求,同時(shí)將業(yè)務(wù)中斷時(shí)間與數(shù)據(jù)丟失盡可能趨近于零。
2.1.2應(yīng)用標(biāo)準(zhǔn)
應(yīng)用標(biāo)準(zhǔn)就是對(duì)存儲(chǔ)高可用性技術(shù)的適用性提出的標(biāo)準(zhǔn),主要包括:
讀寫性能:是指基于該技術(shù)構(gòu)建的存儲(chǔ)高可用性系統(tǒng)具有較好的讀寫性能,在讀寫次數(shù)(IOPS)和吞吐率上無明顯下降。
兼容性能:是指基于該技術(shù)構(gòu)建的存儲(chǔ)高可用性系統(tǒng)能夠充分兼容不同品牌、型號(hào)的存儲(chǔ)設(shè)備,同時(shí)也能兼容各種操作系統(tǒng)。
實(shí)施性能:主要指基于該技術(shù)構(gòu)建的存儲(chǔ)高可用性系統(tǒng)無需對(duì)現(xiàn)有結(jié)構(gòu)做大的改動(dòng),實(shí)施時(shí)中斷業(yè)務(wù)時(shí)間較短。
管理性能:主要指基于該技術(shù)構(gòu)建存儲(chǔ)高可用性系統(tǒng)易于運(yùn)維和擴(kuò)展。
目前實(shí)現(xiàn)存儲(chǔ)高可用性的較常見技術(shù)是基于操作系統(tǒng)和基于存儲(chǔ)系統(tǒng)兩種,兩者各有優(yōu)缺點(diǎn)。
2.2.1基于操作系統(tǒng)的存儲(chǔ)高可用性
基于操作系統(tǒng)實(shí)現(xiàn)存儲(chǔ)高可用性是利用操作系統(tǒng)來實(shí)現(xiàn)數(shù)據(jù)鏡像。這種技術(shù)的優(yōu)點(diǎn)是對(duì)不同存儲(chǔ)設(shè)備的兼容性較好;缺點(diǎn)是需要特定的操作系統(tǒng)支持,在現(xiàn)有系統(tǒng)環(huán)境中實(shí)現(xiàn)難度太大;會(huì)增加服務(wù)器資源開銷,甚至可能影響正常的系統(tǒng)運(yùn)行。因此,這種技術(shù)具有相當(dāng)?shù)木窒扌?,?duì)些特殊的應(yīng)用無法支持,比如:oracle rac。當(dāng)業(yè)務(wù)系統(tǒng)比較龐大,會(huì)造成系統(tǒng)部署難度加大、管理復(fù)雜度增加
2.2.2基于存儲(chǔ)系統(tǒng)的存儲(chǔ)高可用性
基于存儲(chǔ)系統(tǒng)的存儲(chǔ)高可用性是利用存儲(chǔ)間復(fù)制技術(shù)實(shí)現(xiàn)。這種技術(shù)的優(yōu)點(diǎn)是功能強(qiáng)大,效率高,不占用操作系統(tǒng)資源;缺點(diǎn)是對(duì)存儲(chǔ)的型號(hào)要求較高,通常是局限在同一型號(hào)之間;存儲(chǔ)系統(tǒng)故障切換需要一定的時(shí)間。這種技術(shù)適合同品牌存儲(chǔ)構(gòu)建小型存儲(chǔ)高可用性系統(tǒng)時(shí)使用
鑒于傳統(tǒng)技術(shù)在實(shí)現(xiàn)存儲(chǔ)高可用性上存在諸多不足的現(xiàn)狀,目前一種解決存儲(chǔ)高可用性的新技術(shù)——存儲(chǔ)虛擬化。
2.3.1存儲(chǔ)虛擬化架構(gòu)和原理
存儲(chǔ)虛擬化是在物理存儲(chǔ)系統(tǒng)和服務(wù)器之間增加一個(gè)虛擬層,它管理和控制所有存儲(chǔ)并對(duì)服務(wù)器提供存儲(chǔ)服務(wù)。
存儲(chǔ)虛擬化技術(shù)就是把不同品牌、不同架構(gòu)、不同容量、不同性能的存儲(chǔ)整合成一個(gè)存儲(chǔ)資源池——虛擬存儲(chǔ),提供統(tǒng)一有效的存儲(chǔ)服務(wù)。相當(dāng)于將存儲(chǔ)卷管理的功能從服務(wù)器系統(tǒng)遷移到了存儲(chǔ)虛擬化設(shè)備上,存儲(chǔ)虛擬化設(shè)備工作于服務(wù)器系統(tǒng)和存儲(chǔ)系統(tǒng)之間,對(duì)于所有的物理存儲(chǔ)來說,存儲(chǔ)虛擬化設(shè)備是服務(wù)器;而對(duì)于服務(wù)器來說,存儲(chǔ)虛擬化設(shè)備則是存儲(chǔ),存儲(chǔ)虛擬化設(shè)備整合所有的物理存儲(chǔ)上的邏輯卷形成虛擬存儲(chǔ)池,然后根據(jù)應(yīng)用實(shí)際需求劃分虛擬存儲(chǔ),由虛擬存儲(chǔ)來為服務(wù)器提供存儲(chǔ)服務(wù)。服務(wù)器不直接與存儲(chǔ)硬件打交道,存儲(chǔ)配置變化對(duì)服務(wù)器層完全透明。
圖1:虛擬機(jī)的傳統(tǒng)存儲(chǔ)與虛擬化架構(gòu)存儲(chǔ)
圖2:存儲(chǔ)虛擬化的鏡像標(biāo)識(shí)
2.3.2存儲(chǔ)虛擬化實(shí)現(xiàn)高可用性的方式
存儲(chǔ)虛擬化技術(shù)實(shí)現(xiàn)存儲(chǔ)高可用性主要是通過存儲(chǔ)虛擬化設(shè)備進(jìn)行數(shù)據(jù)鏡像來實(shí)現(xiàn)的。
虛擬數(shù)據(jù)鏡像是一種新型的存儲(chǔ)虛擬化設(shè)備的工作方式,由存儲(chǔ)虛擬化設(shè)備負(fù)責(zé)將數(shù)據(jù)同時(shí)向兩個(gè)鏡像存儲(chǔ)數(shù)據(jù)之間進(jìn)行寫復(fù)制,且保持虛擬存儲(chǔ)之間的數(shù)據(jù)同步;為了確保虛擬存儲(chǔ)讀寫數(shù)據(jù)的可靠性和連續(xù)性,數(shù)據(jù)必須在不同存儲(chǔ)系統(tǒng)之間鏡像,如果其中一個(gè)存儲(chǔ)系統(tǒng)失效或需要存儲(chǔ)離線維護(hù)時(shí),存儲(chǔ)虛擬化設(shè)備仍然能繼續(xù)提供存儲(chǔ)的訪問服務(wù),當(dāng)失效的存儲(chǔ)系統(tǒng)恢復(fù)服務(wù)時(shí),存儲(chǔ)虛擬化設(shè)備自動(dòng)重新進(jìn)行虛擬鏡像存儲(chǔ)之間的數(shù)據(jù)同步,保證不同存儲(chǔ)間數(shù)據(jù)一致。
3.1.1實(shí)際環(huán)境的現(xiàn)狀
本企業(yè)虛擬服務(wù)器環(huán)境由4片刀片服務(wù)器、1臺(tái)DS 5300存儲(chǔ)、2臺(tái)光纖交換機(jī)組成,如圖1,運(yùn)行了60個(gè)虛擬機(jī)系統(tǒng)。 DS 5300作為虛擬服務(wù)器的數(shù)據(jù)存儲(chǔ),虛擬服務(wù)器數(shù)據(jù)定期進(jìn)行備份。
3.1.2實(shí)際環(huán)境的存儲(chǔ)高可用性亟待提高
現(xiàn)有存儲(chǔ)架構(gòu)在故障率、故障恢復(fù)上都存在不足。雖然DS5300已經(jīng)是全冗余的企業(yè)級(jí)存儲(chǔ)子系統(tǒng),但從整個(gè)系統(tǒng)層面考慮,DS5300是整個(gè)系統(tǒng)的單點(diǎn)故障點(diǎn)。在故障率方面,由于整個(gè)系統(tǒng)的數(shù)據(jù)存儲(chǔ)在DS5300上,因此存在單點(diǎn)故障,很難將故障率進(jìn)一步降低。在故障恢復(fù)方面,目前使用VDP工具在每天凌晨對(duì)虛擬服務(wù)器進(jìn)行數(shù)據(jù)備份,虛擬服務(wù)器數(shù)據(jù)量已達(dá)5T,一旦DS5300發(fā)生故障,將損失一天的數(shù)據(jù),且數(shù)據(jù)恢復(fù)過程至少4個(gè)小時(shí),現(xiàn)有存儲(chǔ)結(jié)構(gòu)和已無法降低RTO和RPO的指標(biāo),整個(gè)系統(tǒng)的數(shù)據(jù)安全存在隱患。
IBM、HDS、EMC等許多廠商都提供了存儲(chǔ)虛擬化的產(chǎn)品,企業(yè)需要根據(jù)自身實(shí)際情況,選擇適合的存儲(chǔ)虛擬化產(chǎn)品。主要可從以下4方面考慮:
(1)支持兩個(gè)以上的存儲(chǔ)間進(jìn)行數(shù)據(jù)復(fù)制,避免存儲(chǔ)單點(diǎn)故障,且產(chǎn)品本身具有雙機(jī)冗余的工作方式。
(2)支持?jǐn)?shù)據(jù)同步復(fù)制,具備故障自動(dòng)快速恢復(fù)能力,以降低RPO與RTO。
(3)具備廣泛的兼容性,能夠兼容現(xiàn)有的系統(tǒng)與存儲(chǔ)、良好讀寫性能、易于部署、易于實(shí)施、管理簡(jiǎn)單、綜合成本合理。
(4)充分考慮產(chǎn)品的成熟度與技術(shù)運(yùn)維支持能力。
綜合以上幾點(diǎn),及企業(yè)的現(xiàn)狀,選擇IBM卷控制器(簡(jiǎn)稱SVC)存儲(chǔ)虛擬化產(chǎn)品來提高企業(yè)的存儲(chǔ)高可用性。
為了在實(shí)施期間減少對(duì)虛擬機(jī)系統(tǒng)的影響,降低實(shí)施難度,保留原系統(tǒng)架構(gòu),只需將一對(duì)SVC控制器接入原SAN網(wǎng)絡(luò)即可,物理連接圖(見圖3-1)。SVC控制器在正常工作狀態(tài)下,會(huì)把寫入數(shù)據(jù)同時(shí)寫到DS5300和DS5020存儲(chǔ)中,確保數(shù)據(jù)冗余,起到對(duì)業(yè)務(wù)數(shù)據(jù)保護(hù)的作用
當(dāng)主存儲(chǔ)系統(tǒng)DS5300出現(xiàn)故障時(shí),SVC控制器會(huì)自動(dòng)把數(shù)據(jù)讀寫路徑切換到備存儲(chǔ)系統(tǒng)DS5020上,由于SVC控制器為主機(jī)提供存儲(chǔ)服務(wù),SVC控制器數(shù)據(jù)鏈路切換對(duì)于主機(jī)來說是透明,所以主機(jī)上的應(yīng)用無需其它操作,依然可以繼續(xù)運(yùn)行,SVC控制器確保了整個(gè)系統(tǒng)的RPO和RTO都達(dá)到了0。
完成上述架構(gòu)改造后(圖1),對(duì)現(xiàn)有的存儲(chǔ)和SVC進(jìn)行以下配置:
(1)在DS5300存儲(chǔ)上創(chuàng)建一個(gè)邏輯盤,由16塊容量為600G 15K 光纖硬盤,以RAID 5的方式組成,在邏輯盤中再創(chuàng)建一個(gè)6.54T大小的邏輯卷,并將邏輯卷映射給SVC使用。
(2)在DS5020上進(jìn)行同樣的邏輯卷的創(chuàng)建,并映射給SVC使用。
(3)在SVC中將以上兩個(gè)存儲(chǔ)邏輯卷以image模式(不做條帶化處理保留原來格式,必要時(shí)可以脫離SVC直接使用)進(jìn)行同步鏡像,組成一個(gè)虛擬卷,并將這個(gè)虛擬卷映射給虛擬服務(wù)器使用。
(4)為了提高系統(tǒng)讀寫性能,將較高性能的DS5300的邏輯卷設(shè)置為主卷(見圖2中帶*),負(fù)責(zé)系統(tǒng)的全部讀寫,較低性能DS5020的邏輯卷則為從卷,只進(jìn)行鏡像同步寫入。
(5)在虛擬服務(wù)器中加入來自SVC的邏輯卷,使用動(dòng)態(tài)存儲(chǔ)遷移功能對(duì)虛擬機(jī)進(jìn)行在線遷移。
3.5.1設(shè)備故障率的評(píng)估
預(yù)設(shè)條件:按照存儲(chǔ)有16塊盤,組成RAID5;硬盤年故障率為5%;設(shè)備修復(fù)時(shí)間為3天;存儲(chǔ)故障指在第一塊硬盤故障修復(fù)期內(nèi),再發(fā)生1塊硬盤故障導(dǎo)致RAID 5失效,設(shè)備故障恢復(fù)性能評(píng)估。
對(duì)DS5300存儲(chǔ)的硬盤模擬損壞測(cè)試,當(dāng)人為拔出2塊硬盤時(shí),RAID 5和主卷已經(jīng)失效。
RTO測(cè)試:SVC自動(dòng)主從卷切換,從卷5秒內(nèi)自動(dòng)接管,對(duì)外提供的服務(wù)未發(fā)生中斷,全過程無需人工干預(yù)。
RPO測(cè)試:SVC采用同步鏡像方式,故障發(fā)生后,對(duì)虛擬機(jī)系統(tǒng)進(jìn)行檢查,未發(fā)生數(shù)據(jù)丟失。
通過模擬故障實(shí)驗(yàn)可以看出,的RTO和RPO近似為零,與實(shí)施之前(RTO約4小時(shí)、RPO約1天)相比,存儲(chǔ)可用性得到有效提高。
3.5.2存儲(chǔ)虛擬化綜合應(yīng)用的性能評(píng)估
評(píng)價(jià)存儲(chǔ)系統(tǒng)的讀寫性能有2個(gè)指標(biāo)分別是每秒讀寫次數(shù) (IOPS)和每秒讀寫吞吐速率(MBPS),使用測(cè)試軟件HD TUNE PRO先對(duì)DS5300和DS5020的卷分別進(jìn)行測(cè)試,然后將這兩個(gè)卷通過SVC組成的虛擬卷進(jìn)行同樣的測(cè)試,其結(jié)果如下:
讀寫次數(shù)測(cè)試:三者的IOPS讀性能基本一致;在寫性能上,DS5300在數(shù)據(jù)塊小于4K時(shí)性能較好,DS5020則相對(duì)較差,而SVC提供的寫性能處于兩者之間,更加接近于DS5300。
吞吐率測(cè)試:三者的吞吐率在讀性能上基本一致;在寫性能上,數(shù)據(jù)塊大于32K時(shí)DS5300寫性能優(yōu)勢(shì)明顯,DS5020性能最差,SVC的寫性能介于二者之間,更接近于DS5300的性能。
通過以上測(cè)試可以看出,SVC的讀寫性能處于DS5300和DS5020之間,更加接近于性能最好的DS5300,SVC組成的存儲(chǔ)系統(tǒng)讀寫性能無明顯下降。
通過存儲(chǔ)高可用性的實(shí)現(xiàn)方式進(jìn)行研究和分析,針對(duì)傳統(tǒng)存儲(chǔ)可用性存在的不足,提出利用存儲(chǔ)虛擬化技術(shù)來實(shí)現(xiàn)存儲(chǔ)高可用性的解決思路。同時(shí),實(shí)現(xiàn)存儲(chǔ)虛擬化在企業(yè)的應(yīng)用實(shí)例,證明了該技術(shù)不僅能夠保持存儲(chǔ)現(xiàn)有性能和只需對(duì)存儲(chǔ)架構(gòu)進(jìn)行微調(diào)的前提下,達(dá)到高可用性的目標(biāo),而且具有良好的擴(kuò)展性和靈活性,為今后系統(tǒng)的擴(kuò)展預(yù)留了空間。
綜上所述,我們認(rèn)為存儲(chǔ)虛擬化技術(shù)不但可以應(yīng)用在新建系統(tǒng)設(shè)計(jì)中,還可以較好地應(yīng)用在現(xiàn)有系統(tǒng)的存儲(chǔ)高可用性改造和提升中。存儲(chǔ)虛擬化技術(shù)作為存儲(chǔ)高可用性技術(shù)的發(fā)展方向,值得企業(yè)在今后的系統(tǒng)架構(gòu)設(shè)計(jì)中不斷推廣應(yīng)用,同樣通過存儲(chǔ)虛擬技術(shù)建立應(yīng)用系統(tǒng)的容災(zāi)備份系統(tǒng)。