一、引言
一個典型的 DevOps 流程涵蓋需求、計劃、編碼、構(gòu)建、測試、發(fā)布、運營等多個環(huán)節(jié),DevOps 通過增強團(tuán)隊間的協(xié)助和溝通,構(gòu)建自動化持續(xù)交付流水線,達(dá)到快速交付和安全可控的目的。
現(xiàn)代化的應(yīng)用架構(gòu),尤其是微服務(wù)應(yīng)用架構(gòu),基本都是分布式的應(yīng)用架構(gòu)。分布式架構(gòu)會帶來交付和運維的復(fù)雜性,增加交付和運維的難度。容器技術(shù)可以使軟件交付標(biāo)準(zhǔn)化,容器技術(shù)可以滿足分布式應(yīng)用交付的需求。
DevOps 落地過程中,最關(guān)鍵的,也是最大挑戰(zhàn)的是構(gòu)建自動化持續(xù)交付流水線。自動化持續(xù)交付流水線涉及到代碼管理(代碼提交、代碼靜態(tài)分析、編譯、構(gòu)建、打包、單元測試等)、代碼集成、部署、發(fā)布等環(huán)節(jié),涉及到的工具主要包括代碼管理工具、CI 等。
二、DevOps目標(biāo)
DevOps 是一種方法論,是一系列可以幫助開發(fā)者和運維人員在實現(xiàn)各自目標(biāo)(Goal)的前提下,向自己的客戶或用戶交付最大化價值及最高質(zhì)量成果的基本原則和實踐。
開發(fā)者和運維人員之間最大的問題在于:雖然都是企業(yè)中大型 IT 部門不可或缺的,但他們有著截然不同的目的(Objective)。

開發(fā)者和運維人員之間目的上的差異就叫做混亂之墻。下文會介紹這個概念的準(zhǔn)確定義,以及為什么我認(rèn)為這種狀況很嚴(yán)峻并且很糟糕。
DevOps 是一種融合了一系列基本原則和實踐的方法論(并從這些實踐中派生出了各種工具),意在幫助這些人員向著一個統(tǒng)一的共同目的努力:盡可能為公司提供更多價值。
讓開發(fā)、測試、部署變得敏捷起來!而這恰恰正是 DevOps 所要達(dá)成的唯一目標(biāo)!