深入解讀:KubeVela 與 PaaS 有何不同?
備注:本文所提到的 PaaS,既包括 Heroku 這樣的經(jīng)典 PaaS 產品,也包括各種各樣的基于 Kubernetes 的“云原生” PaaS。它們雖然底層實現(xiàn)不同,但是對用戶提供的使用接口和體驗是相似的。但 OpenShift 是一個例外,作為一個比 Kubernetes 本身還復雜的項目,OpenShift 不屬于本文所討論的簡單易用、面向用戶的 PaaS 之列,而是一個地道的 Kubernetes 發(fā)行版。

為什么說 KubeVela 不是 PaaS?
能否幫助我運行一個 定時任務? 能不能幫我運行一個 OpenKruise 的 CloneSet 工作負載? 能不能幫我運行一個 MySQL Operator? 能不能根據(jù)我的自定義 metrics 來做水平擴容? 能不能基于 Flagger 和 Istio來幫我做漸進式灰度發(fā)布? 能不能 ……

而且,大家設計和制作任何 Workload Type 和 Trait 的定義文件,只要存放在 GitHub 上,全世界任何一個 KubeVela 用戶就都可以在自己的 Appfile 里使用這些能力。具體的方式,請參考 $ vela cap (即:插件能力管理命令)的使用文檔。
應用平臺本身架構徹底模塊化,其所有的能力都是可插拔的,而平臺核心框架通過模型層提供標準化的能力封裝與裝配流程。 該流程能夠無縫接入云原生生態(tài)中的任何應用管理能力,使得平臺工程師完全專注于能力本身的研發(fā)和基于該模型的能力封裝過程,使平臺團隊在為用戶帶來簡單易用的平臺層抽象的同時,快速、敏捷地響應用戶千變萬化的應用管理訴求。

KubeVela 整體架構與能力可插拔機制

Step 1:將平臺能力注冊為 OAM 對象



如何定義能力之間的沖突關系與協(xié)作關系? 如何快速的定義 CUE 模板文件? 如何基于 CUE 語言定義出功能強大的“能力模塊”,然后把這些模塊安裝到 KubeVela 中? 等等 ……

總結
作者簡介
鄧洪超??阿里云高級技術專家, 人稱 “Kubernetes Operator 第二人”,OAM 與 KubeVela 項目核心維護者。
?點擊屏末?|?閱讀原文?|?即刻學習評論
圖片
表情
