《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 設(shè)計應(yīng)用 > 面向云原生全鏈路灰度發(fā)布技術(shù)研究與實(shí)踐
面向云原生全鏈路灰度發(fā)布技術(shù)研究與實(shí)踐
2023年電子技術(shù)應(yīng)用第4期
劉軍1,2,李雄清1,2,孫瓊巍1,2,劉利3,李永1,2
(1.中國民航信息網(wǎng)絡(luò)股份有限公司,北京 101318;2.民航旅客服務(wù)智能化應(yīng)用技術(shù)重點(diǎn)實(shí)驗(yàn)室,北京 101318; 3.歐普杰科技(大連)有限公司,遼寧 大連 116000)
摘要: 為了解決云原生架構(gòu)下多版本多服務(wù)快速迭代相互影響問題,設(shè)計了面向云原生的全鏈路灰度發(fā)布技術(shù)方案。使用流量染色技術(shù),構(gòu)建從網(wǎng)關(guān)到全體后端業(yè)務(wù)服務(wù)的隔離環(huán)境,實(shí)現(xiàn)支持多版本多服務(wù)的灰度發(fā)布。設(shè)計靈活、豐富的灰度策略實(shí)現(xiàn)灰度發(fā)布的精細(xì)化控制。通過網(wǎng)關(guān)和被全體后端業(yè)務(wù)服務(wù)依賴的sidecar模塊實(shí)現(xiàn)全鏈路灰度能力。工程實(shí)踐表明,該方案可以有效邏輯隔離環(huán)境,提供精細(xì)化控制和全鏈路能力,并且有效降低需求發(fā)布影響,提高線上發(fā)布效率。
中圖分類號:TP311.5
文獻(xiàn)標(biāo)志碼:A
DOI: 10.16157/j.issn.0258-7998.222982
中文引用格式: 劉軍,李雄清,孫瓊巍,等. 面向云原生全鏈路灰度發(fā)布技術(shù)研究與實(shí)踐[J]. 電子技術(shù)應(yīng)用,2023,49(4):73-77.
英文引用格式: Liu Jun,Li Xiongqing,Sun Qiongwei,et al. Research and practice full-link gray publishing technology for cloud native[J]. Application of Electronic Technique,2023,49(4):73-77.
Research and practice full-link gray publishing technology for cloud native
Liu Jun1,2,Li Xiongqing1,2,Sun Qiongwei1,2,Liu Li3,Li Yong1,2
(1.TravelSky Technology Limited, Beijing 101318, China;2.Key Laboratory of Intelligent Passenger Service of Civil Aviation, Beijing 101318, China;3.OpenJaw Technology (Dalian) Co., Ltd., Dalian 116000, China)
Abstract: In order to solve the problem of rapid iterative interaction between multiple versions and services under the cloud native architecture, a full-link grayscale publishing technology scheme for cloud native is designed. Using traffic dyeing technology, an isolated environment from the gateway to all back-end business services is constructed to achieve grayscale publishing supporting multiple versions and multiple services. Flexible and rich gray scale strategy is designed to realize precise control of gray scale publishing. Full-link grayscale publishing capability is implemented through gateways and sidecar module that are relied upon by all back-end business services. Engineering practice shows that this scheme can effectively isolate the environment logically, provide precise control and full link capability, and effectively reduce the impact of demand release and improve the efficiency of online release.
Key words : cloud native;full-link;grayscale publishing;dyeing technology;precise control

0 引言

隨著以容器、微服務(wù)、DevOps為代表的云原生架構(gòu)的不斷豐富和落地,各大企業(yè)業(yè)務(wù)服務(wù)云原生架構(gòu)轉(zhuǎn)型不斷推進(jìn),企業(yè)服務(wù)架構(gòu)和服務(wù)之間的依賴關(guān)系更加錯綜復(fù)雜。云原生架構(gòu)幫助企業(yè)實(shí)現(xiàn)云服務(wù)高可用、快速部署等能力,但是面對云原生架構(gòu)下多版本多服務(wù)的快速迭代,傳統(tǒng)灰度發(fā)布方案已經(jīng)不滿足需求。因此,對云原生架構(gòu)下的灰度發(fā)布能力也提出了新的挑戰(zhàn)。

傳統(tǒng)灰度發(fā)布方案的實(shí)現(xiàn)方式主要是在負(fù)載均衡器處實(shí)現(xiàn),如服務(wù)端負(fù)載均衡服務(wù)器Nginx或者客戶端負(fù)載均衡器Dubbo,最后通過人工手段控制灰度策略。但是在云原生架構(gòu)下現(xiàn)有的灰度發(fā)布模式越來越不滿足需求,主要挑戰(zhàn)有如下3點(diǎn):

(1)云原生架構(gòu)面臨多版本多服務(wù)快速迭代相互影響的挑戰(zhàn)。在云原生架構(gòu)線上灰度發(fā)布時難以實(shí)現(xiàn)需求范圍內(nèi)的單獨(dú)版本、服務(wù)驗(yàn)證,并且不影響其他版本服務(wù)。出現(xiàn)問題時難以在多版本多服務(wù)間快速準(zhǔn)確定位,導(dǎo)致發(fā)布過程中問題排查時間長、影響范圍大,最終導(dǎo)致發(fā)布速度慢。

(2)云原生架構(gòu)面臨灰度發(fā)布技術(shù)精細(xì)化控制的挑戰(zhàn),在云原生架構(gòu)線上灰度發(fā)布時不能像虛擬機(jī)或?qū)嶓w機(jī)發(fā)布時一樣,可以單獨(dú)控制某一臺機(jī)器的流量訪問。并且傳統(tǒng)的灰度發(fā)布技術(shù)在控制能力、配置靈活度上也不能滿足云原生架構(gòu)的快速發(fā)布、生效需求。

(3)全鏈路灰度發(fā)布是云原生架構(gòu)下的另一大挑戰(zhàn),各大企業(yè)在云原生轉(zhuǎn)型時,將單體服務(wù)進(jìn)行微服務(wù)拆分和分層,導(dǎo)致一個業(yè)務(wù)需求發(fā)布時需要多服務(wù)同時發(fā)布,此時在云原生架構(gòu)下,傳統(tǒng)灰度發(fā)布方案不支持所有發(fā)布服務(wù)的端到端詳細(xì)控制。同時通過人工維護(hù)負(fù)載均衡器上的灰度策略出現(xiàn)問題的概率大、效率低,無法有效支撐云原生架構(gòu)下業(yè)務(wù)服務(wù)的快速驗(yàn)證、發(fā)布。



本文詳細(xì)內(nèi)容請下載:http://theprogrammingfactory.com/resource/share/2000005286




作者信息:

劉軍1,2,李雄清1,2,孫瓊巍1,2,劉利3,李永1,2

(1.中國民航信息網(wǎng)絡(luò)股份有限公司,北京 101318;2.民航旅客服務(wù)智能化應(yīng)用技術(shù)重點(diǎn)實(shí)驗(yàn)室,北京 101318;
3.歐普杰科技(大連)有限公司,遼寧 大連 116000)


微信圖片_20210517164139.jpg

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。