DevOops?No,DevOps!

莫源發表於2017-03-30

3月28日雲棲大會開源專場,阿里雲高階開發工程師莫源給大家帶來了“Dev Oops ? No , DevOps!”的演講。本文主要介紹DevOps的相關知識,以及Jenkins2.0的高階特性,以及阿里雲對Jenkins的增強。

fe3c79b2fe33521aeec488f8be6942e9.png
DevOps在2016年被越來越多的開發者所提及,特別是和Docker相關的領域,DevOps被認為是開發者快速部署的最佳實踐。81%的大型企業開始著手實踐DevOps,但是於此同時,64%的開發者認為實踐Docker的DevOps需要更多的參考與教導,44%的開發者還在測試與調研的階段。

97f18f5317ae6e6491bec4895136d177.png710c1fa4721735943f831dc45b2b1bc6.png

上面是標準化持續交付和容器化持續交付兩個常見的最簡化的持續交付流程,很多開發者從各種演講或者社群中拿到類似的方案後就回到公司開始進行DevOps實踐。

fc69170a61153e2159491dbe3f844142.png

上面的兩個例子都沒有錯,但是這是DevOps的“型”,缺乏DevOps的“神”,而“神”是什麼,是DevOps的本質,沒有一個DevOps流程是符合所有人需求的,開發者需要根據自己的業務形態來修改DevOps的流程,DevOps不是讓大家成為全能的忍者,而是要消除“浪費”和“等待”。

824f034ffee8029e5644e03bf8d94999.pngd13fcc14c758cc9fc2f571182ab06845.png

DevOps是通過分而治之的方式消除“等待”和“浪費”的,將大的目標程式設計小的目標,然後快速迭代小的目標實現快速的交付。因此DevOps是要先有分而治之再之後才是快速,一味的追求自動化並不是持續交付的初心。

136fd60d6df583897be11f56c8cb5fbd.pngaae083ab5d2a3966b8bf14a248baab9d.png

DevOps在Cloud Native、Microservices、Docker、Serverless等領域被大家越來越多的討論,有人說DevOps不是一個技術問題,但是大部分的DevOps的實踐是用來降低DevOps改造帶來的技術債務的,DevOps的工具鏈非常多也非常繁雜,選擇屬於自己的工具鏈尤為重要。

在工具鏈中,持續整合伺服器是整個持續交付流程的發動機,而Jenkins是我們推薦大家的最佳選擇。Jenkins可以在非常多的場景中和其他的持續交付工具進行整合。
bd5d4f785291fb601574e898dcae80b5.png

大家對Jenkins1.0有所詬病,主要是Jenkins1.0比較陳舊,而在Jenkins2.0的演進中,我們可以看到如下5個方面的變化。

e4fad4dcc3445edbaa26d38d2b983848.png

阿里雲也在Jenkins相關的領域做了增強,讓開發者更好的使用Jenkins。

4422d1ff90cf42083dc103749b53afba.png99f3f82ebe37422a4c74c1831904793e.png

最後莫源也談了一下關於近期即將開源的容器化改造的利器Derrick,通過獨特的機制,可以自動生成Dockerfile,並且可以讓開發者無感知Docker的情況下在本地除錯容器化的應用,目前已經支援Node.js、Python、Java等多種語言,大客戶可以發起申請,成為早期使用的客戶。

9b1d3d9fb5cfbc2d5f2c7ba79ae90b94.pnge7bec51424b4170a3735d1086c9bfb0c.png

最後阿里雲容器服務持續相關的資料可以在官方的github倉庫找到,歡迎大家follow。


相關文章