從DevOps到ContainerOps

透明的魚發表於2018-11-21

一、什麼是DevOps

我們都知道在軟體開發過程中應用程式的釋出是整個開發流程中壓力最高、風險最高的流程。這是需要開發與運營通力合作才能順利完成的工作。而在傳統的軟體組織是將開發、IT運營和質量保障設為各自分離的部門。這就造成了他們之間有一堵沉重的牆,使得這些流程是相互割裂開的。

從DevOps到ContainerOps

而當前敏捷開發的要求:

1. 儘早地、持續地交付可評價的軟體來使客戶滿意。

2. 頻繁交付可使用的軟體,交付間隔越短越好。

3. 在整個專案開發期間,業務人員和開發人員必須朝夕工作在一起。與開發團隊以及在開發團隊內部要面對面的交談。

等等的這一切都要求這三個部門融在一起,要將橫在Dev(開發)和Ops(運維)之間的鴻溝給填平,DevOps就在這樣的背景中應運而生。

DevOps就是這樣的一個方法論,它是來思考如何讓Dev(開發)和Ops(運維)進行合作與協同,它要求我們:

1. 要考量系統級別的整體效率,而不是某一個環節上的效率。

2. 要確保能夠提供持續不斷的反饋迴圈。

3. 要持續的學習和吸取經驗,不停的提升。

而其最終目標是實現從程式碼編譯到應用上線自動化實現,以及相應的自動化運維。從而減輕運維人員的壓力,提升運維效率,釋放生產力,同時降低運維門檻,使得開發人員能夠參與到運維工作之中,降低Dev(開發)和Ops(運維)溝通成本,打破兩者之間的“牆”。

二、容器給Devops帶來了什麼?

於2013年初誕生的Docker,它能夠快速的交付和部署、高效的虛擬化、輕鬆的遷移和擴充套件,簡單的管理,更加敏捷。使得它天然的擁抱敏捷開發,與微服務開發結合起來。雲原生開發的概念甚囂塵上,尤其當K8S成為容器編排的事實標準之後,雲原生越加火熱,而它天然包含了devops流程。

在中國DevOps時代社群釋出了中國IT企業DevOps持續交付流水線現狀調查報告,幾個資料印象比較深刻:

1.調查者中65%以上使用者實現了一週一次以上的部署,在微服務的時代快速釋出將成為常態。

2.64%的受訪者已經引入持續交付流水線,其中86%都在使用Jenkins。看來Jenkins基本都已經成為交付流水線的代名詞了。

3.各階段工具與流水線整合比例低於25%,流水線自動化出發比例只有31%。可見雖然不少公司都已經開始交付流水線了,但各個階段的整合還是比較缺乏實踐。

由此可見Jenkins已經成為了大家實現devops流水線首選工具。但是Jenkins受限於時代的侷限性,雖然在當時是跨時代的優秀產品,但是在當前技術迅速發展的時代,有些固有問題很難解決。首先master節點的高可用無法保證,其次當指令碼越來越複雜時效能的消耗會非常嚴重,即使使用Master+Slave方式,隨著叢集規模的增大,網路維持的消耗都非常巨大,高峰期會嚴重影響開發和部署效率。

當docker,k8s出現後,我們突然發現有了更好的解決方案,我們將每個Stage做成一個docker容器,利用K8S的能力去編排DevOps流程。使得DevOps流程的編排更加靈活,另外借用K8S實現了高可用,以及環境的無關性。同時使得DevOps流程的高擴充套件性。於是華為提出了ContainerOps的概念。

三、華為雲是如何實踐ContainerOps的

華為雲在實踐ContainerOps的時候,不是簡簡單單的把它視作流水線,一個簡單的工作流。我們更願意從使用者的視角去看待為什麼選擇上雲,上雲給他們帶來了什麼好處。

在那個還沒有云技術,大家把機器都部署在機房的時代,往往運維部門都需要提前三個月收集大家的資源需求,提前採購資源。一旦出現緊急上線的情況,就會很容易出現系統上線失敗。但是使用者上雲後,這種情況發生的可能性非常小。在雲上使用者資源是按需申請,降低了運維難度,節省了成本提高了資源利用率。除了這一有優點,雲還提供了各種自動化運維工具集,但實際上這些工具對於使用者來說相互之間的使用是孤立的。而且對於使用者來說,他最關注的是如何降低自身的運維成本,讓應用從程式碼到系統上線完全自動化。

華為雲的ContainerOps不只是簡單的把自己定義成一條流水線,而是有機的把這些自動化工具集整合在一起,給使用者上線服務的完美體驗。

1.完善:從原始碼到部署的完整的一套流水線,滿足客戶各方面的需求。

2. 靈活:提供了多種Stage,客戶可以靈活搭配自己的流水線。涵蓋了原始碼下載、映象構建、Jenkins構建、映象部署、灰度釋出等核心元件。滿足使用者多樣化的需求。

3.全連線:提供多種notification方式,方便客戶原有系統的接入,以輕量化的形式去使用流水線。

4. 安全:基於映象倉庫的許可權管理,客戶完全不用擔心映象的安全性,保障使用者的使用。

最後,你是不是希望真實的體驗一把華為雲容器呢?現在機會來了!

華為雲DevCloud&雲容器服務聯合出品——21天轉型容器實戰營限時招募中!

本期實戰營匯聚華為雲眾多記述專家,包含K8s、Docker、Istio等大熱技術,並且零門檻,全免費!快來加入吧!

從DevOps到ContainerOps



相關文章