最近瀏覽
恒天x騰訊云大學(xué) | 標(biāo)準(zhǔn)化助力 DevOps 轉(zhuǎn)型
2020.06.17
DevOps 涉獵的范圍非常的廣泛,包括軟件研發(fā)全生命周期的方方面面,對于剛開始涉及 DevOps 的人來說會(huì)有種盲人摸象的感覺,這正是 DevOps 轉(zhuǎn)型的一個(gè)難點(diǎn)。在 DevOps 轉(zhuǎn)型過程中,標(biāo)準(zhǔn)化是重要手段。

那么,標(biāo)準(zhǔn)化關(guān)注的具體是什么內(nèi)容呢?

DevOps 的轉(zhuǎn)型目標(biāo)在于縮短前置時(shí)間,加快部署頻率,提高系統(tǒng)的可用性,減少服務(wù)恢復(fù)時(shí)間,降低變更失敗率。這就要求我們在設(shè)計(jì)運(yùn)行平臺(tái)的時(shí)候,除了具備自動(dòng)恢復(fù)功能的以外,還要提供豐富的運(yùn)維監(jiān)控?cái)?shù)據(jù)以及強(qiáng)大的數(shù)據(jù)分析能力,這樣能夠幫助運(yùn)維人員在極短的時(shí)間之內(nèi)恢復(fù)服務(wù)。變更失敗的原因主要有 2 個(gè),一是功能質(zhì)量沒有達(dá)標(biāo),二是需求理解不到位。

devops

圖片中是我們整理的一些標(biāo)準(zhǔn)化的關(guān)注點(diǎn)。作為產(chǎn)品經(jīng)理或業(yè)務(wù)分析的人員,需要關(guān)注需求如何順利到達(dá)研發(fā)團(tuán)隊(duì),并能夠適應(yīng)他們進(jìn)行敏捷的開發(fā)。作為研發(fā)人員需要關(guān)注的點(diǎn)相對比較多,尤其是要關(guān)注配置信息標(biāo)準(zhǔn)化管理。

devops2

標(biāo)準(zhǔn)化的目的是為了實(shí)現(xiàn)自動(dòng)化,包括集成的自動(dòng)化、部署的自動(dòng)化、測試的自動(dòng)化和運(yùn)維的自動(dòng)化。下圖是一個(gè)典型的 DevOps 循環(huán)圖。我們認(rèn)為業(yè)務(wù)敏捷是前提,DevOps 流程是從敏捷型需求為起點(diǎn),經(jīng)過了運(yùn)維監(jiān)控這個(gè)最后的節(jié)點(diǎn)回到計(jì)劃,實(shí)現(xiàn)閉環(huán)。
編碼過程標(biāo)準(zhǔn)化的重點(diǎn)在于測試驅(qū)動(dòng)的開發(fā),這也是敏捷要求的一個(gè)標(biāo)準(zhǔn),但是實(shí)際上能做到這個(gè)標(biāo)準(zhǔn)的團(tuán)隊(duì)并不是很多。測試驅(qū)動(dòng)開發(fā)首先要面向接口做一些測試和開發(fā),面向接口做測試的時(shí)候需要關(guān)注接口名稱、接口協(xié)議、接口參數(shù)名稱和類型、接受條件。其次我們需要關(guān)注數(shù)據(jù),包括每個(gè)接口輸入的數(shù)據(jù)以及其得出的結(jié)果。針對引用的相對復(fù)雜業(yè)務(wù)邏輯的其他服務(wù),需使用 mock 工具來減少依賴。每個(gè)測試用例的測試場景需要完整注釋。
最后我們總結(jié)一下前面的內(nèi)容: 一、需求敏捷化是起點(diǎn)。 二、TDD 開發(fā)模式是快速迭代開發(fā)時(shí)代保障軟件質(zhì)量基線的有效手段。 三、注重環(huán)境配置文件的標(biāo)準(zhǔn)化,保證程序的可測試性。 四、研發(fā)流程的標(biāo)準(zhǔn)化是建立自動(dòng)化 CI、CD 流程的前提,而 CI、CD 流程的自動(dòng)化是實(shí)現(xiàn) DevOps 的關(guān)鍵點(diǎn)。 五、Jenkins 是實(shí)現(xiàn) CI、CD 流程的有效工具,但是在處理復(fù)雜業(yè)務(wù)場景時(shí)還需要有其他合適工具的幫襯。 六、服務(wù)器運(yùn)行環(huán)境的標(biāo)準(zhǔn)化,可以促進(jìn)流程腳本的標(biāo)準(zhǔn)化。
關(guān)于浙江網(wǎng)新恒天軟件有限公司
網(wǎng)新恒天是浙大網(wǎng)新、美國道富和浙江大學(xué)戰(zhàn)略聯(lián)盟的結(jié)晶,是一家致力于為中外企業(yè)提供可靠的、專業(yè)的IT服務(wù)及產(chǎn)品的軟件公司。恒天軟件提供企業(yè)級軟件的定制開發(fā)服務(wù),并有覆蓋金融、制造、零售等行業(yè)的IT產(chǎn)品和解決方案。