DevOps的基本原則與介紹


DevOps的基本原則與介紹

      DevOps這個術語是developer與operations的合並簡寫。實現還有QA。DevOps描述與精簡軟件交付流程,在今天已經開始廣泛的使用。強調從生產環境到開發的生命周期快速地反饋學習。DevOps不只是讓你更快地交付軟件,更多是幫助你產出高質量,與個人需求一致的軟件。

devops3

鼓勵運維工程師與開發工程師積極合作是至關重要的。 DevOps原則有如下: 

l 與人合作

       從你的坐位上起來與其他運維工程師或開發人員面對面交流。在這兒你不能用Email或電話等方式進行溝通。想象試着通過電話與朋友們開個Party一樣。是的,現在去和某人交流下一個項目,問題,解決方案,你需要對他們像一個Team一樣。

l 穿他們的鞋走路

      如果你准備好理解軟件工程師與運維工程師的每天如何工作的,使用工具如何工作,那你最好在現實工作場景一起和他們工作。例如,如果你是一個運維人員,你沒有花時間去理解源代碼管理系統,而開發人員堅定他們信念使用GitSubversion, 那么需要站在他們立場上去思考問題。需要更多時間去學習系統,因為你能應用你的技能去構建工具從而支持軟件開發過程。

l 為其他人而工作
      使每個人工作輕松點兒。為運維構建工具,它也為你了構建工具。如<<Time Management for System Administrators>> 的作者Tom Limconcelli說的,“我們現在是程序員了。” 甚至,我們有補充缺乏的技能集。沒有一個人能精通一切,所以構建一個新工具能幫助你的運維人員或開發人員自動化交付過程。它不是正式環境的一部分,甚至是個簡單的桌面工具。這是像”交換工具”來實現提高效率,同時也能使TEAM之間鞏固關系與加強協作。

      這些基本原則可以應用到大型開發與運維團隊的大公司,同樣適用剛起步小團隊公司。

走近DevOps

越來越多的開發人員和運維人員相互學習各自專長。更多像他們構建一個共同的願景什么需要做,如何做。開發人員需要學習一些常規高層知識:

l 操作系統

l 網絡構架

l 網絡安全

l 應用程序安全

l 配置管理

l 自動化實踐

與開發人員在一起工作的運維人員需要構建與維護一個復雜在線網站,更需要這些技能:

l 溝通

l 配置管理

l 編程

l 軟件設計與構架

 

演化

讓我們來看下面這張圖,假設已經實現了些基本的打包,配置管理自動化過程

devop1

上圖開發人員與運維人員有一些協作,開發人員可能不了解管理WEB服務器的配置,可能不清楚在特定操作系統如何使用命令行配置。運維人員管理服務器,讓他們能點擊一個按鈕完成發布應用程序到應用服務器,實現部署工作,提供應用服務器。最好的環境是開發人員與運維人員在一個TEAM開發一個新環境。但新的環境一旦推出后,需要花費一些管理成本,去跟蹤與管理所有的新環境。不幸的是,網絡管理,配置管理更多的壓力讓運維人員來支持整個環境正在運轉。看下面圖示是如何演化的:

devop2

上面的圖我們設想了比較理想的場景,減少編譯、構建與部署的依賴。 自動化系統提供一個WEB應用服務器的事實沒有變,變的是需要與運維交互的WEB服務器配置,日志配置,部署應用程序操作都是由開發人員來完成了。運維演化為適應開發人員的持續集成,發布管理,測試,調試源代碼。開發人員需要學習操作系統核心,網絡,配置管理與自動化。開發與運維能相互接管各自角色的工作,感覺像開發人員需要兩個角色技能合集,也對開發人員有下一個級別的需求。

2013年一份對4000IT組織調研報告,組織實現DevOps的好處有如下:

devops4

今天先到這兒,后續有時間,我們將介紹更多內容。

希望對您軟件開發管理有幫助。

關於DevOps更新您可以參考:

http://devopscafe.org/

DevOps is Everywhere

http://devops.com/

http://dev2ops.org/

 


作者:Petter Liu
出處:http://www.cnblogs.com/wintersun/
本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。
該文章也同時發布在我的獨立博客中-Petter Liu Blog


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM