官术网_书友最值得收藏!

二、DevOps平臺實施過程

調研和評估

調研和評估過程主要為了了解客戶的管理成熟度和重要流程,以此為依據制定提升目標及改進方案,為遷移到DevOps平臺做準備。為此,我們整理了調研問卷,涉及項目研發的整個過程。

在實施初期,我們一般會選擇比較有代表性的項目,進行調研和分析。我們會從需求管理、開發、代碼管理、構建、測試、部署、發布這幾個方面進行調研和分析,判斷項目是否適合遷移到DevOps平臺,項目研發過程的某些環節是否需要進行改進和完善。

根據調研問卷,各方面的具體關注點如下:

? 需求管理:需求管理工具、用戶故事、任務、迭代等

? 開發:開發語言、開發工具、技術框架、運行環境、組件劃分及依賴關系等

? 代碼管理:代碼及文檔管理工具、代碼庫分支及用途、分支策略、代碼質量檢測工具及質量指標等

? 構建:構建工具、構建過程及構建策略、構建介質策略、中間介質及最終介質管理等

? 測試:用例和Bug管理、自動化測試工具、驗收標準等

? 部署:環境規劃、環境配置、部署方式、依賴的中間件和公共組件等

? 發布:上線交付物、發布流程、應用及數據備份方式、回滾方式等

本階段產出文檔:調研問卷、提升建議和改進方案。

制定規范

經過對典型項目的調研和分析,結合客戶的實際關切點,根據最佳實踐制定相關規范,為后續項目遷移到DevOps平臺提供條件。

這里主要介紹兩個規范:

代碼庫規范:包括分支和標簽命名規范、分支管理規范(管理流程、hotfix流程、分支策略)、代碼提交規范。

以分支開發、主干發布為例,管理流程規范中會涉及代碼庫準備、開發集成、驗收測試、發布環節,每個分支的用途,每個環節中涉及的角色,角色的操作流程都有詳細規范。

CICD流程規范:命名規范:組件、介質倉庫、構建定義、構建產物別名、發布定義。流水線規范:開發流水線、用戶驗收測試流水線及回滾流水線、發布流水線及回滾流水線、hotfix流水線。

通過制定流水線的規范,形成不同類型項目的CICD流程模版,可以作為組織級規范進行審計。

對于流水線的定義和設計,需要考慮客戶的環境規劃和網絡策略。一般情況下,會設計和定義開發測試流水線、用戶驗收測試流水線、發布流水線這些常規流水線,對應開發測試環境、用戶驗收環境、生產環境。開發測試流水線經過多次執行,業務系統形成穩定版本,交付到用戶驗收測試流水線,通過用戶驗收測試之后,再轉到發布流水線進行發布上線;這個過程也設計到代碼分支和標簽的維護。

有的客戶,階段交付物是某個版本的工件介質,并且介質庫可以多環境共享或者同步,這種情況下需要在開發測試流水線中設計構建環節和部署環節,在用戶驗收流水線和發布流水線不需要構建環節,因為交付介質像下一個環境同步即可。

流水線設計如下:

有的客戶階段交付物是代碼,且各個環境有網絡策略限制。這種類型的流水線,不同環境需要根據對應的代碼分支或標簽將介質構建出來,然后再進行部署。

流水線設計如下:

產出文檔:代碼庫規范文檔、CICD流程規范、流程配置規范、度量指標等。

培訓

主要是對DevOps平臺和相關的規范的培訓。DevOps平臺的培訓,主要是為了讓用戶熟悉DevOps的能力。規范培訓,主要結合具體的使用場景和最佳實踐讓用戶了解和熟悉代碼庫、CICD流程等規范。

項目試點及推廣

項目試點是非常重要的環節,也是后續能否進行推廣的重要評判依據。經過前期的項目改進,以及流程規范的普及推廣,試點項目作出適當調整,試點項目的遷移是對之前所有工作的一個重要檢驗。

在試點階段,一方面是要通過試點項目的規范化改造,打造同類項目的流程規范,形成可復制的流水線模式;另一方面看遷移前后給試點項目帶來哪些好的效果,是否符合預期,是否還有需要改進的空間,平臺能力是否需要提升等等。項目試點階段產出的文檔和手冊是后續推廣的重要資源。

當試點項目的遷移達到預期效果,就可以進行DevOps平臺的普及推廣。

主站蜘蛛池模板: 柘荣县| 托克逊县| 高密市| 衡南县| 福贡县| 花垣县| 临湘市| 邹平县| 六盘水市| 定结县| 织金县| 丰宁| 油尖旺区| 阜平县| 邢台县| 吉木乃县| 北海市| 桂东县| 汤阴县| 温州市| 桓仁| 合水县| 恩平市| 民丰县| 曲麻莱县| 玛曲县| 遂川县| 庆城县| 饶河县| 西丰县| 临高县| 清新县| 莒南县| 阳泉市| 楚雄市| 太康县| 嘉峪关市| 怀来县| 彩票| 德江县| 余姚市|