DevOps建設流程

從企業用戶容器雲的建設需求來看,容器雲的建設和DevOps二者之間的關聯性非常強。DevOps要求開發、測試、運維一體化,實現敏捷開發、敏捷部署和敏捷生產的目標。DevOps從計劃、編碼、構建,測試、發佈、部署,以及運營、監控打通,就是把敏捷開發部門和運維部門之間的圍牆打通,形成閉環。

20180928072642952[3].png

通過對容器雲方案和微服務架構的整體考慮,DevOps分成以下過程

 

持續集成:開發人員研發的代碼向軟件整體部分交付,頻繁進行集成以便快速發現問題。

持續交付:在已完成集成的代碼上面將完成測試的代碼部署到“類生產環境”中。

持續部署:已交付的代碼在通過評審之後,自動部署到生產環境中。

持續監控:通過專業的監控軟件(如Prometheus等),按事先設置的監控策略,監控業務應用以及系統平臺的運行情況,形成監控報告和監控展示。

持續反饋:基於監控的結果作數據分析,提供建議方案,如針對應用的監控,實現應用的彈性伸縮等能力。

持續改進:基於反饋的意見,啓動新的改進計劃流程。

 

結合雲宏在WinGarden容器雲平臺的豐富建設經驗,在建設DevOps時需重點考慮以下要點:

 

基於WinGarden容器的CI/CD DevOps

 

通過基於容器構建CI/CD的DevOps,通過持續集成/持續交付,考慮實現計劃流程自動化、資源選擇自動化、代碼質量控制自動化、構建自動化等流程。藉助相應的工具鏈,來提升對業務需求的響應能力和敏捷的開發能力:

 

在資源選擇自動化,可結合與企業現有的IaaS資源層對接,實現資源申請自動化,將容器或微服務部署在對接的雲平臺,也可以結合雲平臺的多租戶能力,實現資源的隔離,在應用部署的時候自動選擇在其項目組或指定資源池。

 

代碼質量控制自動化。開發人同在編寫完成後,提交到SVN或Git,通過在Jenkins中集成findbugs檢查代碼bug,藉助於Sonar等工具來實現代碼質量的自動檢查。

 

構建自動化,採用容器雲後就是構建鏡像。在代碼檢查完畢後,自動啓動構建流程,可以使用基於Jenkins的工具,支持創建多種流水線,如Maven項目、多Stage Docker項目和傳統Docker項目。它可以集成SVN或Git,Sonar,Maven等衆多工具,是非常方便的構建自動化實現方式。

 

鏡像構建完畢,上傳到鏡像倉庫。開發工作暫告一段落,需要準備測試環境進行測試。測試完成沒有問題的話,可自動交付到生產鏡像倉庫。

 

通過雲宏的WinGarden CI/CD平臺可大幅度提升持續部署及運營過程效率,保證開發、測試及生產環境一致性。

20180928072723466[1].png

WinGarden持續集成持續部署DevOps流水線

基於容器的持續交付團隊協作

 

雲宏WinGarden基於容器技術,提供一套完整的DevOps解決方案,實現了Code to Cloud全流程自動化。企業的開發者只需要關注最核心的代碼層面,接下來的測試、構建、集成、部署等過程,都可以由WinGarden平臺自動化完成。WinGarden平臺通過鏡像tag進行版本的識別和控制,實現灰度發佈和回滾。

 

基於容器的持續交付實踐當中,以鏡像在不同職能人員之間傳遞。

 

開發人員:頻繁提交持續集成,通過持續的編譯、打包、測試、鏡像構建、自動化驗收測試等環節,產生可測試的候選鏡像列表。

測試人員:從候選測試鏡像列表中,選擇需要測試的目標鏡像,標記爲測試版本,並且將待測試鏡像自動部署到驗收測試環境,完成手動探索性測試,對於已測試完成的鏡像標記爲預發佈版本。

運維人員:從預發佈鏡像列表中選擇鏡像部署到預發佈環境,並且在驗證通過後標記爲release版本並且發佈到生產環境。

 

持續監控和集中分析的能力

 

日誌、監控是業務運營過程中判斷運行是否正常的重要基礎能力,持續監控就是實現平臺各層次的健康檢查能力,包括基礎設施層、平臺層、應用層等。基礎設施層就是通常所說的IaaS層,包含存儲、網絡、計算資源等;平臺層是容器雲平臺的能力,比如Docker引擎、容器編排調度、服務發現、負載均衡等;應用層需要實現對應用的進程、使用資源、網絡流量等進行監控檢查,收集日誌。持續監控是實現日誌收集、健康檢查監控的自動化。

 

針對基礎設施層,雲宏提供強大的MS雲監控平臺,不僅可以對計算、存儲、網絡資源進行統一監控和展示,也可以對數據庫、中間件等應用進行統一監控管理。而WinGarden容器雲基於業內最先進的Prometheus方案,對容器和應用進行全方位的監控,提供用戶自定義個性化監控視圖,並支持郵件、短信等告警方式,通過預先設計的監控策略實現服務的自動伸縮。日誌採集與分析基於業界最先進的EFK方案,實現系統日誌和容器日誌雙重採集。

 

通過對基礎設施層、平臺層和應用層的集中監控和預先告警能力,可實現對應用的服務進行改進,實現了業務應用的全生命週期管理,在各個階段實現自動化,提升了效率和響應能力。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章