企業(yè)數(shù)字化、智能化轉(zhuǎn)型還在繼續(xù),新基建浪潮已經(jīng)來臨。新基建不僅是國家長期的戰(zhàn)略部署,更是拉動中國經(jīng)濟新的增長點。云計算作為新基建的基礎(chǔ),必將迎來前所未有的發(fā)展契機!
全面推行數(shù)字經(jīng)濟的過程中,老舊的IT應用不可能完全被取代,必然對底層的計算、存儲、網(wǎng)絡(luò)提出更高的要求,在特殊場景中,例如ETC,業(yè)務的連續(xù)性變成首要考慮的問題,然而現(xiàn)實情況是,如果沒有在應用層進行相應改寫,云平臺層面是無法實現(xiàn)容災的。
針對這一問題,ZStack聯(lián)合Intel發(fā)布了業(yè)界首個采用了F.T.技術(shù)的ZStack Mini超融合一體機 。在ZStack Mini里,不 需 要針對老應用做任何支持容災的改造,就可以實現(xiàn)業(yè)務0中斷。
以下是Intel亞太研發(fā)有限公司資深首席工程師、Xen/KVM社區(qū)F.T.技術(shù)的主要發(fā)起者Eddie董(董耀祖),詳細闡述F.T.技術(shù)在實際場景中應用的原理和意義。
QUESTION 01
問:現(xiàn)有的虛擬化軟件里,只有VMware提供了相對成熟的F.T.技術(shù),您作為Xen/KVM社區(qū)F.T.技術(shù)的主要發(fā)起者,請給觀眾簡單介紹一下這項技術(shù)的原理和意義嗎?
答:首先,隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,信息系統(tǒng)在各行業(yè)的關(guān)鍵業(yè)務中扮演著越來越重要的角色,例如在通訊、金融、醫(yī)療、電子商務、物流、政府等領(lǐng)域。而信息系統(tǒng)業(yè)務中斷,會導致巨大經(jīng)濟損失、影響企業(yè)品牌形象,并可能導致重要數(shù)據(jù)丟失。因此,保證業(yè)務系統(tǒng)連續(xù)性,就是信息系統(tǒng)建設(shè)的關(guān)鍵之一。解決這些問題,需要FT/HA技術(shù)。
傳統(tǒng)的FT/HA技術(shù)經(jīng)過多年的發(fā)展,已經(jīng)被業(yè)界廣泛認同, 主要分為3類:
1. 應用層實現(xiàn)的FT/HA功能。 需要用戶程序在設(shè)計時就添加FT/HA相關(guān)功能邏輯與機制。這類方案的缺點是,需要每個APP都有一套FT/HA機制,軟件開發(fā)成本比較高。
2. 基礎(chǔ)軟件層實現(xiàn)的FT/HA功能。 比如MySQL數(shù)據(jù)庫所實現(xiàn)的用戶數(shù)據(jù)高可用功能。這種方案解決了用戶APP開發(fā)的痛點,但是基礎(chǔ)軟件的種類和數(shù)量非常大,并不是所有基礎(chǔ)軟件都具備這個能力。這當中存儲層面實現(xiàn)的FT/HA功能目前最為普及,各大云廠商甚至都有自己的解決方案。
3. 操作系統(tǒng)和虛擬機層面實現(xiàn)的FT/HA功能。 COLO就屬于這類的實現(xiàn)方案。COLO可以在主/備端之間完全同步用戶虛擬機的運行時狀態(tài),并保證磁盤數(shù)據(jù)的一致性,并且在發(fā)生故障時可以進行自動切換 (Failover) ,對用戶完全透明。
VMware vSphere Fault Tolerance最早提供商用虛擬機層面的高可用性支持,它通過指令級別的鎖步(Lock-stepping)方法對用戶虛擬機進行熱備份,以防止主機發(fā)生故障時丟失數(shù)據(jù)、事務或連接。但是在某些情況下,這種鎖步方案可能導致虛擬機狀態(tài)同步的性能開銷很大。
在另一個方面,云計算廠商廣泛采用開源虛擬化方案如Xen和KVM,而開源虛擬化方案中的高可用性支持一直是一個痛點。因此,開源社區(qū)也進行了廣泛的技術(shù)探索。最先在Xen上出現(xiàn)了以checkpoint為基礎(chǔ)的技術(shù)方案,這種技術(shù)并不是基于指令層面的同步,而是在某些限定條件下通過周期性的同步來達到相同的效果。但是checkpoint帶來的虛擬機同步開銷和額外延遲,仍然是一個嚴重問題。
在這種情況下Intel從2012年開始提出了全新的基于開源虛擬化方案的FT/HA方案COLO (COarse-grained LOck-stepping Virtual Machines for Non-stop Service)。在COLO環(huán)境下,如果運行主虛擬機的主機發(fā)生故障,則會發(fā)生即時且對軟件透明的故障切換(Failover)。正常運行的備份虛擬機將無縫切換成主虛擬機,而不會出現(xiàn)可感知的斷網(wǎng)或服務中斷現(xiàn)象。采用透明故障切換,不會有數(shù)據(jù)丟失,并且可以維護用戶的網(wǎng)絡(luò)連接。在進行透明故障切換之后,COLO將重新生成新的備份虛擬機,并重新建立系統(tǒng)備機冗余。
COLO基于虛擬機的熱遷移功能實現(xiàn), 在整個過程中,主虛擬機內(nèi)運行的服務,可以像普通熱遷移一樣持續(xù)保持運行,外部用戶對整個過程幾乎沒有感知。所以,能夠保證關(guān)鍵服務在極端情況下的高可用性,如電力意外中斷,網(wǎng)絡(luò)意外中斷等,這對用戶來說是至關(guān)重要的。
QUESTION 02
問:為什么F.T.這項技術(shù)在虛擬化中落地這么難?
答:因為FT/HA技術(shù)在虛擬化中涉及的技術(shù)點非常多, 需要保證主虛擬機和備份虛擬機的全部運行狀態(tài)和磁盤狀態(tài)的完全一致,或者從外部觀察者角度看起來上完全一致;以及如何在出現(xiàn)意外錯誤的時候,可以在用戶無感知的情況下切換運行中的服務。這里面具體會涉及到虛擬機熱遷移、磁盤遠程增量復制、虛擬機網(wǎng)絡(luò)包復制和路由等一系列較為復雜的技術(shù)問題。
QUESTION 03
問:過去一年里,ZStack產(chǎn)品團隊跟Intel團隊在將F.T.技術(shù)運用到私有云的過程中進行了緊密配合,你們具體分工是如何?
答:在過去的一年中,Intel COLO團隊和開源社區(qū)以及ZStack產(chǎn)品團隊,都致力于將COLO 產(chǎn)品化,將這個FT/HA技術(shù)真正落地,讓終端用戶真正可以方便的使用COLO。COLO是Intel眾多的開源項目之一, 在KVM/Xen上是目前最為成熟的FT/HA方案。而ZStack具有豐富的面對客戶需求的實踐經(jīng)驗,雙方合作的基礎(chǔ)非常雄厚。
在這個過程中,Intel主要負責upstream為基礎(chǔ)的社區(qū)開發(fā)和支持,而ZStack利用upstream的工作成果并結(jié)合自己的業(yè)務需求,再開發(fā)形成downstream產(chǎn)品,將COLO集成在ZStack產(chǎn)品中,從而便于技術(shù)真正落地。我們秉承開源合作精神,通過開源社區(qū)和開源協(xié)作模式,一直保持著非常緊密的合作關(guān)系。
比如,根據(jù)ZStack的需求和提議,我們開發(fā)了全新的COLO內(nèi)置的心跳模塊(Heart Beat)來自動監(jiān)控和處理系統(tǒng)的狀態(tài),使其可以與云廠商的控制面軟件保持實時連接,部署更加方便快捷。又比如,我們在和ZStack技術(shù)團隊深入交流后發(fā)現(xiàn),客戶需要能夠持續(xù)建立備機的能力,才可以真正保證用戶服務”永不宕機”。
QUESTION 04
問:ZStack首先將F.T.技術(shù)運用到私有云產(chǎn)品中,在國內(nèi)還是首次,您對這項技術(shù)在生產(chǎn)實踐中的期望。
答:ZStack作為國內(nèi)一個領(lǐng)先的私有云廠商,我們對ZStack公司的技術(shù)和產(chǎn)品非??春谩N覀円蚕嘈?,集成了COLO功能的ZStack產(chǎn)品,一定能在國內(nèi)私有云市場上獲得更大的成功,同時也能幫助中國的企業(yè)獲得更可靠、高效的普遍FT/HA技術(shù), 杜絕再發(fā)生服務宕機的事故。
QUESTION 05
問:未來Intel在F.T.方面繼續(xù)投入的方向及預期?
答:COLO FT/HA 既是Intel和ZStack的合作落地項目,更是一個開源項目, Intel會基于開源社區(qū)的反饋不斷進行升級和改造,基于開源社區(qū)不斷投入資源去優(yōu)化和改進COLO的各項功能, 另外我們也期望ZStack能夠帶來更多的市場和客戶對COLO的精準需求。共同打造成功一個由中國人發(fā)起和領(lǐng)導的主流云技術(shù)與云產(chǎn)品!
申請創(chuàng)業(yè)報道,分享創(chuàng)業(yè)好點子。點擊此處,共同探討創(chuàng)業(yè)新機遇!