devops 簡介

devops 前一陣非常火熱,簡單說就是"研發/運維/測試/產品"的那點事,但一直沒有去深入理解,直到最近用了jenkins後,才熟悉了一遍這些專用名詞之間的關係,簡要總結如下:

一般的,整個產品項目的開發流程即如下:

編碼 -> 構建 -> 集成 -> 測試 -> 交付 -> 部署

-------------------------------------------------------------------------------------------------

1)持續集成(Continuous Integration CI)

集成:就是將內容聚合到一起,代碼commit是集成(代碼在一起),部署是集成(代碼跟環境在一起),測試是集成(功能在一起),灰度是集成(系統在一起);

此部分重點是由各個開發和各個測試將整個項目代碼集成到一起,不斷地修改和聚合就產生了持續集成;

持續化集成可以大大節省聚合的效率,減少人爲溝通,遵循規則。

2)持續交付(Continuous Delivery CD)

交付:就是將產品項目發佈到線上環境,給用戶使用(準確說不需要項目全部完成,利於可視化進度);

此部分一般由研發/運維來完成, 從原始需求到最終產品的過程,爲了項目進行透明化可控制,需要以頻繁的以最小粒度進行交付反饋。從需求分析、產品的用戶體驗到交互 設計、開發、測試、運維等角色密切協作,相比於傳統的瀑布式軟件團隊,更少浪費;

持續化交付可以更快速、更便捷、更自動化的完成頻繁的交付。

3)持續部署(Continuous Deployment) 

部署:就是持續的將需求部署到目標環境上;

持續部署一般是運維來完成,將已經集成並交付完成的項目,部署到生產環境應用;

儲蓄化部署可以更快速、更方便、更準確的部署到生產環境,減輕人爲步驟,減少人爲失誤。

4)開發運維(Development Operations DevOps)

開發運維:是一組過程、方法與系統的統稱,用於促進開發、技術運營和質量保障、運維部門之間的溝通、協作與整合,使產品按時上線;

持續集成、持續交付、持續部署提供了一個優秀的 DevOps 環境。無論何時,頻繁部署、快速交付以及開發測試流程自動化都將成爲未來軟件工程的重要組成部分,而持續部署和快速持續交付就是我們運維人員需要完成的。

http://www.infoq.com/cn/articles/devops-not-legend/

wKiom1kAxtPQ55iqAADNPp-dm7E191.png

wKiom1kAxtPAosW4AACxk8IRiHo149.png


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