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

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

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

devops

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

devops2

標(biāo)準(zhǔn)化的目的是為了實現(xiàn)自動化,包括集成的自動化、部署的自動化、測試的自動化和運維的自動化。下圖是一個典型的 DevOps 循環(huán)圖。我們認(rèn)為業(yè)務(wù)敏捷是前提,DevOps 流程是從敏捷型需求為起點,經(jīng)過了運維監(jiān)控這個最后的節(jié)點回到計劃,實現(xiàn)閉環(huán)。
編碼過程標(biāo)準(zhǔn)化的重點在于測試驅(qū)動的開發(fā),這也是敏捷要求的一個標(biāo)準(zhǔn),但是實際上能做到這個標(biāo)準(zhǔn)的團隊并不是很多。測試驅(qū)動開發(fā)首先要面向接口做一些測試和開發(fā),面向接口做測試的時候需要關(guān)注接口名稱、接口協(xié)議、接口參數(shù)名稱和類型、接受條件。其次我們需要關(guān)注數(shù)據(jù),包括每個接口輸入的數(shù)據(jù)以及其得出的結(jié)果。針對引用的相對復(fù)雜業(yè)務(wù)邏輯的其他服務(wù),需使用 mock 工具來減少依賴。每個測試用例的測試場景需要完整注釋。
最后我們總結(jié)一下前面的內(nèi)容: 一、需求敏捷化是起點。 二、TDD 開發(fā)模式是快速迭代開發(fā)時代保障軟件質(zhì)量基線的有效手段。 三、注重環(huán)境配置文件的標(biāo)準(zhǔn)化,保證程序的可測試性。 四、研發(fā)流程的標(biāo)準(zhǔn)化是建立自動化 CI、CD 流程的前提,而 CI、CD 流程的自動化是實現(xiàn) DevOps 的關(guān)鍵點。 五、Jenkins 是實現(xiàn) CI、CD 流程的有效工具,但是在處理復(fù)雜業(yè)務(wù)場景時還需要有其他合適工具的幫襯。 六、服務(wù)器運行環(huán)境的標(biāo)準(zhǔ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)品和解決方案。