雖然很多企業(yè)已經(jīng)在DevOps實(shí)踐的道路上走了很遠(yuǎn),但是對工具選用和能力建設(shè)方面仍可能存在迷茫和糾結(jié)。選擇合適的工具來適應(yīng)企業(yè)自身交付的服務(wù)或產(chǎn)品,可以更好地提升質(zhì)量,提高效率。在云化服務(wù)交付增多的今天,采用全云化的研發(fā)工具成為趨勢。
華為云DevCloud高級產(chǎn)品經(jīng)理介紹了通過工具、過程、能力圖譜來正確評估企業(yè)DevOps實(shí)踐水平的方法,講述了通過工具沙盤正確理解全云化研發(fā)工具的構(gòu)成、能力優(yōu)勢以及面臨的問題,提出了工具云化水平與服務(wù)產(chǎn)品形態(tài)的選取關(guān)系,并推薦了華為云化服務(wù)產(chǎn)品團(tuán)隊(duì)在落實(shí)全云化DevOps研發(fā)流程和工具過程中的前進(jìn)歷程和優(yōu)秀實(shí)踐。
華為云DevCloud的DevOps實(shí)踐
在前端,華為云DevCloud高級產(chǎn)品經(jīng)理講到《基于微前端架構(gòu)的DevOps實(shí)踐》,主要分享DevCloud在大型網(wǎng)站性能優(yōu)化的Devops實(shí)踐。華為云DevCloud有10+前端portal服務(wù),在微前端架構(gòu)下,如何持續(xù)保持網(wǎng)站響應(yīng)性能,在日常業(yè)務(wù)交付中仍能保證網(wǎng)站性能不被劣化。DevCloud前端團(tuán)隊(duì)首先基于網(wǎng)站前端架構(gòu)以及業(yè)務(wù)特點(diǎn)整理出了完整的優(yōu)化checklist,并根據(jù)產(chǎn)品性能體驗(yàn)建立了一整套的可視化監(jiān)控體系,從實(shí)時的主動監(jiān)控,到例行的被動驗(yàn)收,做到每日、每周的性能指標(biāo)看護(hù),從而驅(qū)動開發(fā)團(tuán)隊(duì)將性能優(yōu)化工作做到每一次的版本開發(fā)過程中。告別過去的各種專項(xiàng)、各種行動,利用可視化與每日站會等Devops優(yōu)秀實(shí)踐將性能提升與優(yōu)秀實(shí)踐融入到日常工作中。
華為產(chǎn)品團(tuán)隊(duì)和代碼規(guī)??缍葮O大,由于產(chǎn)品規(guī)模太大,業(yè)務(wù)特性達(dá)數(shù)千個,模塊也往往達(dá)到數(shù)十上百個,不同部門使用的環(huán)境和組網(wǎng)也會存在極大差異。
華為云DevCloud高級產(chǎn)品經(jīng)理講到,在這種復(fù)雜的環(huán)境下,華為構(gòu)建了分層分級持續(xù)交付流水線,分為個人級、項(xiàng)目級、子系統(tǒng)級、產(chǎn)品級(版本級)、解決方案級等數(shù)級流水線,通過流水線編排工作流、觸發(fā)下一級流水線的執(zhí)行來保障產(chǎn)品團(tuán)隊(duì)和組件之間的協(xié)同交付。
在這個過程中,配套L1-L4分級測試模型,在不同層級流水線執(zhí)行不同的自動化測試策略,并設(shè)置每個階段任務(wù)對應(yīng)的質(zhì)量門禁來判斷是否允許流水線繼續(xù)執(zhí)行。通過多級流水線的層層防護(hù),使得缺陷發(fā)現(xiàn)前移,有效保障了產(chǎn)品質(zhì)量。
對應(yīng)于微服務(wù)化的產(chǎn)品形態(tài),配套提供了微服務(wù)持續(xù)交付流水線模板。區(qū)別于傳統(tǒng)產(chǎn)品持續(xù)交付流水線,微服務(wù)流水線在角色權(quán)限上匹配全功能團(tuán)隊(duì)全棧工程師的角色權(quán)限模型,SDE可以從代碼提交并端到端執(zhí)行流水線直至微服務(wù)發(fā)布上線。同時,構(gòu)建出鏡像,并實(shí)施容器化部署、灰度發(fā)布策略、失敗自動回滾策略,微服務(wù)可按天、按小時甚至分鐘級灰度發(fā)布上線。
在DevOps模式中,反饋非常重要,測試其實(shí)也是一種反饋,就像代碼評審、代碼檢查、構(gòu)建、部署等,通過反饋?zhàn)屛覀兗皶r發(fā)現(xiàn)代碼和系統(tǒng)的問題,反饋周期越短,我們就能越早發(fā)現(xiàn)問題,成本越低。華為云DevCloud高級項(xiàng)目經(jīng)理分享了DevOps下的測試方法和實(shí)踐,包括新商業(yè)新模式下測試活動的沖擊、測試債務(wù)的現(xiàn)狀和挑戰(zhàn)、測試金字塔和持續(xù)測試,以及云服務(wù)測試的具體實(shí)踐。
DevCloud云測和移動應(yīng)用測試,主要實(shí)現(xiàn)四部分功能:
1)實(shí)現(xiàn)云端高效協(xié)同測試,開展用例設(shè)計(jì)、測試執(zhí)行、缺陷提交,提高測試效率。
2)雙向追溯:通過需求-用例-缺陷雙向追溯,確保所有需求都被正確測試,杜絕漏測、誤測。
3)自動化測試:提供Android和iOS兼容性測試、接口測試,集成流水線支持持續(xù)自動化測試。
4)可視化:多維度產(chǎn)品質(zhì)量看板,全方位評估產(chǎn)品質(zhì)量,保障產(chǎn)品高效驗(yàn)收。
DevOps平臺的構(gòu)建思考和探索
DevOps工具平臺的構(gòu)建非常復(fù)雜,理念和方法論是工具平臺的靈魂、主線,工具承載先進(jìn)理念和方法論,固化流程、經(jīng)驗(yàn)和最佳實(shí)踐。華為云DevCloud是華為云的組成部分, 是華為30余年研發(fā)實(shí)踐和前沿理念的結(jié)晶,為開發(fā)者提供一站式全流程安全可信的DevOps工具服務(wù),同時,也是幫助企業(yè)修煉內(nèi)功的一大利器,可以有效支撐企業(yè)DevOps落地,實(shí)現(xiàn)項(xiàng)目的高效、高質(zhì)量迭代。未來,華為云DevCloud也將攜手各企業(yè)各開發(fā)者/運(yùn)維者,精誠合作互通,及時響應(yīng)反饋,更好的為廣大開發(fā)者提供穩(wěn)定可靠的DevOps工具,助力軟件企業(yè)專注業(yè)務(wù)創(chuàng)新。