周平 鐘方偉
摘要:該文主要闡述國(guó)內(nèi)外混合云發(fā)展情況;然后分析如何基于混合云構(gòu)建企業(yè)應(yīng)用。
關(guān)鍵詞:混合云;專有云;云服務(wù)器;云數(shù)據(jù)庫(kù);對(duì)象存儲(chǔ);負(fù)載均衡
中圖分類號(hào):TP393? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2019)21-0059-03
開(kāi)放科學(xué)(資源服務(wù))標(biāo)識(shí)碼(OSID):
Abstract: This paper mainly expounds the development and application of technology related to Hybrid Cloud in China and abroad, and how to build enterprise applications on HybridCloud.
Key word: Hybrid Cloud; Private Cloud; ECS; RDS; OSS; SLB
1 背景
混合云是未來(lái)的發(fā)展趨勢(shì)。未來(lái)的云計(jì)算一定是以應(yīng)用為中心。傳統(tǒng)開(kāi)發(fā)模式是全模式?;谠破脚_(tái)的開(kāi)發(fā)模式,能使企業(yè)只需要專注于業(yè)務(wù)和應(yīng)用開(kāi)發(fā)本身, IaaS解決資源快速創(chuàng)建,PaaS解決noOps運(yùn)維問(wèn)題,提升開(kāi)發(fā)和交付速度。
2 混合云現(xiàn)狀
2017年6月,Nutanix 2017年NEXT大會(huì)上,谷歌宣布和Nutanix達(dá)成戰(zhàn)略合作關(guān)系,雙方將共同布局混合云市場(chǎng)。隨后,谷歌云宣布推出全新一代私有云平臺(tái),旨在為企業(yè)更好地部署混合云環(huán)境。
2017年7月,微軟Inspire全球合作伙伴大會(huì)上,正式發(fā)布混合云應(yīng)用服務(wù)Azure Stack。
2017年8月,在VMworld 2017大會(huì)上,亞馬遜AWS與VMware發(fā)布VMware Cloud on AWS,將為企業(yè)充分利用混合云環(huán)境創(chuàng)造了新的條件。
2017年8月,公有云與Zstack達(dá)成混合云戰(zhàn)略合作,提供無(wú)縫連接的混合云服務(wù)。
Gartner2017年全球IaaS魔力象限四強(qiáng)云服務(wù)商的混合云戰(zhàn)略都已塵埃落定。但在Gartner2018年基礎(chǔ)設(shè)施即服務(wù)魔力象限中,Gartner大幅縮小了這個(gè)領(lǐng)域,只剩下六家供應(yīng)商:AWS、微軟、谷歌、公有云、Oracle和IBM。
Gartner預(yù)測(cè),到2020年,90%的組織將利用混合云管理基礎(chǔ)設(shè)施。
3 混合云架構(gòu)
基于企業(yè)專有云平臺(tái)、公有云平臺(tái)構(gòu)建企業(yè)業(yè)務(wù)中臺(tái),提升業(yè)務(wù)創(chuàng)新和快速響應(yīng)能力。
3.1 物理架構(gòu)
通過(guò)物理專線構(gòu)建本地—遠(yuǎn)程互聯(lián)網(wǎng)絡(luò)(如下圖所示),從而連通本地?cái)?shù)據(jù)中心和公有云公共云。
基于互聯(lián)網(wǎng)實(shí)現(xiàn)IPsec隧道和高速通道(Express Connect)連接本地專有云和公有云公共云,使得“本地—遠(yuǎn)程”在三層網(wǎng)絡(luò)可達(dá)下互訪。
3.2 架構(gòu)原則
應(yīng)用架構(gòu)設(shè)計(jì)需遵循最基礎(chǔ)的概念,選擇適合企業(yè)自身、業(yè)務(wù)需求的架構(gòu)進(jìn)行設(shè)計(jì)。
1)分布式部署
應(yīng)用與數(shù)據(jù)庫(kù)獨(dú)立部署。或系統(tǒng)中的多個(gè)模塊部署在不同服務(wù)器上(如微應(yīng)用),或兩個(gè)相同功能的應(yīng)用分別部署在不同服務(wù)器上(如滿足高并發(fā))。
2)高可用
系統(tǒng)中部分節(jié)點(diǎn)失效時(shí),其他節(jié)點(diǎn)能夠接替它繼續(xù)提供服務(wù)。
3)集群
一個(gè)特定領(lǐng)域的軟件部署在多臺(tái)服務(wù)器上并作為一個(gè)整體提供一類服務(wù)。在常見(jiàn)的集群中,客戶端能夠連接任意一個(gè)節(jié)點(diǎn)獲得服務(wù),并且當(dāng)集群中一個(gè)節(jié)點(diǎn)掉線時(shí),其他節(jié)點(diǎn)能夠自動(dòng)切換繼續(xù)提供服務(wù)。如Zookeeper中的Master和Slave分別部署在多臺(tái)服務(wù)器上,共同組成一個(gè)整體提供集中配置服務(wù)。
4)負(fù)載均衡
請(qǐng)求發(fā)送到系統(tǒng)時(shí),通過(guò)某些方式把請(qǐng)求均勻分發(fā)到多個(gè)節(jié)點(diǎn)上,使系統(tǒng)中每個(gè)節(jié)點(diǎn)能夠均勻的處理請(qǐng)求負(fù)載。
5)正向代理和反向代理
正向代理是代理服務(wù)器代替系統(tǒng)內(nèi)部來(lái)訪問(wèn)外部網(wǎng)絡(luò)的過(guò)程,反向代理是外部請(qǐng)求訪問(wèn)系統(tǒng)時(shí)通過(guò)代理服務(wù)器轉(zhuǎn)發(fā)到內(nèi)部服務(wù)器的過(guò)程。系統(tǒng)內(nèi)部要訪問(wèn)外部網(wǎng)絡(luò)時(shí),統(tǒng)一通過(guò)一個(gè)代理服務(wù)器把請(qǐng)求轉(zhuǎn)發(fā)出去,在外部網(wǎng)絡(luò)看來(lái)就是代理服務(wù)器發(fā)起的訪問(wèn),此時(shí)代理服務(wù)器實(shí)現(xiàn)的是正向代理。當(dāng)外部請(qǐng)求進(jìn)入系統(tǒng)時(shí),代理服務(wù)器把該請(qǐng)求轉(zhuǎn)發(fā)到系統(tǒng)中的某臺(tái)服務(wù)器上,對(duì)外部請(qǐng)求來(lái)說(shuō),與之交互的只有代理服務(wù)器,此時(shí)代理服務(wù)器實(shí)現(xiàn)的是反向代理。
3.3 應(yīng)用架構(gòu)
在應(yīng)用服務(wù)器上分別部署Tomcat,使用反向代理軟件(Nginx)把請(qǐng)求均勻分發(fā)到每個(gè)Tomcat中。此處假設(shè)Tomcat最多支持100個(gè)并發(fā),Nginx最多支持50000個(gè)并發(fā),那么理論上Nginx把請(qǐng)求分發(fā)到500個(gè)Tomcat上,就能抗住50000個(gè)并發(fā)。其中涉及的技術(shù)包括:Nginx、HAProxy,兩者都是工作在網(wǎng)絡(luò)第七層的反向代理軟件,主要支持http協(xié)議,還會(huì)涉及session共享、文件上傳下載的問(wèn)題。
業(yè)務(wù)層面,數(shù)據(jù)庫(kù)按業(yè)務(wù)分庫(kù),把不同業(yè)務(wù)的數(shù)據(jù)保存到不同的數(shù)據(jù)庫(kù)中,使業(yè)務(wù)之間的資源競(jìng)爭(zhēng)降低。
數(shù)據(jù)訪問(wèn)層面,把數(shù)據(jù)庫(kù)劃分為讀庫(kù)和寫庫(kù),讀庫(kù)可以有多個(gè),通過(guò)同步機(jī)制把寫庫(kù)的數(shù)據(jù)同步到讀庫(kù)。對(duì)于需要查詢最新寫入數(shù)據(jù)場(chǎng)景,可通過(guò)緩存中處理,通過(guò)緩存獲得最新數(shù)據(jù)。其中涉及的技術(shù)包括:Mycat,它是數(shù)據(jù)庫(kù)中間件,可通過(guò)它來(lái)組織數(shù)據(jù)庫(kù)的分離讀寫和分庫(kù)分表,客戶端通過(guò)它來(lái)訪問(wèn)下層數(shù)據(jù)庫(kù),還會(huì)涉及數(shù)據(jù)同步,數(shù)據(jù)一致性的問(wèn)題。
因此基于以上架構(gòu)設(shè)計(jì)因素,考慮實(shí)際業(yè)務(wù)需求,公有云提供ECS,部署訪問(wèn)portal,通過(guò)nginx做并發(fā)訪問(wèn)分流;通過(guò)公有云VPN通道,以IPSec隧道方式打通公有云VPC網(wǎng)絡(luò)與專有云VPC網(wǎng)絡(luò)。專有云提供云路由、ECS、RDS、OSS。云路由打通專有云VPC與公有云VPC,并提供負(fù)載均衡功能。ECS部署應(yīng)用,云數(shù)據(jù)庫(kù)RDS提供高可用云數(shù)據(jù)庫(kù)RDS。是一款PaaS層的企業(yè)數(shù)據(jù)庫(kù)云平臺(tái),支持線下機(jī)房自建數(shù)據(jù)庫(kù)、公有云RDS,混合云數(shù)據(jù)庫(kù)的統(tǒng)一管控,支持MySQL,Oracle,Redis,PPAS等數(shù)據(jù)庫(kù)全生命周期管控。滿足主備架構(gòu)、讀寫分離、同城容災(zāi)等的高可用需求,通過(guò)任務(wù)管理、監(jiān)控告警、性能分析等實(shí)現(xiàn)數(shù)據(jù)庫(kù)自動(dòng)化運(yùn)維。
面向?qū)ο蟠鎯?chǔ)服務(wù)OSS。提供多種數(shù)據(jù)處理能力,包括圖片處理、視頻截幀、文檔預(yù)覽、圖片場(chǎng)景識(shí)別、人臉識(shí)別、SQL就地查詢等,并無(wú)縫對(duì)接Hadoop生態(tài)以及阿里云函數(shù)計(jì)算、EMR、數(shù)據(jù)湖、批處理、大數(shù)據(jù)、關(guān)系型數(shù)據(jù)庫(kù)等產(chǎn)品,使用RESTful API 可以在任何位置存儲(chǔ)和訪問(wèn),容量和處理能力彈性擴(kuò)展,支持多種存儲(chǔ)類型。滿足企業(yè)多元化數(shù)據(jù)分析與管理的需求。
4 總結(jié)
在實(shí)際應(yīng)用場(chǎng)景中,需要結(jié)合實(shí)際需求和約束條件,遵循架構(gòu)原則,選擇適合的實(shí)現(xiàn)技術(shù),再開(kāi)展架構(gòu)設(shè)計(jì)。對(duì)于業(yè)務(wù)功能相對(duì)單一且性能指標(biāo)明確的系統(tǒng),架構(gòu)設(shè)計(jì)到能夠支持系統(tǒng)的性能指標(biāo)要求就足夠了,但要留有擴(kuò)展架構(gòu)的接口以便后續(xù)的系統(tǒng)集成。對(duì)于承載業(yè)務(wù)不斷發(fā)展的系統(tǒng),如電商平臺(tái),需要重復(fù)考慮下一階段用戶量和性能指標(biāo)等要求,結(jié)合業(yè)務(wù)的增長(zhǎng)不斷的迭代升級(jí)架構(gòu),以支持更高的并發(fā)和更豐富的業(yè)務(wù)。
沒(méi)有完美的架構(gòu),只有適合的架構(gòu)。
參考文獻(xiàn):
[1] 基于混合云的檔案管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D]. 北京: 中國(guó)科學(xué)院大學(xué): 工程管理與信息技術(shù)學(xué)院, 2016.
[2] 杜勸勸, 王博丞, 劉勝娟. 基于混合云的視頻直播系統(tǒng)構(gòu)建與應(yīng)用[J]. 中國(guó)有線電視, 2018, 394(5): 74-76.
[3] 混合云存儲(chǔ)架構(gòu)的研究與設(shè)計(jì)[D]. 北京: 北京郵電大學(xué), 2015.
[4] 李峰, 忻展紅. 基于混合云計(jì)算模式的數(shù)字內(nèi)容分發(fā)平臺(tái)時(shí)延性能研究[J]. 信息通信, 2012(5): 24-25.
【通聯(lián)編輯:謝媛媛】