河北移動(dòng)信息技術(shù)中心和華為團(tuán)隊(duì)在2022年正式啟動(dòng)BSS業(yè)務(wù)支撐領(lǐng)域的數(shù)智化轉(zhuǎn)型,作為核心能力之一的灰度發(fā)布正式應(yīng)用于生產(chǎn),版本升級(jí)"更穩(wěn)定、更迅速、更靈活"。
上線周期、架構(gòu)復(fù)雜度、市場(chǎng)響應(yīng)速度等要求越來(lái)越高,BSS面臨眾多挑戰(zhàn)
BSS支撐系統(tǒng)承載河北移動(dòng)全部業(yè)務(wù)的支撐和運(yùn)營(yíng),隨著移動(dòng)業(yè)務(wù)快速蓬勃發(fā)展,業(yè)務(wù)場(chǎng)景豐富多樣,客戶體驗(yàn)及服務(wù)范圍對(duì)系統(tǒng)支撐提出更高要求。需求更新加速、版本發(fā)布頻繁,在保障客戶新業(yè)務(wù)體驗(yàn)、服務(wù)不中斷的前提下,仍面臨三大挑戰(zhàn):
新業(yè)務(wù)需求日益增多,上線周期越來(lái)越短(月周天),對(duì)業(yè)務(wù)支撐系統(tǒng)的穩(wěn)定性、支撐效率提出了更高的要求;
業(yè)務(wù)支撐系統(tǒng)逐步云化、微服務(wù)化后,規(guī)模更加龐大(1000+服務(wù)、30+核心應(yīng)用),系統(tǒng)升級(jí)導(dǎo)致的問題定位復(fù)雜度和時(shí)長(zhǎng)在逐步增加;
傳統(tǒng)發(fā)布模式下夜間操作、系統(tǒng)中斷、時(shí)間緊張、壓力巨大,愈發(fā)不適用當(dāng)前業(yè)務(wù)快速迭代發(fā)展和客戶體驗(yàn)的要求。
為此,河北移動(dòng)以“零中斷、零影響、快迭代”為目標(biāo),對(duì)BSS支撐系統(tǒng)構(gòu)建灰度發(fā)布能力,提供路由策略控制下的可控范圍新版本試用,滿足按地市、營(yíng)業(yè)廳、工號(hào)的業(yè)務(wù)靈活驗(yàn)證需求,上線影響面受到良好管控,影響范圍下降90+%,上線次日問題數(shù)量月均下降80%,達(dá)成版本快速迭代的目標(biāo),保障客戶服務(wù)體驗(yàn)的同時(shí),不斷提升系統(tǒng)支撐效率和質(zhì)量。
【灰度能力構(gòu)建過程】貫穿于需求實(shí)現(xiàn)、版本交付各個(gè)關(guān)鍵節(jié)點(diǎn)
為支撐需求可灰度發(fā)布,需要制定全流程灰度發(fā)布規(guī)則,包括需求收集、系統(tǒng)分析、設(shè)計(jì)模型變更與數(shù)據(jù)兼容、系統(tǒng)開發(fā)等各個(gè)關(guān)鍵節(jié)點(diǎn);同時(shí)需構(gòu)建參數(shù)灰度庫(kù),保障數(shù)據(jù)庫(kù)配置腳本可灰度發(fā)布:
1、需求階段:初步判斷是否涉及外圍配合,依托需求管理平臺(tái)增加灰度標(biāo)志,用于灰度交付件的制作代碼、腳本提取。
2、方案階段: 設(shè)計(jì)灰度實(shí)現(xiàn)方案,并修訂灰度標(biāo)志。明確需求是否支持灰度,對(duì)于不支持灰度的需求重點(diǎn)評(píng)審,并在應(yīng)用全量灰度期間通過參數(shù)進(jìn)行控制。
3、開發(fā)階段:嚴(yán)格落實(shí)方案設(shè)計(jì),非灰度需求,提供灰度控制策略。
4、版本交付件:按照灰度腳本和非灰度分布提供。
5、交付件整理:按照一定規(guī)則,對(duì)上線腳本進(jìn)行校驗(yàn)和歸版整理
【灰度能力部署方案】部署“金絲雀”,實(shí)現(xiàn)灰度環(huán)境測(cè)試和試用、保障生產(chǎn)系統(tǒng)穩(wěn)定
灰度能力構(gòu)建過程中,為滿足版本快速迭代能力,應(yīng)用程序、參數(shù)數(shù)據(jù)庫(kù)、公共組件需單獨(dú)搭建,外部接入和業(yè)務(wù)數(shù)據(jù)與生產(chǎn)系統(tǒng)共用。
采用獨(dú)立應(yīng)用程序,便于獨(dú)立發(fā)布,涉及前臺(tái)程序、JCRM中間件、微服務(wù)
采用獨(dú)立灰度參數(shù)數(shù)據(jù)庫(kù),獨(dú)立redis(緩存系統(tǒng)字典)
共享外部連接和業(yè)務(wù)數(shù)據(jù)庫(kù)
路由策略控制,客戶無(wú)感知切換。灰度實(shí)現(xiàn)原理如下:
【灰度能力使用體驗(yàn)】總結(jié)積累經(jīng)驗(yàn),持續(xù)推進(jìn)灰度能力使用、構(gòu)建滾動(dòng)發(fā)布能力
通過灰度能力構(gòu)建,實(shí)現(xiàn)版本快速迭代,滿足日益增多的客戶個(gè)性化需求;同時(shí)業(yè)務(wù)支撐系統(tǒng)實(shí)現(xiàn)了發(fā)布風(fēng)險(xiǎn)范圍可控,提高系統(tǒng)穩(wěn)定性,提升服務(wù)質(zhì)量,節(jié)約人力投入。
實(shí)現(xiàn)日間發(fā)布,基于灰度環(huán)境,可實(shí)現(xiàn)日常工作時(shí)間版本發(fā)布
影響范圍可控,發(fā)布過程按照區(qū)、縣逐步放開驗(yàn)證,最終實(shí)現(xiàn)全省滾動(dòng)發(fā)布升級(jí)
單次灰度版本,人力節(jié)約50%,版本迭代周期提升200%,需求覆蓋范圍提升60%
客戶無(wú)影響,在灰度和生產(chǎn)兩套系統(tǒng)間平滑切換,用戶無(wú)感知
河北移動(dòng)灰度能力將從現(xiàn)有業(yè)務(wù)支撐系統(tǒng)拓展到內(nèi)外部接口互聯(lián),持續(xù)擴(kuò)大端到端灰度發(fā)布能力應(yīng)用范圍。打造灰度中心,推進(jìn)灰度發(fā)布由金絲雀部署向滾動(dòng)部署演進(jìn),實(shí)現(xiàn)012三步走版本發(fā)布模式:
Day0灰度中心預(yù)發(fā)布和測(cè)試驗(yàn)證
Day1單地市流量切入灰度中心
Day2全省放開的版本發(fā)布節(jié)奏,保障需求快速發(fā)布和系統(tǒng)穩(wěn)定,提升服務(wù)質(zhì)量,助力河北移動(dòng)數(shù)智化轉(zhuǎn)型加速和省內(nèi)CHBN業(yè)務(wù)快速發(fā)展。