今天小編分享的科技經驗:DevOps的進化版?平台工程如何簡化開發并提高交付效率?,歡迎閲讀。
平台工程 ( Platform Engineering ) 作為初生不到三年的技術術語,終于在 2022 年下半年迎來人生中的第一個高光時刻,2022 年也因此成為平台工程大眾認知元年。不僅如此,Gartner 還在其發布的 2023 年 10 大重要戰略技術趨勢報告中,将平台工程作為重要趨勢 ; 同樣也是在 2022 年以 VMware 為代表的廠商在多年耕耘之後開始對平台工程進行系統性實踐……
根據 Gartner 的定義,平台工程指的是一套用來構建和運營、支持軟體交付和生命周期管理的自助式内部開發者平台的機制和架構,其目标在于優化開發者體驗并加快產品團隊為客户創造價值的速度,涉及設計和構建提供通用服務和工具的系統,軟體開發團隊可以使用這些服務和工具來簡化開發過程并提高軟體交付的整體效率。可以説,平台工程專注于通過減少現代軟體交付的復雜性和不确定性來提高開發人員的生產力。
進擊的開發模式和理念
在過去二十年,軟體工程領網域存在一個明顯的趨勢,那就是在產品既要保證客户預期質量,又要快速推向市場的背景下,企業或組織越來越依賴于自動化,角色之間的傳統界限變得越來越小。可以説,從早期的瀑布式開發模式到之後的 DevOps,再到如今的平台工程,都遵循了這一趨勢。
早期的瀑布式開發模式通常将軟體開發的過程分為系統計劃、需求分析、系統設計、系統編碼、系統測試、系統運行和維護 6 個階段,每一階段工作的完成是下一階段工作開始的前提,每一階段都要進行嚴格的評審,保證各階段的工作做得足夠好時才允許進入下一階段。VMware Tanzu ( 業務 ) 大中華區總經理鄧惠鈞表示:" 瀑布式開發過程中不能修改,新的需求也不能加入,這使得一些新的修改需求需要順延至下一個版本,開發效率極低。"
VMware Tanzu ( 業務 ) 大中華區總經理 鄧惠鈞
為了配合企業不斷變多的需求,比較敏捷、快速地開發方式—— DevOps 進入了大家的視野。其實,DevOps 是 Development 和 Operations 的組合詞,是一種重視 " 軟體開發人員 ( Dev ) " 和 "IT 運維技術人員 ( Ops ) " 之間溝通合作的文化、運動或慣例。DevOps 實踐通常涉及自動化軟體交付流程、使用敏捷開發方法以及構建持續改進的文化。這其中,自動化、敏捷快速能夠極大滿足企業開發者的需求。
然而,DevOps 的發展真的有這麼順暢嗎?未必 ! 其實 DevOps 實踐中至今存在諸多痛點,包括文化、團隊、安全、技術等等方面。技術能力跟不上企業需求是痛點之一,鄧惠鈞分析認為,盡管企業制定了相關策略,但礙于企業技術能力達不到要求,使得推行擱置。DevOps 不統一是另一大痛點," 不同開發團隊有自己的偏愛、開發習慣,造成企業重復性開發,從而造成數據孤島。" 鄧惠鈞如是説。
此外,DevOps 還存在安全團隊和持續交付團隊往往獨立運行、信息互動頻繁且效率低導致質量難以保證、溝通工作也多依賴于人工致使信息不對稱和溝通不及時、價值與管理維護成本不對等難題。
應對 DevOps 遇到的挑戰,平台工程有哪些價值?
如何應對這些問題和挑戰?平台工程給出了相應的解答。通常而言,平台工程最核心的載體是軟體開發過程中自助服務的工具鏈和工作流,平台團隊将基礎設施管理自動化,并使開發人員能夠從一個集中管理的技術平台上自助獲取可靠的工具和工作流程。
換而言之,平台工程規模化 DevOps 存在的一些挑戰,其中包括減少在整個應用生命周期内管理復雜工具和基礎設施網絡的負擔。無論是基礎設施配置、流水線、監控還是容器管理等,自助服務平台将所有這些復雜的問題放入黑盒中,進而為開發人員提供開箱即用的所有必要工具。
在筆者看來,平台工程可以解決多種不同的需求,其價值主要體現在以下幾個方面:
首先是可重復性。可以将其理解為樂高式的模塊化,平台工程提供的技術組件和服務可以在多個應用程式之間共享和重用,從而避免了重復開發和維護相似的功能。鄧惠鈞表示:" 可以重復循環利用應用開發的代碼和工具對于公司來説避免了重復開發。"
其次是可擴展性。平台工程提供的基礎設施和服務可以根據客户需求進行快速擴展和更新,以滿足不斷變化的業務需求。" 平台工程建立一個統一的、可持續的解決方案,不是一個單一的為某個項目做成的解決方案。" 鄧惠鈞如是説。
再次是集中化管理。平台工程提供集中化的管理和監控,使客户可以更輕松地管理和維護整個應用程式生命周期,從而提高效率和可靠性。
最後是安全性。平台工程提供的身份驗證、授權和安全性服務可以保護應用程式和客户數據的安全性, 從而降低安全風險。
系統化推進平台工程,VMware 的相關實踐
如今,平台工程依舊火熱。Gartner 預測到 2026 年 80% 的軟體企業都将搭建平台團隊以為内部的工程師提供可復用的服務、組件以及工具來幫助應用交付。然而,今日的平台工程尚處于初步探索的早期階段,還沒有廣泛接受的标準和通用的實踐,仍處于探索、嘗試期。無論如何,平台工程已成為 IT 技術行業的重要趨勢,同時,其發展也離不開涉足平台工程的企業的探索。
VMware 現代化應用事業部技術總監俊剛
作為早期涉足平台工程的企業,VMware 從容器技術、雲原生開始便經營該領網域,并服務眾多相關企業客户。VMware 現代化應用事業部技術總監俊剛表示:" 在去年年底平台工程概念提出之前,VMware 便在其相關的開發者效率提升、應用系統提升等方面付出諸多努力。" 簡單來看,VMware 的平台工程涵蓋基礎架構、包括 IDP 開發者平台和傳統 PaaS 的應用平台,以及包含平台即產品管理方法、平台團隊分工與角色的管理實踐等。
在基礎架構層,VMware 充分面向雲,通過服務目錄方式、資源動态供給方式、彈性方式,幫助企業以高效、安全的方式供給資源。"VMware 早前已将創新的雲原生、容器技術嵌入到基礎架構中,同時采用 Aria 面向企業級數據中心或者雲環境管理工具實現基礎架構的監控相關工作。" 俊剛如是説。
前不久,VMware 還推出了 VMware Aria 平台的整體創新,包括 Aria Graph 驅動的 Aria Hub、CloudHealth 驅動的 Aria Cost 以及 Aria Guardrails,幫助雲運營團隊運用多雲能力獲得有關分布式環境的智能洞察,同時支持企業根據業務優先級别優化應用和基礎架構的成本、性能與安全性。
應用平台是平台工程中的關鍵層級,涉及傳統 PaaS、IDP 開發者平台。其中,在傳統 PaaS 層,CI/CD 流程、鏡像庫、日志分析、多租户、服務目錄管理、微服務框架等都在基礎架構資源之上,面向應用程式的全生命周期管理方式去實現。IDP 開發者平台也開發了諸多平台功能性特性,用于提升開發者效率和體驗。俊剛表示:" 在傳統 PaaS 和 IDP 功能完整組合部分,VMware 提供了名為 Tanzu Application Platform 的全新解決方案。"
不久前,Tanzu Application Platform 也做出版本更新,Tanzu Application Platform 1.5 的新功能支持企業通過一套豐富的開發者工具更加快速、安全地構建和部署更多軟體,為企業量身定制,提供了預先鋪設且更加安全的黃金生產路徑,同時,加強了端到端應用安全,簡化了開發人員和平台工程體驗,并擴展了對領先第三方集成的支持,為客户提供開箱即用、經過擴展的安全工具選擇。
在管理實踐層,VMware 正在用全新的下一代超越 DevOps 理念與方式進行管理,發布平台即產品的管理方法,将 IT 系統通過平台理念進行建設,并進行相應的推廣。俊剛表示:" 為了應對不斷變化的需求,企業傳統的穩定不變的平台理念需要做出改變,要将平台做成產品,這就是平台即產品的管理方法。" 與此同時,VMware 也組建了 Tanzu Labs Services 實驗室團隊,該團隊凝練針對平台工程的新型管理方法和工程實踐,為企業提供更多深入的服務。
寫在最後
如今,平台工程仍處于發展的早期階段,能否被廣泛接受還有待觀察。但是,作為 IT 技術行業的重要趨勢,平台工程正在不斷發展壯大。并且随着越來越多的企業尋求提高其軟體開發和交付流程的效率和有效性,平台工程也将得到更廣泛地采用。在這個過程中,離不開開拓者的持續探索,不斷優化平台工程,助力企業提高效率、降低成本和提高敏捷性。