隨著新基建提速換擋,必將帶動(dòng)基礎(chǔ)設(shè)施即服務(wù)的新一輪增長(zhǎng)。當(dāng)我們關(guān)注高光項(xiàng)目的同時(shí),不應(yīng)忽略傳統(tǒng)IT需求,傳統(tǒng)IT領(lǐng)域很多應(yīng)用上云面臨種種困難,如何讓他們?cè)谛禄ɡ顺碧崴?
比如在工業(yè)制造業(yè)、交通、能源電力等傳統(tǒng)行業(yè)的業(yè)務(wù)場(chǎng)景中,可用性永遠(yuǎn)是高頻詞匯,如何讓應(yīng)用主機(jī)在不同物理節(jié)點(diǎn)之間實(shí)現(xiàn)秒級(jí)切換?如何獲得可靠、高效的FT/HA技術(shù)讓用戶服務(wù)“永不宕機(jī)”?
在前一篇文章《邊緣計(jì)算體驗(yàn)之二:簡(jiǎn)單高可用ZStack Mini的巧妙設(shè)計(jì)》中,介紹了ZStack如何在2U機(jī)箱設(shè)計(jì)的ZStack Mini中實(shí)現(xiàn)了高可用(HA)。
當(dāng)監(jiān)測(cè)到物理節(jié)點(diǎn)故障無(wú)法為應(yīng)用服務(wù)器提供服務(wù)的時(shí)候,高可用就將應(yīng)用服務(wù)器遷移到正常運(yùn)行的物理節(jié)點(diǎn)上,保證業(yè)務(wù)的連續(xù)性,但是業(yè)務(wù)系統(tǒng)也會(huì)受到輕微影響,基于HA的高可用依舊有數(shù)分鐘的業(yè)務(wù)中斷。
這在有些場(chǎng)景下是不可接受的,比如一些場(chǎng)景需要秒級(jí)的切換,以保證業(yè)務(wù)的連續(xù)性。在本篇文章中,將介紹ZStack Mini 3.0中的核心功能——FT。
ZStack Mini 3.0——讓易用性更上一層樓
ZStack Mini 3.0是ZStack Mini產(chǎn)品家族的一次重大升級(jí),主要是軟件部分的升級(jí)。可以在保持ZStack Mini邊緣計(jì)算一體機(jī)硬件不變的情況下,將軟件版本從原來(lái)的2.0升級(jí)到最新的3.0,獲得更多對(duì)中小企業(yè)實(shí)際使用非常有幫助的功能。
ZStack Mini一體機(jī)升級(jí)到3.0后的管理中心界面,從左側(cè)邊欄可以看到,與2.0相比,多了“應(yīng)用中心”、“我的應(yīng)用”、“外接磁盤備份”等菜單,同時(shí)在上圖看不到的是在“存儲(chǔ)”中多了“FC-SAN存儲(chǔ)”的功能。
FC-SAN存儲(chǔ)功能,讓ZStack Mini可以外接FC-SAN存儲(chǔ)陣列,幫助企業(yè)更好地利用數(shù)據(jù)中心內(nèi)已有的FC-SAN存儲(chǔ),可以利舊,并有助于數(shù)據(jù)流通與整合。
在ZStack Mini邊緣計(jì)算一體機(jī)中安裝額外的FC-HBA卡,即可與數(shù)據(jù)中心內(nèi)的FC-SAN存儲(chǔ)進(jìn)行連接。上圖紅框中即為FC-HBA卡,正與外接FC-SAN存儲(chǔ)進(jìn)行數(shù)據(jù)整合
外接磁盤備份,顧名思義,就是通過(guò)將USB接口的移動(dòng)硬盤(或U盤)接入ZStack Mini平臺(tái),將ZStack Mini平臺(tái)中現(xiàn)有的數(shù)據(jù)備份到磁盤之中。
應(yīng)用中心,在E企研究院測(cè)試的ZStack Mini中集成了三個(gè)應(yīng)用模板,分別為MariaDB、LNMP和Tomcat,這是許多中小企業(yè)利用Apache開源軟件構(gòu)建網(wǎng)站的“三駕馬車”,可以說(shuō)是自建網(wǎng)站的最經(jīng)典的選擇。
在E企研究院使用的ZStack Mini中,集成了LNMP、MariaDB和Tomcat三個(gè)最常使用的應(yīng)用
如果利用虛機(jī)安裝這三個(gè)應(yīng)用,可能需要花費(fèi)數(shù)小時(shí),而且還極有可能出錯(cuò)?,F(xiàn)在ZStack Mini將這三個(gè)應(yīng)用軟件集成到“應(yīng)用中心”內(nèi),通過(guò)鼠標(biāo)點(diǎn)擊即可一鍵部署,并在數(shù)分鐘內(nèi)完成可用??梢哉f(shuō)極大地節(jié)省了用戶在安裝、部署和維護(hù)方面的難度。
通過(guò)這些功能加入,ZStack Mini邊緣計(jì)算一體機(jī)平臺(tái)不但具備已有的簡(jiǎn)單易用功能,同時(shí)也讓企業(yè)用戶在業(yè)務(wù)部署、后期維護(hù)上更簡(jiǎn)單。這也與ZStack Mini邊緣計(jì)算一體機(jī)的易用性特點(diǎn)是一脈相承的,產(chǎn)品的使用并不會(huì)因?yàn)樯?jí)而變得復(fù)雜。
接下來(lái),將介紹ZStack Mini 3.0中最重磅的功能——FT功能。
FT——讓可用性進(jìn)一步提高
在前一篇文章中,采用HA(High Availability,高可用)對(duì)ZStack Mini中的虛機(jī)進(jìn)行保護(hù)的話,業(yè)務(wù)依舊會(huì)有1分鐘左右的中斷,那么ZStack Mini 3.0中新加入的FT(Fault-Tolerance,容錯(cuò))功能則能夠做到真正意義的秒級(jí)切換,且不會(huì)對(duì)業(yè)務(wù)造成影響。
口說(shuō)無(wú)憑,眼見為實(shí),我們依舊用一段視頻來(lái)演示ZStack Mini 3.0中的FT功能。
在ZStack Mini邊緣計(jì)算一體機(jī)平臺(tái)中,E企研究院事先創(chuàng)建了一個(gè)目前最火熱的應(yīng)用之一——視頻直播。其由兩個(gè)虛機(jī)構(gòu)成:視頻推流服務(wù)器:其作用類似于我們智能手機(jī)的直播App,將手機(jī)攝像頭“看到”的圖像上傳到云端的服務(wù)器。稍微與直播不同的是,在演示中,E企研究院用一段視頻替代直播圖像,在視頻推流服務(wù)器中將一段視頻實(shí)時(shí)推流到在線編碼服務(wù)器。在線編碼服務(wù)器:手機(jī)中的直播App將圖像上傳到云端的編碼服務(wù)器,編碼服務(wù)器進(jìn)行編解碼,然后再推送到觀眾的手機(jī)或電腦端(接收端)。在演示中,則用演示用的筆記本電腦作為接收端。
首先,我們?cè)谝曨l推流服務(wù)器中將一段視頻流推送到在線編碼器,然后用筆記本電腦接收經(jīng)過(guò)在線編碼服務(wù)器處理的音視頻信號(hào)。視頻推流服務(wù)器——在線編碼服務(wù)器——接收端,構(gòu)成了一個(gè)最簡(jiǎn)化的視頻直播應(yīng)用環(huán)境。其中,在線編碼服務(wù)器是企業(yè)為最終用戶提供視頻直播服務(wù)的核心,一旦其出現(xiàn)故障,無(wú)法正常運(yùn)行,整個(gè)直播服務(wù)將會(huì)中斷。
在視頻中,在線編碼服務(wù)器位于IP地址為“172.24.100.3”的物理主機(jī)之上,并開啟了FT保護(hù)模式。同時(shí)在ZStack Mini管理平臺(tái)中可以看到,在線編碼服務(wù)器會(huì)有一臺(tái)備用的云主機(jī),在“FT輔助云主機(jī)信息”面板可以看到,其備用云主機(jī)正常運(yùn)行在IP地址為172.24.100.4的物理主機(jī)之上。
在線編碼服務(wù)器詳情,本身位于172.24.100.3物理主機(jī)之上,使用FT保護(hù)模式,其備用云主機(jī)位于172.24.100.4物理主機(jī)之上
在視頻直播正常運(yùn)行過(guò)程中,E企研究院將在線編碼服務(wù)器所在的物理主機(jī)(即172.24.100.3)進(jìn)入維護(hù)模式,以模擬這臺(tái)物理主機(jī)出現(xiàn)故障,需要停機(jī)維護(hù),暫時(shí)無(wú)法提供服務(wù)。
ZStack Mini邊緣計(jì)算一體機(jī)中,IP地址為172.24.100.3的物理主機(jī)進(jìn)入維護(hù)模式
在物理主機(jī)進(jìn)入維護(hù)模式時(shí),切換到筆記本電腦接收端,音視頻信號(hào)一切正常,并沒(méi)有出現(xiàn)停頓。再看在線編碼服務(wù)器的狀態(tài),虛機(jī)已經(jīng)切換到172.24.100.4物理主機(jī)之上,因?yàn)槠湓瓉?lái)所在的物理主機(jī)進(jìn)入維護(hù)模式(172.24.100.3)。
ZStack Mini邊緣計(jì)算一體機(jī)最小二節(jié)點(diǎn)部署,因?yàn)槠渲幸慌_(tái)物理主機(jī)進(jìn)入維護(hù)模式,原本位于172.24.100.3的在線編碼服務(wù)器在第一時(shí)間就切換到了172.24.100.4物理主機(jī)之上,視頻直播業(yè)務(wù)正常運(yùn)行。但是通過(guò)上圖可見,在線編碼服務(wù)器已經(jīng)不再處于保護(hù)狀態(tài),因?yàn)槠湟呀?jīng)沒(méi)有了備用的云主機(jī),正處于“單工模式”,一旦其所在的物理主機(jī)也需要停機(jī),將影響正在運(yùn)行的直播業(yè)務(wù)。因此還是要盡快將故障的物理主機(jī)修復(fù)或替換,重新上線作為備份節(jié)點(diǎn)。
在這個(gè)測(cè)試驗(yàn)證場(chǎng)景中,E企研究院進(jìn)入到“一體機(jī)”界面中,將處于“維護(hù)模式”的172.24.100.3這臺(tái)物理主機(jī)啟用,表示故障修復(fù),重新上線。
在172.24.100.3這臺(tái)物理主機(jī)恢復(fù)上線之后,在線編碼服務(wù)器的FT功能自動(dòng)檢測(cè)到新主機(jī)加入,將再次恢復(fù)FT保護(hù)級(jí)別;但是,在172.24.100.3這臺(tái)物理主機(jī)進(jìn)入維護(hù)模式這段時(shí)間,視頻直播應(yīng)用一直在正常運(yùn)行,不斷產(chǎn)生新的數(shù)據(jù),同時(shí)內(nèi)存狀態(tài)也在實(shí)時(shí)變化。
這意味著要恢復(fù)在線編碼服務(wù)器的“FT保護(hù)級(jí)別”需要進(jìn)行數(shù)據(jù)同步,不僅是存儲(chǔ)的數(shù)據(jù)同步,還包括內(nèi)存狀態(tài)的同步;同步數(shù)據(jù)與內(nèi)存狀態(tài),在以往的高可用方案中都是一個(gè)非常困難的問(wèn)題,因?yàn)橐坏┏鲥e(cuò),就會(huì)造成數(shù)據(jù)不一致,甚至可能影響到正常運(yùn)行的業(yè)務(wù)。
但是在ZStack Mini邊緣計(jì)算一體機(jī)中,在經(jīng)過(guò)數(shù)分鐘的同步之后,在線編碼服務(wù)器重新達(dá)成FT保護(hù),視頻直播業(yè)務(wù)并沒(méi)有受到影響。
如上圖所示,在線編碼服務(wù)器重新達(dá)成FT保護(hù)級(jí)別,其所在物理主機(jī)的IP地址為172.24.100.4,而原來(lái)的172.24.100.3的物理主機(jī)則承載備用云主機(jī),與測(cè)試之前的狀態(tài)相比,主、備進(jìn)行了切換,但業(yè)務(wù)依舊正常運(yùn)行。
從ZStack Mini 2.0中HA切換需要數(shù)分鐘業(yè)務(wù)停頓——這也是目前大多數(shù)虛機(jī)遷移或故障切換所需要的時(shí)間,到3.0中FT保護(hù)縮短到秒級(jí),切換時(shí)間極大地被縮短,但并沒(méi)有引入新的硬件,也沒(méi)有提升使用難度,那么FT究竟是怎樣的技術(shù)?
FT技術(shù)背后的原理
傳統(tǒng)的基于SAN存儲(chǔ)的數(shù)據(jù)保護(hù)通常要么對(duì)業(yè)務(wù)造成短暫影響,要么需要額外解決方案介入,不在本文討論范圍內(nèi)。在基于虛擬化技術(shù)的云環(huán)境中,虛機(jī)遷移或虛機(jī)故障切換通常都需要一定的時(shí)間,就如同ZStack Mini 2.0中的HA技術(shù)一樣,本質(zhì)上,這都采用的相同技術(shù)。
要保證部署虛機(jī)上的業(yè)務(wù)在遷移或切換時(shí)盡量不受影響,其最重要的一環(huán)就是數(shù)據(jù)同步——包括存儲(chǔ)數(shù)據(jù)同步和內(nèi)存狀態(tài)同步。因?yàn)閼?yīng)用程序不間斷運(yùn)行,不停產(chǎn)生數(shù)據(jù)并改變內(nèi)存狀態(tài),這就給數(shù)據(jù)同步并保持?jǐn)?shù)據(jù)一致性帶來(lái)極大的挑戰(zhàn)。目前虛機(jī)間主流的數(shù)據(jù)同步方式采用鎖步(Lock-stepping)或連續(xù)檢查點(diǎn)(Continuous Checkpoint)。
但這兩種數(shù)據(jù)同步方式各有各的不足,比如鎖步會(huì)導(dǎo)致復(fù)制開銷過(guò)多,因?yàn)樘摂M機(jī)中的內(nèi)存訪問(wèn)是不確定的;而連續(xù)檢查點(diǎn)同樣會(huì)導(dǎo)致過(guò)多的復(fù)制,同時(shí)還會(huì)帶來(lái)額外的網(wǎng)絡(luò)延遲。
ZStack通過(guò)與英特爾的合作,延伸出一種新的數(shù)據(jù)同步方式——粗粒級(jí)鎖步(COarse-grain LOck-stepping,簡(jiǎn)稱COLO),來(lái)實(shí)現(xiàn)FT功能所需的快速切換。其通過(guò)比較主虛機(jī)(Primary VM,PVM)與備用虛機(jī)(Secondary VM,SVM)的傳輸數(shù)據(jù)包來(lái)進(jìn)行數(shù)據(jù)同步。
粗粒級(jí)鎖步(COLO)架構(gòu)示意圖,其分別通過(guò)快復(fù)制進(jìn)程與COLO代理,以及COLO Frame進(jìn)程來(lái)實(shí)現(xiàn)數(shù)據(jù)與內(nèi)存狀態(tài)在PVM與SVM之間的同步
因?yàn)樯婕暗酱鎯?chǔ)數(shù)據(jù)和內(nèi)存狀態(tài)的同步,所以其由不同軟件模塊(并行)實(shí)現(xiàn)。比如存儲(chǔ)數(shù)據(jù)同步如下所示:
COLO中的讀、寫流程示意圖
在存儲(chǔ)數(shù)據(jù)讀寫方面:
當(dāng)應(yīng)用發(fā)起讀請(qǐng)求,不僅PVM直接從自身存儲(chǔ)進(jìn)行數(shù)據(jù)讀取,SVM也會(huì)進(jìn)行相應(yīng)的讀取操作,只是正常狀態(tài)下并不傳輸給應(yīng)用。
當(dāng)應(yīng)用發(fā)起寫請(qǐng)求,PVM將寫請(qǐng)求發(fā)送給SVM,同時(shí)將數(shù)據(jù)寫入自身存儲(chǔ);而SVM接收到寫請(qǐng)求后,會(huì)將原始數(shù)據(jù)加載到SVM Cache并進(jìn)行寫入(Copy O n Write)。
在內(nèi)存狀態(tài)同步方面,COLO采用了一種巧妙的同步方式,如下圖所示:
COLO技術(shù)中的內(nèi)存狀態(tài)同步示意圖
如上圖所示,主節(jié)點(diǎn)會(huì)對(duì)PVM的臟頁(yè)(Dirty Pages)進(jìn)行跟蹤,并將其發(fā)送到備用節(jié)點(diǎn)。備用節(jié)點(diǎn)再收到PVM的臟頁(yè)之后,將其保存在PVM內(nèi)存緩存(Memory Cache)中,然后在檢查點(diǎn),將PVM內(nèi)存緩存中的狀態(tài)更新到SVM內(nèi)存之中。
在之前的COLO技術(shù)中,COLO Proxy通常采用內(nèi)核方案(Kernel Scheme),功能更強(qiáng)但不夠靈活,但最新COLO技術(shù)中,基于目前更為流行的用戶空間方案(Userspace scheme)的Proxy進(jìn)程則具有更佳的靈活性。
通過(guò)對(duì)FT功能背后的技術(shù)解析,我們可以看到ZStack不僅關(guān)注用戶的使用體驗(yàn),盡最大努力將ZStack Mini的使用做到最簡(jiǎn)化,還深入用戶實(shí)際業(yè)務(wù)需求,將ZStack Mini平臺(tái)與應(yīng)用連通,提供更加簡(jiǎn)化的使用體驗(yàn)。
同時(shí),ZStack也沒(méi)放棄對(duì)創(chuàng)新技術(shù)的追求,通過(guò)了解用戶痛點(diǎn)與難題,進(jìn)行針對(duì)性的開發(fā)與合作,用整個(gè)生態(tài)的力量去改變產(chǎn)品體驗(yàn),并將最新的技術(shù)融入產(chǎn)品中,傳遞給用戶,幫助用戶在最快時(shí)間享受到創(chuàng)新技術(shù)帶來(lái)的便利。
9月15日Z(yǔ)Stack Mini邊緣計(jì)算一體機(jī)將在中國(guó)國(guó)際工業(yè)博覽會(huì)上亮相,有關(guān)FT新功能的更多詳細(xì)內(nèi)容,請(qǐng)掃描二維碼獲悉。
(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來(lái)自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對(duì)有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。
任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁(yè)或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書面權(quán)利通知或不實(shí)情況說(shuō)明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。 )