華為云應(yīng)用管理與運(yùn)維平臺(tái)ServiceStage負(fù)責(zé)人進(jìn)行分享
三大難題阻礙傳統(tǒng)政企上云,微服務(wù)架構(gòu)應(yīng)運(yùn)而生
目前,政企上云面臨著三個(gè)大難題。首先,早期的應(yīng)用開(kāi)發(fā)都由不同供應(yīng)商開(kāi)發(fā),逐漸形成一個(gè)個(gè)應(yīng)用煙囪和數(shù)據(jù)孤島。隨著業(yè)務(wù)發(fā)展擴(kuò)大,對(duì)企業(yè)CTO來(lái)說(shuō),傳統(tǒng)的研發(fā)受限于流程拉通,研發(fā)效率低下,以年或月為周期更新版本,迭代速度無(wú)法滿(mǎn)足需求。對(duì)于企業(yè)COO來(lái)說(shuō),各自獨(dú)立的系統(tǒng)導(dǎo)致無(wú)法從全局角度了解業(yè)務(wù)整體運(yùn)轉(zhuǎn)的狀況,分散在各個(gè)子系統(tǒng)的數(shù)據(jù)無(wú)法變現(xiàn)。
其次,如今更多的應(yīng)用呈現(xiàn)出互聯(lián)網(wǎng)化的交互模式,早期的單體或SOA架構(gòu)在流量突發(fā)高峰時(shí)段并不能及時(shí)調(diào)整,不能適應(yīng)互聯(lián)網(wǎng)流量新模式。
最后,云化轉(zhuǎn)型往往伴隨著分布式系統(tǒng)的使用,對(duì)運(yùn)維工作提出新的挑戰(zhàn),傳統(tǒng)的人工運(yùn)維已經(jīng)無(wú)法滿(mǎn)足要求。
在云上信息時(shí)代,流量不可預(yù)知,服務(wù)系統(tǒng)承擔(dān)的壓力越來(lái)越大,企業(yè)、ISV對(duì)系統(tǒng)的要求越來(lái)越嚴(yán)格,業(yè)務(wù)的快速變革與創(chuàng)新對(duì)系統(tǒng)的性能、可靠性、安全性都提出了更高的要求,微服務(wù)應(yīng)運(yùn)而生,微服務(wù)架構(gòu)成為這個(gè)背景下的業(yè)務(wù)設(shè)計(jì)解決方案之一。
微服務(wù)架構(gòu)按照功能解耦服務(wù),實(shí)現(xiàn)天級(jí)、小時(shí)級(jí)特性上線(xiàn)
? 微服務(wù)強(qiáng)調(diào)模塊化結(jié)構(gòu),邊界更清晰,通過(guò)Rest接口調(diào)用,對(duì)大型系統(tǒng),大型團(tuán)隊(duì)非常重要;
? 各微服務(wù)獨(dú)立自治,避免牽一發(fā)而動(dòng)全身;支持獨(dú)立部署,簡(jiǎn)單服務(wù)更易部署,支持devops服務(wù)快速上線(xiàn);
? 允許技術(shù)多樣性,支持多種編程語(yǔ)言、開(kāi)發(fā)框架和數(shù)據(jù)存儲(chǔ)技術(shù)。
然而這對(duì)于使用新技術(shù)的企業(yè)來(lái)說(shuō),具有新的挑戰(zhàn):
? 分布式編程問(wèn)題:拆分成若干個(gè)微服務(wù)之后,新增成本和技術(shù)門(mén)檻;
? 業(yè)務(wù)一致性問(wèn)題:微服務(wù)化后,一個(gè)業(yè)務(wù)流程常常多個(gè)微服務(wù),多個(gè)數(shù)據(jù)庫(kù),需要引入分布式事務(wù)等技術(shù),導(dǎo)致業(yè)務(wù)系統(tǒng)復(fù)雜化;
? 運(yùn)維問(wèn)題:拆成多個(gè)微服務(wù)之后從理論上來(lái)說(shuō)意味著故障點(diǎn)是增加的,如何在運(yùn)行狀態(tài)管理和運(yùn)維是新的問(wèn)題域。
華為云打造一站式微服務(wù)解決方案
華為云應(yīng)用管理與運(yùn)維平臺(tái)ServiceStage出現(xiàn)的最早原因,就是為了解決業(yè)務(wù)微服務(wù)化后帶來(lái)的各種非業(yè)務(wù)相關(guān)問(wèn)題,例如上面說(shuō)到的這些挑戰(zhàn),華為云應(yīng)用管理與運(yùn)維平臺(tái)ServiceStage在華為公司內(nèi)外部業(yè)務(wù)需求中不斷演變實(shí)踐,形成了以應(yīng)用為中心,提供微服務(wù)、Web、移動(dòng)和函數(shù)等應(yīng)用的一站式微服務(wù)解決方案,幫助企業(yè)加速業(yè)務(wù)創(chuàng)新,包含應(yīng)用(開(kāi)發(fā))解決方案和DevOps解決方案,應(yīng)用(開(kāi)發(fā))解決方案聚焦于公共功能和運(yùn)用環(huán)境、基礎(chǔ)設(shè)施等應(yīng)用運(yùn)行相關(guān)內(nèi)容,DevOps解決方案聚焦于應(yīng)用生命周期管理相關(guān)內(nèi)容。
華為云ServiceStage三個(gè)核心功能重點(diǎn)支持微服務(wù)DevOps:一鍵生成持續(xù)交付環(huán)境;提供多語(yǔ)言支持;提供多源碼倉(cāng)庫(kù)支持。
圍繞三個(gè)核心功能,華為云微服務(wù)框架打造五大特性:
1、統(tǒng)一接口:Contract Frist能力和管控手段,支持基于Swagger的API管理。
? 架構(gòu)師根據(jù)業(yè)務(wù)需求來(lái)編寫(xiě)接口契約(使用標(biāo)準(zhǔn)的OpenAPI規(guī)范),完成后提交技術(shù)委員會(huì)審批發(fā)布。
? 開(kāi)發(fā)人員根據(jù)契約生產(chǎn)框架代碼,進(jìn)行業(yè)務(wù)邏輯開(kāi)發(fā),如果修改接口和契約不匹配,那么發(fā)布到服務(wù)中心的時(shí)候會(huì)失敗。
? 對(duì)于不需要Contract First能力的人員,華為云也保留了Code First能力,可以繼續(xù)使用Code First保留開(kāi)發(fā)習(xí)慣,華為云還提供了從代碼自動(dòng)導(dǎo)出契約的能力。
? 微服務(wù)框架核心解決服務(wù)接口的管控問(wèn)題,讓業(yè)務(wù)開(kāi)發(fā)可控可管,提高服務(wù)開(kāi)發(fā)聯(lián)調(diào)效率,減少服務(wù)出錯(cuò)概率。
2、支持多語(yǔ)言:微服務(wù)支持Java、Go、.Net、Node.js等程序語(yǔ)言
由于多個(gè)微服務(wù)可能會(huì)選擇不同的語(yǔ)言開(kāi)發(fā),相應(yīng)的流水線(xiàn)、構(gòu)建、部署等能力都需要同步支持多種程序語(yǔ)言。
3、技術(shù)開(kāi)放: 多框架支持,支持ServiceComb、Spring Cloud、Service Mesh,在多語(yǔ)言和技術(shù)開(kāi)放方面,華為云Servicestage重點(diǎn)通過(guò)網(wǎng)格能力來(lái)對(duì)非JAVA和GO語(yǔ)言的服務(wù)進(jìn)行統(tǒng)一治理。
4、可視化管理: 支持可視化服務(wù)路由、熔斷容錯(cuò)等
? 通用的治理能力沉淀到框架,開(kāi)發(fā)人員只需聚焦業(yè)務(wù)。
? 提供GUI一站式治理控制臺(tái),動(dòng)態(tài)可視化治理,簡(jiǎn)單易用。
? 運(yùn)行狀態(tài)實(shí)時(shí)監(jiān)控,配置下發(fā)實(shí)時(shí)生效;治理類(lèi)別豐富,可以根據(jù)現(xiàn)實(shí)情況實(shí)時(shí)選擇合適的治理策略,最大限度保證系統(tǒng)的可靠性。
5、安全保障:充分安全能力設(shè)計(jì)、安全級(jí)別高
? 安全認(rèn)證,支持黑白名單,RSA認(rèn)證等。
? 安全運(yùn)行,支持隔離艙、動(dòng)態(tài)治理、故障注入等能力,最大限度保證服務(wù)的安全運(yùn)行。
? 安全隔離,同時(shí)支持邏輯多租和物理多租兩種模式,其中物理多租提供最級(jí)別的物理隔離能力。
為開(kāi)源生態(tài)助力,做開(kāi)放的應(yīng)用平臺(tái)
微服務(wù)框架根本上就是屬于業(yè)務(wù)代碼的一部分,和業(yè)務(wù)代碼緊緊耦合在一起,各大公司最擔(dān)心的就是被綁定,所以微服務(wù)框架必須要做到中立、開(kāi)放、標(biāo)準(zhǔn)、無(wú)商業(yè)Lock-in等要求。華為發(fā)起的ServiceComb微服務(wù)框架項(xiàng)目已經(jīng)順利的進(jìn)入了Apache社區(qū),經(jīng)過(guò)1年多的發(fā)展,已經(jīng)畢業(yè)成為Apache社區(qū)的首個(gè)頂級(jí)微服務(wù)項(xiàng)目。2019年8月,信通院發(fā)布業(yè)界首個(gè)微服務(wù)行業(yè)標(biāo)準(zhǔn),華為云作為核心成員參與首個(gè)微服務(wù)行業(yè)標(biāo)準(zhǔn)的制定,ServiceComb是標(biāo)準(zhǔn)的核心參考框架。
華為云提供的成熟的分布式事務(wù)解決方案,在社區(qū)提供ServiceComb Pack項(xiàng)目,聚焦Saga和TCC;商業(yè)上除了Saga和TCC外,后續(xù)還會(huì)提供非侵入式的事務(wù)解決方案。
? 支持SpringCloud,istio等開(kāi)源框架,保證開(kāi)放性;
? 是應(yīng)用管理平臺(tái),具備全流程的通用管理能力;
? 除提供服務(wù)外,ServiceStage還提供部分線(xiàn)下的工具以及全面的擴(kuò)展能力;
? 通過(guò)提供通用的工具和組件市場(chǎng),共建開(kāi)發(fā)者生態(tài)和商業(yè)生態(tài);
? 服務(wù)咨詢(xún),針對(duì)傳統(tǒng)企業(yè),用已有的成功經(jīng)驗(yàn)幫助他們更快的進(jìn)行微服務(wù)改造。
華為云應(yīng)用管理與運(yùn)維平臺(tái)ServiceStage當(dāng)前已在多個(gè)領(lǐng)域廣泛應(yīng)用,除了華為內(nèi)部的消費(fèi)者、華為云、5G等業(yè)務(wù)外,還有陜西財(cái)政、同濟(jì)大學(xué)、軟通動(dòng)力等多家政企,并且已經(jīng)在公有云上開(kāi)放,為當(dāng)下業(yè)務(wù)高速發(fā)展、迫切轉(zhuǎn)型、需要輕裝上云的企業(yè)提供全流程服務(wù)。