存儲雙活在實(shí)施過程中不可避免的4個問題
存儲雙活是數(shù)據(jù)中心高可用架構(gòu)中最為重要的環(huán)節(jié)之一,而在存儲雙活建設(shè)實(shí)踐中,存在諸多難點(diǎn),下面梳理了在實(shí)施過程中不可避免的4點(diǎn)問題,并對其進(jìn)行剖析。
1.如何規(guī)劃好存儲雙活模式
存儲雙活的建設(shè)方案,一定是要建立在數(shù)據(jù)庫雙活方案基礎(chǔ)上的,只有明確了數(shù)據(jù)庫和相關(guān)應(yīng)用程序的工作模式,才能做好存儲雙活的整體選型規(guī)劃,否則,對于存儲雙活的建設(shè)來說,任何技術(shù)細(xì)節(jié)都是空談。
如果數(shù)據(jù)庫或應(yīng)用程序僅是以主備模式部署,存儲雙活的的建設(shè)相對來說就容易些,使用flashcopy等快照或類似SRDF磁盤鏡像即可滿足需求;當(dāng)然,這種同步和容災(zāi)方式飽受詬病,由于源和目的端存儲需要相同產(chǎn)品,無法解決異構(gòu)問題,并且使用這類的同步工具大都需要license授權(quán),增加了成本,且低端存儲一般無法復(fù)制功能,因此,從嚴(yán)格意義上來說,并不能算真正實(shí)現(xiàn)了存儲雙活。
如果建立了類似DB2 pureScale或Oracle RAC數(shù)據(jù)庫集群;那么,存儲虛擬化網(wǎng)關(guān)就能得到用武之處,這也是目前存儲雙活建設(shè)中最為普遍的方式,如利用SVC、VPLEX實(shí)現(xiàn)存儲AA(active-active)雙活模式。下面幾個難點(diǎn)問題,也是以此為前提進(jìn)行討論。
2.如何解決單個存儲的“孤島”,提升存儲資源池的整體效能
企業(yè)一般都是在進(jìn)行雙活中心建設(shè)或者新存儲上線的過程中,實(shí)施存儲虛擬化網(wǎng)關(guān)來構(gòu)建存儲雙活體系,這個階段,也是建立和規(guī)劃企業(yè)統(tǒng)一存儲資源池的好計劃,可以將企業(yè)中存在的異構(gòu)存儲高度整合,解決各個存儲層面存在的“孤島”現(xiàn)象。對出現(xiàn)過IO瓶頸的業(yè)務(wù),也可考慮引入全閃存存儲對熱點(diǎn)數(shù)據(jù)進(jìn)行加速,并使用SVC虛擬化網(wǎng)關(guān)中的easy tier等功能,提升存儲池的整體性能。
3.如何設(shè)計雙活存儲高可用,防止仲裁防腦裂
AA模式的雙活存儲,在某些特定的多重故障下,仲裁機(jī)制會優(yōu)先保證數(shù)據(jù)的一致性,可能會將雙活存儲上的所有LUN都停止主機(jī)訪問。所以,在設(shè)計仲裁模式的時候,建議建立第三方站點(diǎn)作為仲裁機(jī),但也不能完全避免上述情況,所以,還要考慮強(qiáng)制啟動,而強(qiáng)制啟動端的存儲作為同步源端,會在鏈路恢復(fù)后同步增量差異數(shù)據(jù)。
4.如何做到讀寫分離,提升IO讀寫效率
存儲雙活后,還有一個難點(diǎn)就是熱點(diǎn)數(shù)據(jù)的跨站訪問,實(shí)施了數(shù)據(jù)庫和存儲層同時雙活,會出現(xiàn)數(shù)據(jù)競爭的問題,這樣也降低了IO效率。這時候就要通過鎖預(yù)取和緩存策略,通過較小的控制報文,向鎖權(quán)限緩存節(jié)點(diǎn)申請寫權(quán)限,并利用鎖預(yù)取將部分區(qū)間的寫權(quán)限緩存到本地。這樣,后續(xù)的連續(xù)寫I/O操作可快速的***在本地,減少跨站點(diǎn)的數(shù)據(jù)傳輸和交互,做到讀寫分離,從而提升IO讀寫性能。