從上圖可以看出,VMware歷經(jīng)了十多年的商業(yè)化發(fā)展道路,對虛擬機遷移的支持更為全面,支持計算和存儲的熱遷移,甚至是跨集群遷移,這通常對于目標規(guī)劃兩地三中心業(yè)務(wù)高可用的用戶來講非常重要,但這些功能僅限于VMware場景使用,也就意味著在滿足業(yè)務(wù)高可用需求的同時,選擇了相對比較單一的私有云模型,給用戶在供應(yīng)商平臺選擇上帶來局限性;

相比之下,OpenStack對虛擬機遷移功能的支持則不夠完善,對于存儲遷移,由于OpenStack本身開放的架構(gòu),需要依賴存儲廠商實現(xiàn)存儲層的遷移能力。

以Ceph為例,Ceph RBD作為OpenStack主流的存儲后端,默認不支持在線熱遷移,RBD裸盤只能進行離線遷移,這就意味著如果進行跨集群遷移,虛擬機需要長時間停機,整體遷移進度受制于存儲的遷移進度,如果存儲容量較大,更會讓整個遷移時間不可控。

如今,XSKY SDS逐步被很多用戶引入到已有的OpenStack架構(gòu)中,用于替換該私有云架構(gòu)中原有的Ceph SDS集群,這些用戶包括對于業(yè)務(wù)連續(xù)性要求非常高的省級,甚至是更大規(guī)模的金融平臺。

為了幫助用戶應(yīng)對棘手的在線熱遷移問題,XSKY基于自主研發(fā)的納管卷、在線卷遷移和多集群存儲等特性,設(shè)計了XMotion納管熱遷移技術(shù),不但支持多家OpenStack廠商,提供面向虛擬機和租戶的存儲計算一體化遷移方案,更可將整體遷移效率提升10倍以上。

XSKY的納管遷移方案具有以下優(yōu)勢:

? 支持存儲在線熱遷移,業(yè)務(wù)無需中斷,可在業(yè)務(wù)正常運行中進行遷移;

? 不僅支持存儲獨立納管遷移,也支持計算和存儲一體化遷移;

? 以卷為單位,上層應(yīng)用無感知,無兼容性問題;

? 支持從開源Ceph遷移到XSKY存儲集群,也支持從XSKY老集群遷移到新集群;

? 支持跨計算和存儲集群進行遷移;

? 無廠商鎖定,支持多家OpenStack廠商;

? 強一致的數(shù)據(jù)完整性保證,不丟增量數(shù)據(jù);

? 支持遷移QoS,可根據(jù)業(yè)務(wù)需要自定義遷移速率,并可隨時撤銷遷移任務(wù);

? 支持以虛擬機或租戶為單位,自動掃描關(guān)聯(lián)的存儲,一鍵遷移;

? 結(jié)合虛機業(yè)務(wù)的完善回滾方案,應(yīng)對海量數(shù)據(jù)遷移過程中的各種硬件和網(wǎng)絡(luò)異常情況。 

02.存儲納管遷移

下面以XSKY存儲集群納管開源Ceph為例,介紹存儲納管遷移的步驟:

1、將計算節(jié)點添加到XSKY存儲集群;

2、OpenStack Nova/Cinder等服務(wù)配置存儲多集群,可同時訪問開源Ceph集群和XSKY存儲集群;

3、在XSKY存儲集群創(chuàng)建納管卷,關(guān)聯(lián)該納管卷與Ceph集群中的被納管卷;

4、OpenStack Nova/Cinder等服務(wù)配置使用納管卷;

5、XSKY納管卷啟動在線卷遷移;

6、后臺數(shù)據(jù)在線遷移完成后,XSKY納管卷會自動合并和清理底層臨時數(shù)據(jù),完成整個遷移過程。

納管遷移中的IO訪問流程如下圖所示:

在遷移過程中,由libvirt發(fā)起的虛擬機讀操作將由遷移網(wǎng)關(guān)從開源Ceph讀取,寫操作則由遷移網(wǎng)關(guān)進行同步雙寫,同時寫入納管卷與被納管卷;

遷移完成后,讀寫操作將都只針對新池進行。納管遷移網(wǎng)關(guān)對上層屏蔽遷移細節(jié),libvirt對整個遷移過程無感知,無需做任何修改。 

03.存算一體化在線遷移

XMotion除了提供存儲納管遷移以外,也支持多家OpenStack廠商之間的存儲和計算一體化遷移方案,以虛擬機為單位,自動化遷移虛擬機及其存儲部分。 

下面我們以某省級農(nóng)信社的大規(guī)模OpenStack生產(chǎn)集群遷移為案例,介紹XMotion的存儲和計算一體化在線遷移方案。

因為歷史原因,過去為了規(guī)避單一供應(yīng)商的產(chǎn)品和服務(wù)風險,該用戶在對外省級聯(lián)社以及對私內(nèi)部運營,規(guī)劃和籌建了兩套OpenStack集群,這兩套集群各自獨立運營,資源以及權(quán)限分離管理;

而在過去三年的逐步比較中,發(fā)現(xiàn)B集群服務(wù)商具有更好的產(chǎn)品穩(wěn)定性和商業(yè)服務(wù)能力,所以本次遷移的目標是為了將OpenStack廠商A的老集群遷移到OpenStack廠商B的新集群中,同時將原XSKY存儲集群遷移到新版本的兩套集群中,做存儲災(zāi)備,因此涉及到計算和存儲兩個單元的同時跨集群遷移需求。

OpenStack原集群為計算和存儲分離部署架構(gòu),其中,計算節(jié)點49臺(46臺為純計算節(jié)點,3臺計算與控制節(jié)點融合部署),共2886臺虛擬機;存儲節(jié)點107臺,采用3副本,裸容量4.38PB,有效容量1.46PB,已使用1PB,共5625個卷

集群遷移前后的架構(gòu)如下圖所示:

以單個虛擬機為例,XSKY的存算一體化遷移方案步驟如下:

1、初始化

? OpenStack廠商創(chuàng)建遷移用的虛擬機,進行網(wǎng)絡(luò)和計算資源初始化等工作

? OpenStack配置多集群

2、XMotion執(zhí)行存儲和計算的自動一體化遷移

? 創(chuàng)建納管卷

? 遷移虛擬機

? 納管卷重命名

? 啟動遷移任務(wù)

本次遷移屬于計劃內(nèi)升級遷移,因此允許對虛擬機業(yè)務(wù)停機,遷移耗時不超過3分鐘,主要集中于虛擬機跨計算集群的重建和啟動階段,得益于XMotion的納管熱遷移技術(shù),整個遷移過程不受存儲容量的限制,新虛擬機啟動后掛載納管卷即可對外提供服務(wù),由XSKY的遷移網(wǎng)關(guān)在后臺執(zhí)行數(shù)據(jù)熱遷移,業(yè)務(wù)在存儲遷移過程中不受遷移進度影響,可正常訪問。

遷移完成后,在OpenStack控制面板可觀察到新虛擬機已正常運行:

而在XSKY存儲控制面板則可觀察到存儲卷為在線遷移狀態(tài):

XSKY支持針對在線遷移中的卷執(zhí)行速率調(diào)整和取消遷移任務(wù)等操作:

? 調(diào)整遷移速率,支持高、中、低三檔遷移速率,如果擔心遷移速率過大影響正常業(yè)務(wù),則可將遷移速率調(diào)?。?/p>

? 取消遷移任務(wù),如果遷移導(dǎo)致業(yè)務(wù)速率降低,則可以取消遷移任務(wù),釋放帶寬來滿足前端業(yè)務(wù)需求,后續(xù)再重新開啟遷移任務(wù)。

本次遷移實測的不同檔次遷移速率如下:

XMotion遷移不僅可以支持跨OpenStack廠商和存儲遷移,方便后期業(yè)務(wù)擴展,而且可以獲得新版本XSKY存儲集群的所有特性,遷移完成后的虛擬機性能也獲得同步提升:

編輯

04.更多適用場景

除了以上提到的場景外,XMotion納管熱遷移技術(shù)還可靈活應(yīng)用于多種業(yè)務(wù)場景。

1、遷移開源Ceph或老版本XSKY存儲

遷移需求:

? 開源Ceph運維難度大, 將開源Ceph遷移到XSKY存儲上,獲得專業(yè)和易用的企業(yè)級存儲能力;

? 部署了新版本XSKY存儲集群,希望將老集群遷移到新集群,釋放老集群資源。

方案優(yōu)勢:

? 保留OpenStack計算集群,遷移底層Ceph或XSKY老集群到XSKY新集群;

? 以虛擬機和租戶為單位,面向業(yè)務(wù)遷移;

? 在線遷移,業(yè)務(wù)無感知;

? 自動化遷移,運維成本低。

2、跨集群遷移計算和存儲集群

遷移需求:

? 計算集群升級;

? 存算分離;

? 跨集群遷移虛擬機;

? OpenStack集群跨地域遷移;

? 不同OpenStack廠商集群切換;

? 要求遷移時間可控,遷移過程業(yè)務(wù)不中斷。

方案優(yōu)勢:

? 計算和存儲同時遷移;

? 支持跨計算集群和跨存儲集群遷移;

? 遷移時間可控,不受存儲容量限制;

? 多OpenStack廠商支持;

? 自動化遷移,運維成本低。

05.小結(jié)

OpenStack進入我們的視線已經(jīng)有很多年了,開源且具有開放性的OpenStack平臺對于許多植根互聯(lián)網(wǎng)基因的企業(yè)來說具有強大的吸引力,但由于產(chǎn)品化程度不足,運維和開發(fā)投入的人力和資金往往不可忽視。

而最終在很多需要跨集群滿足業(yè)務(wù)連續(xù)性的場景,無法攻城略地的原因,則來自于OpenStack場景下,天然短板的熱遷移(Live-Migration)能力。XSKY XMotion納管熱遷移技術(shù),讓OpenStack也能夠支持熱遷移,極大提升虛擬機遷移效率。

分享到

zhangnn

相關(guān)推薦