DevOps 2020:值得關注的九大發展趨勢
軟件開發一路走來先后經歷了不同發展階段,從以往的瀑布式方法到敏捷交付,再到 DevOps,軟件開發從未停止前進的步伐。以 Kubernetes 為例,作為推動 DevOps 的核心助力之一,這款容器編排工具實現了多主集群選項的標準化,并帶來了新一輪生產力提升。
目前,DevOps 已經實現了代碼與流水線層面的自動化。隨著 AI 技術在 2020 年逐步成為常態,開發人員將借助 AI 工具獲取到更多的大數據管理控制權;當數據庫管理與 DevOps 結合之后,可供我們分析的大數據素材就越多,軟件功能也會越豐富,因此,在未來,我們可以看到更多 DevOps 與各類數據庫管理方案的集成。
在本文中,我們將探討在 2020 年值得關注的 DevOps 九大未來發展趨勢。
1. DevOps 的自身優勢有哪些?
根據百度百科的解釋,DevOps 是一種重視“軟件開發人員(Dev)”和“IT 運維技術人員(Ops)”之間溝通合作的文化、運動或慣例。透過自動化“軟件交付”和“架構變更”的流程,來使得構建、測試、發布軟件能夠更加地快捷、頻繁和可靠。其主要優勢體現一下三個方面:
從軟件開發到部署,DevOps 能夠顯著減少整個軟件交付流程當中所需要的人手數量,從而降低時間需求與潛在錯誤。如今,在 DevOps 周期當中使用自動化測試工具已經成為很多開發者的默認選項。
由于開發人員與運營團隊團結在統一的 DevOps 文化之下,因此以往常見的溝通不暢與工作沖突能夠得到有效緩解。
隨著 DevOps 的實施,我們可以在開發周期早期快速解決 bug 修復問題。
除此之外,DevOps 的優勢還在于允許開發者在較短時間內部署新代碼、快速更新并完成升級等等。
2. 2020 年 DevOps 九大發展趨勢
作為 2020 年需要重點關注的技術方向,我們總結了在新的一年中,DevOps 的九大最新發展趨勢。
1. 充分運用機器學習的力量
機器學習與人工智能已經成為數字化領域的焦點。在未來幾年當中,隨著 AI 技術的進一步普及,DevOps 也將迎來智能化升級。
如今,可用數據總量正快速增長,AI 技術將幫助 DevOps 從大數據處理當中得到實際助益,進而通過之前難以想象的方式改善應用程序開發流程(以及相關分析與研究流程);已經實現自動化的 CI/CD 流水線也將完成自動化提升,最終將流程內的人工干預需求削減至最低水平。雖然 AI 與 ML 技術的具體實現仍將充滿挑戰,但由此帶來的成果十分值得期待。
鑒于此,自動化測試框架的質量提升將成為新一年內必須達成的核心目標。如今,LambdaTest 等自動化測試解決方案的出現不僅為用戶提供堅實的基礎設施,而且附帶一系列補充性功能,足以在增加跨瀏覽器測試體驗的同時幫助開發者更快交付軟件產品。
2. 云服務供應商的地位將進一步提升
2020 年,云服務供應商將更加專注于無服務器 DevOps 解決方案,同時將會迎來相應客戶群體的爆發式增長。這類解決方案不僅具備顯著的成本效益,同時也降低了 DevOps 的實施門檻。開發人員無需維護運行代碼的硬件與軟件——一切交給云服務商,用戶可以集中精力搞開發。
3. Compliance-As-Code:DevSecOps
隨著惡意攻擊者的持續肆虐,安全性將在新一年中繼續成為人們的關注重點。開發人員目前正在全面而徹底地貫徹合規性保障,同時著力改善 DevOps 中的安全性水平。對于發現安全漏洞之后如何發布更新代碼,開發者們一直保持著警惕的心態。DevSecOps 的出現有望解決這一問題,并在 2020 年逐步在更多業務環境中發揮重要作用。
4. 模塊化軟件:微服務
2020 年,越來越多的企業將逐步告別大型單體式應用程序,轉而迎接模塊化應用程序的興起。模塊化應用程序,就是將以往的單體式應用程序拆分為若干個邏輯模塊。這意味著開發者能夠獨立更新各個模塊,且不必擔心對應用程序的整體穩定性造成破壞。
簡而言之,到 2020 年,微服務架構的普及度將進一步提高。
5. 推動 CI/CD 流水線的實現
為了將 CI 與 CD 原則推向極致,我們需要在 DevOps 情境之下,彌合軟件交付環境中各協作部門之間的對接鴻溝。開發人員、測試團隊、運營團隊、SecOps 團隊乃至軟件版本管理團隊等,都需要以有組織的方式進行協調,從而推動 CI/CD 流水線的真正實現。
6. 編碼將成為最重要的核心技能
自動化無疑是 DevOps 領域的重中之重。截至目前,CI/CD 流水線仍然需要大量人為干預。展望新的一年,這種人為干預有望得到進一步削減。腳本編寫、機器學習應用以及全面自動化都將成為常態,同時這也意味著運營團隊也需要加入腳本編寫大軍。此外,測試人員也需要掌握編碼技能,否則將無法融入新的軟件開發體系。
7. 進一步關注左移策略
隨著安全問題的快速升級,左移(shift-left)策略的重要性也將大大提高。管理員不再需要坐等產品開發出現了 bug 或者安全漏洞之后才被動介入;相反,開發人員能夠主動檢查流水線中的安全問題,并采取適當的應對措施。過去一年中,這方面舉措已經開始興起,并將在 2020 年內得到更多人的認同。這種左移策略還將幫助我們在開發周期早期,快速適應可能出現的一切產品變更。
8. 基礎設施即代碼
隨著云服務采用率的上升,IaaS 需求也將水漲船高。開發人員不再需要配置單獨的服務器、數據中心以及虛擬機——所有內容都將以腳本的形式編寫完成。
以此為基礎,軟件開發相關成本將逐步降低,并不斷強化此類編碼基礎設施的靈活性。無論各位管理員身處何地,都能隨時使用基礎設施資源。另外,隨著基于邏輯的運營方法越來越受到關注,FaaS 也將保持增長。事件驅動型服務器容量使用方式將成為常態——換句話說,由于全部內容都將遵循嚴格的“If-This-Then-That”邏輯,云服務器管理負擔也將隨之消散。以此為基礎,云服務器自身將能夠準確判斷何時需要提供更多計算容量,何時可以降低容量供應以控制運營成本。
9. 數據庫管理的興起
DevOps 已經全面實現了代碼與流水線的自動化。隨著 AI 在 2020 年的普及,開發人員將借助 AI 工具獲取更為靈活多樣的大數據管理控制能力。這意味著數據庫管理將與 DevOps 流程深度結合。分析的大數據素材越多,軟件功能也就越豐富。DevOps 體系也將迎來新成員——數據庫管理。
3. 總結
DevOps 之所以令人著迷,核心就在于其強大的適應性。由于大部分 DevOps 工具屬于開源項目,因此企業可以根據自身需求對工具做出微調。Kubernetes、Docker 以及 Jenkins 都屬于開源成果,而且這種開源趨勢也將在 2020 年繼續保持下去。有趣的是,曾經將開源稱為“癌癥”的微軟公司現在也開始支持開源工具甚至是 Linux Kernel。新的一年當中,我們應該會迎來開源工具與操作系統的又一輪偉大崛起。
幾年之前,Kubernetes 曾推出一項革命性的改進——多集群聯合,這一重大成果將在未來幾年內持續普及。從目前來看,現有軟件開發方法還無法發揮 DevOps 的全部潛能,但隨著 AI 與云服務的興起,DevOps 文化終將成為新的客觀標準。雖然 2020 年才剛剛拉開帷幕,但相信我們將踏實穩健地向著這個方向邁進。
2020 年,DevOps 領域將迎來一系列有趣的變化,但可以肯定的是——DevOps 仍將保持重要地位,而且是愈發重要的市場地位。因此,我們在這里建議大家深入學習 Kubernetes、Docker 以及其他 DevOps 工具,相信這方面技能將成為新一年中驅動職業生涯發展的強勁動力。