1. 自動(dòng)化將成為重點(diǎn)
目前,那些實(shí)施了 DevOps 的公司已經(jīng)能夠通過高效和快速的部署受益匪淺 。在此,我們將重點(diǎn)討論 DevOps 的自動(dòng)化方面。零接觸自動(dòng)化 (Zero-touch automation) 正是未來的發(fā)展方向。了解 DevOps 周期的 6 個(gè) C (譯者注:Continuous Business Planning、Collaborative Development、Continuous Testing、Continuous Release and Deployment、Continuous Monitoring、Collaborative Customer Feedback & Optimization),并確保在這些階段之間應(yīng)用自動(dòng)化是關(guān)鍵所在,這將是各個(gè)企業(yè)在 2020 年的主要目標(biāo)之一。
2. 將注意力從 CI 管道 (Pipelines) 轉(zhuǎn)移到 DevOps 裝配線 (Assembly Line)
眾所周知,DevOps 的最終目標(biāo)是:改善計(jì)劃和交付過程中自動(dòng)化之間的協(xié)作。這不僅涉及到持續(xù)集成 (CI),而且與持續(xù)交付 (CD) 有關(guān)。如今,許多公司都正在投入更多的精力和時(shí)間,來了解整個(gè)軟件開發(fā)流程中有關(guān)自動(dòng)化方面的知識與技能。而 2020 年,他們的注意力將會從持續(xù)集成的管道,轉(zhuǎn)移到 DevOps 的裝配線上。
裝配線的優(yōu)勢:
強(qiáng)大的嵌套可見性
原生集成
快速實(shí)現(xiàn)和擴(kuò)展 “as-code (即代碼)” 的理念
具有完美的互操作性,可實(shí)現(xiàn)持續(xù)交付
基于團(tuán)隊(duì)的商業(yè)智能與分析
3. 人工智能 (AI) 的興起,數(shù)據(jù)科學(xué)的發(fā)展
越來越多的由人工智能驅(qū)動(dòng)的應(yīng)用程序,將推動(dòng)數(shù)據(jù)科學(xué)團(tuán)隊(duì)在其工作流程中尋找 DevOps 理念的實(shí)踐價(jià)值。DevOps 方法有望成為處理自動(dòng)化管道,以及維護(hù)與測試生產(chǎn)鏈中多個(gè)已部署模型的主要選擇。
為了提高開發(fā)、部署和管理那些由 AI 和 ML (機(jī)器學(xué)習(xí)) 驅(qū)動(dòng)的應(yīng)用效率,數(shù)據(jù)科學(xué)和開發(fā)團(tuán)隊(duì)將不斷加強(qiáng)緊密協(xié)作,相輔相成地提高彼此的技能與交付水平。2020 年, DevOps 團(tuán)隊(duì)將在自動(dòng)化的幫助下,通過各種工作流的完美交付,發(fā)掘出更多潛在的客戶。
4. “一切即為代碼 (Everything as Code)”的概念
不可否認(rèn):程序編碼如今已經(jīng)成為了 IT 部門、及其服務(wù)系統(tǒng)背后的主要支柱之一。因此,充分了解各種 DevOps 工具、以及對應(yīng)的自動(dòng)化腳本,在企業(yè)的日常軟件開發(fā)過程中都能夠起到至關(guān)重要的作用。2020 年,此類實(shí)踐將會在各種項(xiàng)目的落地過程中占據(jù)主導(dǎo)地位。我們可以毫不夸張地說:企業(yè)業(yè)務(wù)的前景、以及產(chǎn)品的未來品質(zhì)都會或多或少取決于開發(fā)人員、測試人員和運(yùn)營人員的綜合技術(shù)能力。
由于 DevOps 旨在縮減交付周期,因此我們需要引入那些可被用于提高軟件生產(chǎn)周期效率的優(yōu)質(zhì)代碼。此處“一切即為代碼”的思想是:在 DevOps 的內(nèi)部完成代碼的 SDLC實(shí)踐。2020 年,面對 DevOps 這股浪潮的持續(xù)推進(jìn),如果軟件測試人員還不開始著手學(xué)習(xí)代碼編程,以及編寫測試腳本的話,他們來年可能會更加舉步維艱。
5. 使用無服務(wù)器架構(gòu)
無服務(wù)器架構(gòu),特別是由云服務(wù)負(fù)責(zé)的整體架構(gòu),會將 DevOps 提升到一個(gè)更高的水平。由于微服務(wù)是一種獨(dú)立的服務(wù)模式,因此它在出現(xiàn)問題時(shí),不會產(chǎn)生連帶式的依賴關(guān)系,也不會破壞其他現(xiàn)有的服務(wù)系統(tǒng)。因此,有了此類體系結(jié)構(gòu),軟件開發(fā)人員可以將精力更加集中在手頭的應(yīng)用程序上。BaaS (Backend as a Service,后端即服務(wù)) 和 FaaS (Function as a Service,功能即服務(wù)) 是無服務(wù)器架構(gòu)中的兩個(gè)關(guān)鍵方面。通過采用無服務(wù)器架構(gòu),企業(yè)能夠節(jié)省時(shí)間和降低成本,進(jìn)而確保實(shí)現(xiàn)各種彈性的工作流程。
6. 更多嵌入式安全性
隨著安全漏洞數(shù)量的急劇增長,以及各類安全事件給公司聲譽(yù)所帶來的嚴(yán)重影響,更多的企業(yè)乃至國家開始意識到網(wǎng)絡(luò)安全的重要性。我們在享受 DevOps 快速交付效率的同時(shí),需要讓安全性成為設(shè)計(jì)規(guī)范的一部分,從一開始就充分考慮到安全性的全面需求。只有將安全要素植入軟件產(chǎn)品的“基因”之中,才不會疲于亡羊補(bǔ)牢。
2020 年,DevSecOps 將持續(xù)呈現(xiàn)上升的趨勢。開發(fā)團(tuán)隊(duì)將在應(yīng)用程序的開發(fā)生命周期中“左移 (Shift-left)”DevSecOps,通過減少各種程序原生的漏洞,進(jìn)而讓安全性更能匹配業(yè)務(wù)目標(biāo),并提高企業(yè)的聲譽(yù)。DevSecOps 模型假設(shè)項(xiàng)目中的每個(gè)人都會擔(dān)負(fù)起安全方面的責(zé)任。這種軟件開發(fā)方面的通力合作,將有助于減少責(zé)任的推諉,并確保開發(fā)過程安全性與高效性。
7. Kubernetes 將有長足的發(fā)展
Kubernetes 因其自身的性能和易用性,已經(jīng)成為增長最快的容器技術(shù)。而且 Kubernetes 擁有著廣泛的開源社區(qū)的支持。目前在全球范圍內(nèi),許多 CIO 和技術(shù)專家都已經(jīng)在自己的產(chǎn)品和項(xiàng)目中大量使用到了 Kubernetes。我們預(yù)計(jì)在 2020 年,隨著各類企業(yè)進(jìn)一步通過深度采用容器技術(shù),來運(yùn)行它們的云原生應(yīng)用,Kubernetes 將會迎來更廣的普及、更大的發(fā)展。當(dāng)然,基于 Kubernetes 的容器編排軟件也會逐漸替換一些舊的 DevOps 功能。讓我們拭目以待吧。