2020年DevOps的七大發展趨勢
譯文【51CTO.com快譯】據一項權威研究表明:2017年,DevOps在市場上創造了29億美元;預計到了2022年,這個數字將達到66億美元。作為軟件項目開發的關鍵性要素,DevOps已經深入地影響到了軟件世界的整體開發格局。許多專家預測DevOps將逐漸成為軟件工程的主流模式,并將在2020年達到其頂峰。
因此,對于許多研發企業而言,開發人員已不再停留在是否對其感興趣的層面上了,而是應該擼起袖子,真刀真槍地去實踐DevOps相關的技術與方法。Hackernoon在引述Statista的文章中提到:從2017年到2018年間,DevOps的全球使用率增長了7%。而IDC預計DevOps的軟件市場體量將從2017年的29億美元,增長到2022年的66億美元(請參見https://www.idc.com/getdoc.jsp?containerId=US43722718 )。
DevOps具有以下優點:
- 能夠對各種修改需求做出快速的反應。
- 能夠實現靈活的安全部署與編排。
- 能夠建立完善的協作與溝通渠道。
- 能夠快速地識別出代碼中的錯誤或漏洞。
- 開發團隊可以毫不費力地將精力放在其他關鍵問題上,而不必過度專注于各項安全功能。
如今,業界許多企業正在采用DevOps的產品交付模式。如下圖所示,根據Statista的統計數據顯示:那些在整體公司內部全面“擁抱了”DevOps的企業數量,從2017年的10%增長到了2018年的17%(請參見https://www.statista.com/)。
下面我們來一起討論和大膽預測一下,2020年值得我們密切關注的7種DevOps趨勢。
1.自動化將成為重點
目前,那些實施了DevOps的公司已經能夠通過高效和快速的部署受益匪淺(請參見https://dzone.com/articles/benefits-and-challenges-of-taking-the-devops-route)。在此,我們將重點討論DevOps的自動化方面。零接觸自動化(Zero-touch automation)正是未來的發展方向。了解DevOps周期的6個C(譯者注:Continuous Business Planning、Collaborative Development、Continuous Testing、Continuous Release and Deployment、Continuous Monitoring、Collaborative Customer Feedback & Optimization),并確保在這些階段之間應用自動化是關鍵所在,這將是各個企業在2020年的主要目標之一。
2.將注意力從CI管道(Pipelines)轉移到DevOps裝配線(Assembly Line)
眾所周知,DevOps的最終目標是:改善計劃和交付過程中自動化之間的協作。這不僅涉及到持續集成(CI),而且與持續交付(CD)有關。如今,許多公司都正在投入更多的精力和時間,來了解整個軟件開發流程中有關自動化方面的知識與技能。而2020年,他們的注意力將會從持續集成的管道,轉移到DevOps的裝配線上。
裝配線的優勢:
- 強大的嵌套可見性
- 原生集成
- 快速實現和擴展“as-code(即代碼)”的理念
- 具有完美的互操作性,可實現持續交付
- 基于團隊的商業智能與分析
3.人工智能(AI)的興起,數據科學的發展
越來越多的由人工智能驅動的應用程序(https://dzone.com/articles/leveraging-ai-and-automation-for-successful-devsec),將推動數據科學團隊在其工作流程中尋找DevOps理念的實踐價值。DevOps方法有望成為處理自動化管道,以及維護與測試生產鏈中多個已部署模型的主要選擇。
為了提高開發、部署和管理那些由AI和ML(機器學習)驅動的應用效率,數據科學和開發團隊將不斷加強緊密協作,相輔相成地提高彼此的技能與交付水平。2020年, DevOps團隊將在自動化的幫助下,通過各種工作流的完美交付,發掘出更多潛在的客戶。
4.“一切即為代碼(Everything as Code)”的概念
不可否認:程序編碼如今已經成為了IT部門、及其服務系統背后的主要支柱之一。因此,充分了解各種DevOps工具、以及對應的自動化腳本,在企業的日常軟件開發過程中都能夠起到至關重要的作用。2020年,此類實踐將會在各種項目的落地過程中占據主導地位。我們可以毫不夸張地說:企業業務的前景、以及產品的未來品質都會或多或少取決于開發人員、測試人員和運營人員的綜合技術能力。
由于DevOps旨在縮減交付周期,因此我們需要引入那些可被用于提高軟件生產周期效率的優質代碼。此處“一切即為代碼”的思想是:在DevOps的內部完成代碼的SDLC(軟件開發生命周期管理,https://dzone.com/articles/leveraging-best-practices-with-the-sdlc)實踐。2020年,面對DevOps這股浪潮的持續推進,如果軟件測試人員還不開始著手學習代碼編程,以及編寫測試腳本的話,他們來年可能會更加舉步維艱。
5.使用無服務器架構
無服務器架構,特別是由云服務負責的整體架構,會將DevOps提升到一個更高的水平。由于微服務是一種獨立的服務模式,因此它在出現問題時,不會產生連帶式的依賴關系,也不會破壞其他現有的服務系統。因此,有了此類體系結構,軟件開發人員可以將精力更加集中在手頭的應用程序上。BaaS(Backend as a Service,后端即服務)和FaaS(Function as a Service,功能即服務)是無服務器架構中的兩個關鍵方面。通過采用無服務器架構,企業能夠節省時間和降低成本,進而確保實現各種彈性的工作流程。
6.更多嵌入式安全性
隨著安全漏洞數量的急劇增長,以及各類安全事件給公司聲譽所帶來的嚴重影響,更多的企業乃至國家開始意識到網絡安全的重要性。我們在享受DevOps快速交付效率的同時,需要讓安全性成為設計規范的一部分,從一開始就充分考慮到安全性的全面需求。只有將安全要素植入軟件產品的“基因”之中,才不會疲于亡羊補牢。
2020年,DevSecOps將持續呈現上升的趨勢。開發團隊將在應用程序的開發生命周期中“左移(Shift-left)”DevSecOps,通過減少各種程序原生的漏洞,進而讓安全性更能匹配業務目標,并提高企業的聲譽。DevSecOps模型假設項目中的每個人都會擔負起安全方面的責任。這種軟件開發方面的通力合作,將有助于減少責任的推諉,并確保開發過程安全性與高效性。
7.Kubernetes將有長足的發展
Kubernetes因其自身的性能和易用性,已經成為增長最快的容器技術。而且Kubernetes擁有著廣泛的開源社區的支持。目前在全球范圍內,許多CIO和技術專家都已經在自己的產品和項目中大量使用到了Kubernetes。我們預計在2020年,隨著各類企業進一步通過深度采用容器技術,來運行它們的云原生應用,Kubernetes將會迎來更廣的普及、更大的發展。當然,基于Kubernetes的容器編排軟件也會逐漸替換一些舊的DevOps功能。讓我們拭目以待吧。
原文標題:8 DevOps Trends to Watch For in 2020,作者:Shormistha Chatterjee
【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】