拒絕宕機!Intel攜手ZStack將F.T.技術推向生產應用

企業數字化、智能化轉型還在繼續,新基建浪潮已經來臨。新基建不僅是國家長期的戰略部署,更是拉動中國經濟新的增長點。雲計算作爲新基建的基礎,必將迎來前所未有的發展契機!

全面推行數字經濟的過程中,老舊的IT應用不可能完全被取代,必然對底層的計算、存儲、網絡提出更高的要求,在特殊場景中,例如ETC,業務的連續性變成首要考慮的問題,然而現實情況是,如果沒有在應用層進行相應改寫,雲平臺層面是無法實現容災的。針對這一問題,ZStack聯合Intel發佈了業界首個採用了F.T.技術的ZStack Mini超融合一體機。在ZStack Mini裏,不需要針對老應用做任何支持容災的改造,就可以實現業務0中斷。以下是Intel亞太研發有限公司資深首席工程師、Xen/KVM社區F.T.技術的主要發起者Eddie董(董耀祖),詳細闡述F.T.技術在實際場景中應用的原理和意義。

英特爾董耀祖採訪

QUESTION 01

問:現有的虛擬化軟件裏,只有VMware提供了相對成熟的F.T.技術,您作爲Xen/KVM社區F.T.技術的主要發起者,請給觀衆簡單介紹一下這項技術的原理和意義嗎?

答:首先,隨着互聯網技術的發展,信息系統在各行業的關鍵業務中扮演着越來越重要的角色,例如在通訊、金融、醫療、電子商務、物流、政府等領域。而信息系統業務中斷,會導致巨大經濟損失、影響企業品牌形象,並可能導致重要數據丟失。因此,保證業務系統連續性,就是信息系統建設的關鍵之一。解決這些問題,需要FT/HA技術。

傳統的FT/HA技術經過多年的發展,已經被業界廣泛認同, 主要分爲3類:

  1. 應用層實現的FT/HA功能。 需要用戶程序在設計時就添加FT/HA相關功能邏輯與機制。這類方案的缺點是,需要每個APP都有一套FT/HA機制,軟件開發成本比較高。

  2. 基礎軟件層實現的FT/HA功能。比如MySQL數據庫所實現的用戶數據高可用功能。這種方案解決了用戶APP開發的痛點,但是基礎軟件的種類和數量非常大,並不是所有基礎軟件都具備這個能力。這當中存儲層面實現的FT/HA功能目前最爲普及,各大雲廠商甚至都有自己的解決方案。

  3. 操作系統和虛擬機層面實現的FT/HA功能。COLO就屬於這類的實現方案。COLO可以在主/備端之間完全同步用戶虛擬機的運行時狀態,並保證磁盤數據的一致性,並且在發生故障時可以進行自動切換 (Failover) ,對用戶完全透明。

VMware vSphere Fault Tolerance最早提供商用虛擬機層面的高可用性支持,它通過指令級別的鎖步(Lock-stepping)方法對用戶虛擬機進行熱備份,以防止主機發生故障時丟失數據、事務或連接。但是在某些情況下,這種鎖步方案可能導致虛擬機狀態同步的性能開銷很大。

在另一個方面,雲計算廠商廣泛採用開源虛擬化方案如Xen和KVM,而開源虛擬化方案中的高可用性支持一直是一個痛點。因此,開源社區也進行了廣泛的技術探索。最先在Xen上出現了以checkpoint爲基礎的技術方案,這種技術並不是基於指令層面的同步,而是在某些限定條件下通過週期性的同步來達到相同的效果。但是checkpoint帶來的虛擬機同步開銷和額外延遲,仍然是一個嚴重問題。

在這種情況下Intel從2012年開始提出了全新的基於開源虛擬化方案的FT/HA方案COLO (COarse-grained LOck-stepping Virtual Machines for Non-stop Service)。在COLO環境下,如果運行主虛擬機的主機發生故障,則會發生即時且對軟件透明的故障切換(Failover)。正常運行的備份虛擬機將無縫切換成主虛擬機,而不會出現可感知的斷網或服務中斷現象。採用透明故障切換,不會有數據丟失,並且可以維護用戶的網絡連接。在進行透明故障切換之後,COLO將重新生成新的備份虛擬機,並重新建立系統備機冗餘。

COLO基於虛擬機的熱遷移功能實現, 在整個過程中,主虛擬機內運行的服務,可以像普通熱遷移一樣持續保持運行,外部用戶對整個過程幾乎沒有感知。所以,能夠保證關鍵服務在極端情況下的高可用性,如電力意外中斷,網絡意外中斷等,這對用戶來說是至關重要的。

QUESTION 02

問:爲什麼F.T.這項技術在虛擬化中落地這麼難?

答:因爲FT/HA技術在虛擬化中涉及的技術點非常多, 需要保證主虛擬機和備份虛擬機的全部運行狀態和磁盤狀態的完全一致,或者從外部觀察者角度看起來上完全一致;以及如何在出現意外錯誤的時候,可以在用戶無感知的情況下切換運行中的服務。這裏面具體會涉及到虛擬機熱遷移、磁盤遠程增量複製、虛擬機網絡包複製和路由等一系列較爲複雜的技術問題。

QUESTION 03

問:過去一年裏,ZStack產品團隊跟Intel團隊在將F.T.技術運用到私有云的過程中進行了緊密配合,你們具體分工是如何?

答:在過去的一年中,Intel COLO團隊和開源社區以及ZStack產品團隊,都致力於將COLO 產品化,將這個FT/HA技術真正落地,讓終端用戶真正可以方便的使用COLO。COLO是Intel衆多的開源項目之一, 在KVM/Xen上是目前最爲成熟的FT/HA方案。而ZStack具有豐富的面對客戶需求的實踐經驗,雙方合作的基礎非常雄厚。

在這個過程中,Intel主要負責upstream爲基礎的社區開發和支持,而ZStack利用upstream的工作成果並結合自己的業務需求,再開發形成downstream產品,將COLO集成在ZStack產品中,從而便於技術真正落地。我們秉承開源合作精神,通過開源社區和開源協作模式,一直保持着非常緊密的合作關係。

比如,根據ZStack的需求和提議,我們開發了全新的COLO內置的心跳模塊(Heart Beat)來自動監控和處理系統的狀態,使其可以與雲廠商的控制面軟件保持實時連接,部署更加方便快捷。又比如,我們在和ZStack技術團隊深入交流後發現,客戶需要能夠持續建立備機的能力,纔可以真正保證用戶服務”永不宕機”。

QUESTION 04

問:ZStack首先將F.T.技術運用到私有云產品中,在國內還是首次,您對這項技術在生產實踐中的期望。

答:ZStack作爲國內一個領先的私有云廠商,我們對ZStack公司的技術和產品非常看好。我們也相信,集成了COLO功能的ZStack產品,一定能在國內私有云市場上獲得更大的成功,同時也能幫助中國的企業獲得更可靠、高效的普遍FT/HA技術, 杜絕再發生服務宕機的事故。

QUESTION 05

問:未來Intel在F.T.方面繼續投入的方向及預期?

答:COLO FT/HA 既是Intel和ZStack的合作落地項目,更是一個開源項目, Intel會基於開源社區的反饋不斷進行升級和改造,基於開源社區不斷投入資源去優化和改進COLO的各項功能, 另外我們也期望ZStack能夠帶來更多的市場和客戶對COLO的精準需求。共同打造成功一個由中國人發起和領導的主流雲技術與雲產品!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章