国产精品chinese,色综合天天综合精品网国产在线,成午夜免费视频在线观看,清纯女学生被强行糟蹋小说

    <td id="ojr13"><tr id="ojr13"><label id="ojr13"></label></tr></td>
        • <source id="ojr13"></source>
            <td id="ojr13"><ins id="ojr13"><label id="ojr13"></label></ins></td>

            Article / 文章中心

            以一致的體驗交付和管理云原生多集群應(yīng)用

            發(fā)布時間:2021-12-27 點擊數(shù):1128
            大家好,很高興能在 KubeCon 中國峰會給大家做分享,今天的主題是“以一致的體驗構(gòu)建和管理多集群應(yīng)用”,主角是 KubeVela 和 OCM,這兩個都是 CNCF 的開源項目。整個演講大致分為三部分,首先介紹云原生應(yīng)用交付和管理的挑戰(zhàn),然后介紹這背后的 KubeVela 和 OCM 技術(shù)原理,最后是整體的最佳實踐,以及一個完整的 Demo。


            01

            背景

            Cloud Native


            隨著云原生生態(tài)的繁榮,Kubernetes 逐漸成為了基礎(chǔ)設(shè)施的標(biāo)準(zhǔn)集成界面,越來越多的基礎(chǔ)設(shè)施能力變成了開箱即用的聲明式 API,CRD Operator[1] 的普及也讓運維能力也逐漸趨向于聲明式和自動化。如圖 1 所示,從底層基礎(chǔ)設(shè)施到上層應(yīng)用開發(fā),如今的 CNCF 生態(tài)[2]中有上千個項目。

            CNCF landscape 生態(tài)

            圖 1. CNCF landscape 生態(tài) - 摘自 2021.12
            然而眾多的選擇是禮物,也是研發(fā)工程師的煩惱。不同的應(yīng)用架構(gòu)涉及到的不同開發(fā)語言、技術(shù)框架、打包方式、制品形態(tài)、云資源、以及運維方式各不相同。軟件生命周期中,開發(fā)、測試、預(yù)發(fā)灰度、生產(chǎn)部署對應(yīng)的環(huán)境和應(yīng)用交付部署體驗也存在很大的不一致。研發(fā)人員切換到云原生技術(shù)棧就涉及大量復(fù)雜的新知識需要學(xué)習(xí),這就好比對著大量操作系統(tǒng)底層的 API 寫程序,缺乏了編程框架和標(biāo)準(zhǔn)庫,讓應(yīng)用開發(fā)事倍功半。


            如何用好云原生繁榮的技術(shù)生態(tài),又能讓業(yè)務(wù)的研發(fā)人員獲得一致的低門檻體驗,同時安全可靠的交付應(yīng)用,是業(yè)界面臨的巨大挑戰(zhàn)。


            01

            業(yè)界的典型做法與挑戰(zhàn)

            Cloud Native


            為了解決應(yīng)用交付的這最后一公里問題,業(yè)界的典型做法主要分為兩大類。


            第一類是在針對自身的業(yè)務(wù)場景基于 Kubernetes 構(gòu)建內(nèi)部的 PaaS 平臺,隱藏 Kubernetes 平臺接口,提供自身平臺 API。這種模式通常在規(guī)模較大的公司,需要有對 Kubernetes 和業(yè)務(wù)都比較精通的團(tuán)隊支撐。但是隨著時間的推移,業(yè)務(wù)場景變得復(fù)雜、需求逐漸增加,內(nèi)部自建的 PaaS 都會面臨擴(kuò)展能力不足、難以維護(hù),最后不得不推翻重做的困境,這個問題在阿里早期的應(yīng)用云原生化改造的實踐過程中尤為明顯。另一方面,規(guī)模較大的公司通常會有不同的業(yè)務(wù)團(tuán)隊,由于頂層設(shè)計不足,不同團(tuán)隊各自構(gòu)建的 PaaS 平臺很容易成為互相獨立的煙囪,大量相似的能力只能重復(fù)建設(shè)、無法復(fù)用,更無法統(tǒng)一管。每個不同場景的不同平臺又給更上層的業(yè)務(wù)團(tuán)隊帶來了新的概念和學(xué)習(xí)負(fù)擔(dān)。

            針對第一類場景存在的問題,業(yè)界逐漸傾向于容器平臺層原汁原味透出 K8s 原生 API,負(fù)責(zé)提供穩(wěn)定的云原生生態(tài)能力,同時不影響靈活性和擴(kuò)展性。應(yīng)用交付通過類似 Jenkins/Gitlab 這樣的 Pipeline ,將應(yīng)用制品打包(如 Helm Chart 等),然后直接部署到容器平臺中,這就延伸出第二類做法。基于傳統(tǒng) CI 生態(tài)工具直接對接容器平臺的模式,如圖 2 所示,這類做法的核心是通過腳本、配置等方式構(gòu)建抽象體系來簡化使用門檻。這個方式目前是業(yè)內(nèi)較為流行的解決方案,其好處分工較為明確,容器平臺層作為 Infra/SRE 團(tuán)隊維護(hù)基礎(chǔ)設(shè)施能力,應(yīng)用交付則充分利用企業(yè)內(nèi)現(xiàn)有的 CI 體系,不需要建設(shè)平臺。

            容器平臺層業(yè)界典型的解決方案

            圖 2. 業(yè)界典型的解決方案
            這種方式一定程度上解決了應(yīng)用管理的問題,對于中小規(guī)模的企業(yè)即使對容器平臺缺乏維護(hù)能力,也可以通過購買云服務(wù)的方式解決,同時也能為業(yè)務(wù)開發(fā)者提供一站式的一致體驗。但主要問題就出現(xiàn)在前面應(yīng)用交付這一環(huán),無論是哪種規(guī)模和場景的企業(yè),都會很快遇到這些挑戰(zhàn):


            • 缺乏自動化,需要大量手工維護(hù)工作。比如由于突發(fā)的網(wǎng)絡(luò)原因、或者由于 Pipeline 系統(tǒng)自身的某個問題,就會中斷所有的發(fā)布并且需要人工介入,缺乏自愈能力。


            • 缺乏統(tǒng)一的應(yīng)用模型。無論是作為應(yīng)用的完整交付物,還是作為應(yīng)用的核心入口(single source of truth),應(yīng)用模型的統(tǒng)一都是極其重要的。缺乏統(tǒng)一的模型描述作為應(yīng)用交付入口,就會導(dǎo)致不同的人可以從多處對系統(tǒng)進(jìn)行變更,例如通過 CI Pipeline 系統(tǒng)、或者直接更改 Kubernetes,時間久了系統(tǒng)的配置會出現(xiàn)很大的不一致,從而引發(fā)故障。


            • 存在安全風(fēng)險。基于 CI pipeline 系統(tǒng)構(gòu)建的應(yīng)用交付,CI/CD 體系的安全域通常不具備隔離性,即 CI/CD 通過一套系統(tǒng)完成,基礎(chǔ)設(shè)施所有集群的秘鑰全都在同一套系統(tǒng)中存儲,一旦被黑客突破容易引發(fā)非常大的系統(tǒng)安全風(fēng)險。如代碼覆蓋率統(tǒng)計工具 Codecov 在今年 4 月份就遭遇了一起安全事故[3],所有使用該產(chǎn)品的項目配置的 CI 秘鑰全部泄露。另一方面,越來越多的開源軟件被采納到企業(yè)的生產(chǎn)系統(tǒng),這些軟件的集成也加劇了安全隱患。


            • 維護(hù)成本高。通過腳本和模板簡化開發(fā)者心智是這種模式的核心,但是腳本和模板本身的維護(hù)如果缺乏開源標(biāo)準(zhǔn)和生態(tài),很快就會缺乏活力,久而久之就變成了再也無人敢碰的神秘代碼,極度依賴這套體系最初的構(gòu)建者經(jīng)驗,難以延續(xù)和迭代。


            所以如何構(gòu)建穩(wěn)定可靠的應(yīng)用交付和管理體系,成為了我們亟需探索的關(guān)鍵。


            03

            如何構(gòu)建穩(wěn)定可靠的

            應(yīng)用交付和管理體系?

            Cloud Native


            如何保證應(yīng)用交付的穩(wěn)定、可靠和安全,我們分別來看解決問題的方法。首先,為了解決大規(guī)模應(yīng)用交付的穩(wěn)定性和可靠性問題,我們從 Kubernetes 的設(shè)計中得到了啟示。


            1 Kubernetes 帶來的啟示
            Kubernetes 有兩個核心理念,一個是聲明式 API,一個是面向終態(tài)的控制循環(huán)。
            聲明式是用戶側(cè)抽象的最佳表達(dá)方式,它可以大大簡化用戶的心智,從描述過程到描述結(jié)果。聲明式為什么可以簡化心智,舉一個吃飯的例子大家就容易理解了,傳統(tǒng)基于過程式的描述就好比你自己在家里吃飯,你要購買食材、研究菜譜,一直到做出來吃到,最后還要洗碗,整個過程是非常復(fù)雜的。而聲明式的描述就是你去餐廳里吃飯,點菜的時候告訴服務(wù)員你想吃的菜是什么,最終餐廳會把你要點的菜端上來給你


             Kubernetes 的控制循環(huán)

            圖 3. Kubernetes 的控制循環(huán)
            另一方面,面向終態(tài)的控制循環(huán)也是保證可靠性的最佳方式,這個設(shè)計原則要求我們的系統(tǒng)具備以下特性:


            • 自動化,即能夠始終面向最終的狀態(tài)去運行,如果沒達(dá)到狀態(tài),就繼續(xù)運行。自動化的特性也保證了我們的系統(tǒng)不會因為一點點不穩(wěn)定就中斷,具備很強(qiáng)的自愈能力。

            • 收斂性,即在系統(tǒng)運行過程中結(jié)果可以向終態(tài)靠攏,每次執(zhí)行都能不斷逼近最終結(jié)果。

            • 冪等性,表示我們多次執(zhí)行同樣的流程要保證結(jié)果是一致的,不會因為執(zhí)行了多次就出現(xiàn)意外的問題。

            • 確定性,表示系統(tǒng)只要運行是正常的,最終能夠不斷執(zhí)行,直到達(dá)成一個確定的結(jié)果。


            這四大特性也是大規(guī)模應(yīng)用交付的核心要素。
            2 應(yīng)用交付安全性的原則


            然后我們來看看安全性的問題,其實核心很簡單,就是像對待生產(chǎn)環(huán)境一樣對待應(yīng)用交付系統(tǒng)的安全性。CNCF 基金會在 2021 年 4 月份也發(fā)布了應(yīng)用交付最佳實踐[4]白皮書[5],其中就提到了應(yīng)用交付的一些安全性原則。
            • 交付環(huán)境隔離,一方面指不同的交付目的地應(yīng)該是隔離的,交付系統(tǒng)不應(yīng)該可以直接訪問所有的 Kubernetes 集群,同時不同的環(huán)境之間也應(yīng)該是隔離的。另一方面,針對 CI/CD 不同應(yīng)用生命周期的階段,安全域也應(yīng)該是隔離的,使用獨立的秘鑰信息。

            • 集成物檢查,這個原則指我們在交付過程中,要對集成的開源工具,使用的依賴包,以及應(yīng)用本身的鏡像做必要的安全檢查。

            • 最小權(quán)限,這個原則大家都比較容易理解,具體到實踐中就是要做權(quán)限的拆分。比如使用 token 而非永久秘鑰,加入必要的審批流程,使用秘鑰管理工具。尤其是云資源的使用,要對秘鑰做必要的權(quán)限拆分,如使用子賬號等機(jī)制,避免一個秘鑰泄露又不能及時回收導(dǎo)致出現(xiàn)單點故障。

            • 審計和安全監(jiān)控,這個原則要求我們的應(yīng)用交付和管理系統(tǒng)本身也要具備很好的可觀測性能力,具備交付行為的審計和整體的安全監(jiān)控。

            3 面向終態(tài)的應(yīng)用交付體系核心要素
            所以總結(jié)下來,一個穩(wěn)定、可靠、安全的應(yīng)用交付系統(tǒng),需要具備的核心要素如下圖 4 所示。


            應(yīng)用交付體系的核心要素

            這個體系的入口是一個完整的應(yīng)用模型,涵蓋不同的交付物、云資源、以及各類環(huán)境編排的配置,它是應(yīng)用交付的統(tǒng)一入口,也是唯一的依據(jù)。


            與此同時,這個應(yīng)用模型采用聲明式的方式面向業(yè)務(wù)用戶,為業(yè)務(wù)層提供針對使用場景的抽象能力,能夠降低用戶的使用門檻,降低底層的 API 的復(fù)雜性,同時具備靈活擴(kuò)展的能力。交付系統(tǒng)通過拉取的方式與聲明式 API 交互,用戶只需要在模型層描述終態(tài),最終交付系統(tǒng)就會朝著這個終態(tài)不斷收斂。


            在交付系統(tǒng)內(nèi)部,要具備編排和部署兩大核心功能。同時這兩大核心功能的背后要始終維持一個面向終態(tài)持續(xù)運行的控制循環(huán),這個控制循環(huán)是自動化和確定性的基石,同時也要具備對交付物、交付流程安全監(jiān)測和審計的能力。


            其中,編排解決的是不同交付物直接的依賴關(guān)系、部署順序、數(shù)據(jù)傳遞以及多集群多環(huán)境配置的問題,然而編排的復(fù)雜性不應(yīng)該暴露給用戶。交付系統(tǒng)的編排執(zhí)行引擎應(yīng)該能夠根據(jù)用戶描述的聲明式終態(tài)自動化的完成編排,而不是讓用戶手動編寫編排的過程。部署則解決的是不同交付的部署,如云資源、Kubernetes 資源,以及多集群的交付問題,需要能夠提供充分的可擴(kuò)展性,保證不同的交付物均可以部署,同時能夠在多集群環(huán)境隔離的安全條件下完成部署。
            04

            下一代云原生應(yīng)用交付與管理

            Cloud Native


            KubeVela 就是完全遵循這套理念構(gòu)建的現(xiàn)代化的應(yīng)用交付平臺,它可以讓你的應(yīng)用交付與管理在當(dāng)今流行的混合、多云環(huán)境中變得更加簡單、輕松、可靠。演進(jìn)至今已有上百位貢獻(xiàn)者參與代碼貢獻(xiàn),吸納了來自阿里、螞蟻、騰訊、字節(jié)、第四范式、Gitlab等一系列不同領(lǐng)域公司的工程實踐,充分利用云原生領(lǐng)域百花齊放的技術(shù)生態(tài)紅利實現(xiàn)應(yīng)用的交付與管理。


            KubeVela 架構(gòu)


            圖 5. KubeVela 架構(gòu)


            1 標(biāo)準(zhǔn)、開放的應(yīng)用模型(OAM)
            KubeVela 背后有一個完整的應(yīng)用模型,那就是 OAM(Open Application Model)。OAM 是阿里和微軟在 2019 年聯(lián)合發(fā)布的應(yīng)用模型,如今已經(jīng)被阿里、微軟、Oracle、Salesforce、騰訊等眾多云廠商實踐到云產(chǎn)品中,同時也被國家信通院立項作為《云計算開放應(yīng)用架構(gòu)》行業(yè)標(biāo)準(zhǔn)發(fā)布。


            OAM 應(yīng)用模型

            圖 6. OAM 應(yīng)用模型
            如圖 6 所示,OAM 模型將復(fù)雜的應(yīng)用交付和管理抽象成應(yīng)用、組件、運維能力,以及工作流這四個核心概念,使得用戶可以通過一份配置文件,描述應(yīng)用交付和管理的全部內(nèi)容。OAM 具備充分的可擴(kuò)展性,滿足應(yīng)用交付到不同云、不同環(huán)境的訴求。同時 OAM 也不綁定 Kubernetes 生態(tài),若開箱即用的 KubeVela 不滿足需求,OAM 社區(qū)也歡迎用戶參與到模型層的建設(shè)中,根據(jù)模型獨立實現(xiàn)。


            2 基于 Kubernetes 的應(yīng)用交付控制平面
            KubeVela 是一個微內(nèi)核的架構(gòu),其核心是一個基于 Kubernetes 的應(yīng)用交付和管理控制平面,具備自愈、冪等、收斂以及確定這四大特性。最小化部署的 KubeVela 只需要 0.5 核以及 200M 內(nèi)存即可支持上百個應(yīng)用的交付。同時 KubeVela 自身也具備一系列開箱即用的插件,支持包括多集群交付、云資源管理、GitOps、Helm chart、可觀測性等一系列功能,甚至包括 KubeVela 自身的 UI 控制臺也是通過插件的方式集成的。
            KubeVela 也不僅局限于 Kubernetes 生態(tài),官方內(nèi)置的云資源插件就可以集成任意的 terraform 模塊,交付不同的云資源,甚至虛擬機(jī)。同時得益于 OAM 模型以及 KubeVela 從設(shè)計之初就嚴(yán)格遵循的可擴(kuò)展性原則,用戶可以輕易的增加和擴(kuò)展生態(tài)的能力。


            3 安全、可靠的多集群管理技術(shù)(OCM)
            KubeVela 背后的多集群技術(shù)也是保證應(yīng)用穩(wěn)定、安全、大規(guī)模交付的核心。我們知道,因為地域,規(guī)模,容災(zāi)等方面的考慮,多集群早已成為企業(yè)內(nèi)部基礎(chǔ)設(shè)施的普遍形態(tài)。然而,Kubernetes 原生的管理能力目前仍然停留在單集群級別。每一個集群可以穩(wěn)定地自治運行,但是卻缺乏橫貫多個集群的統(tǒng)籌管理能力。為了形成一個穩(wěn)定、統(tǒng)一的應(yīng)用交付和管理平臺,需要具備如下能力:


            • 運維管理人員能夠獲知多集群水位的變化,節(jié)點健康狀態(tài)等信息

            • 業(yè)務(wù)負(fù)責(zé)人能夠決策如何調(diào)配應(yīng)用服務(wù)在各個集群中的部署分布

            • 應(yīng)用運維人員能夠獲知服務(wù)狀態(tài),下發(fā)騰挪的策略

            得益于 RedHat 和螞蟻、阿里云共同發(fā)起并開源的 OCM(Open Cluster Management)多集群技術(shù),KubeVela 可以輕松解決多集群、混合環(huán)境下資源、應(yīng)用、配置、策略等對象的生命周期管理問題。OCM 使得用戶在多集群和混合環(huán)境下也能像在單個 Kubernetes 集群平臺上一樣,使用自己熟悉的開源項目和產(chǎn)品輕松交付和管理應(yīng)用。


            OCM 的技術(shù)特點圖 7. OCM 的技術(shù)特點
            與目前已有的多集群技術(shù)相比,OCM 的架構(gòu)在以下方面具有技術(shù)領(lǐng)先優(yōu)勢,滿足用戶對云原生應(yīng)用交付安全、穩(wěn)定、大規(guī)模能力的核心訴求:


            • 模塊化:OCM 管理平臺由管理原語,基礎(chǔ)組件和眾多可擴(kuò)展組件構(gòu)成,這些組件可以像樂高積木一樣自由組合構(gòu)建滿足用戶需求的功能集合。這一理念與 KubeVela 也天然契合,共同為用戶提供了充分的生態(tài)可擴(kuò)展性。

            • 大規(guī)模:OCM的基礎(chǔ)架構(gòu)繼承了 Kubernetes 開放,可擴(kuò)展的特點。正如單一 Kubernetes 集群可以支持?jǐn)?shù)千個節(jié)點一樣,OCM 在設(shè)計上可以支持?jǐn)?shù)千個被管理集群。

            • 安全:OCM 在設(shè)計上以零信任和最小權(quán)限為基礎(chǔ),管理組件和被管理上的 agent 之間的注冊通信采用兩次握手的方式。此外證書的更新,訪問權(quán)限的管理,權(quán)限 token 的分發(fā)也采用和 Kubernetes 類似的設(shè)計,由相應(yīng)的可擴(kuò)展組件通過 Kubernetes 原生 API 方式實現(xiàn)。

            • 可擴(kuò)展性:OCM 提供了可擴(kuò)展組件的編程框架和管理 API,和基礎(chǔ)組件,管理原語一起,能夠方便的將Kubernetes 生態(tài)中的項目遷移到 OCM 多集群管理平臺。通過編程框架,OCM 社區(qū)已經(jīng)在多集群環(huán)境實現(xiàn)了眾多 Kubernetes 的管理能力,也得益于此,KubeVela 與 OCM 可以輕松實現(xiàn)深度集成。


            05

            KubeVela 和 OCM 協(xié)同下的安全、一致的應(yīng)用交付體驗

            Cloud Native


            KubeVela 和 OCM 天生具有互補(bǔ)性。KubeVela 負(fù)責(zé)應(yīng)用層的交付和生命周期管理,OCM 則管理集群基礎(chǔ)設(shè)施資源的生命周期。它們緊密合作在一起提供了應(yīng)用在多集群環(huán)境下交付和生命周期管理的端到端能力。


            跨環(huán)境、多集群交付的一致體驗圖 8. 跨環(huán)境、多集群交付的一致體驗
            如圖 8 所示,使用 KubeVela 和 OCM,用戶在不同環(huán)境的交付過程將完全自動化,節(jié)省大量人工操作。


            • 同一個應(yīng)用,業(yè)務(wù)研發(fā)人員只要描述一次組件,就可以在不同交付環(huán)境下綁定不同運維能力獨立運行,比如開發(fā)環(huán)境可以使用端云聯(lián)調(diào),而預(yù)發(fā)生產(chǎn)環(huán)境可以綁定可觀測性策略等等,無需重復(fù)諸如鏡像、端口、環(huán)境變量等組件級別的參數(shù),大大節(jié)省了心智負(fù)擔(dān)。

            • 另一方面,在控制平面,不同一個應(yīng)用的跨環(huán)境部署可以在一次交付過程中自動化完成,可以自助選擇多種審批方式或是全自動執(zhí)行。

            更為重要的是,基于 KubeVela 和 OCM,可以構(gòu)建完全基于訂閱模式的安全 GitOps 多集群應(yīng)用交付。

            GitOps 模式下的安全應(yīng)用交付


            圖 7. GitOps 模式下的安全應(yīng)用交付


            如圖 7 所示,CI 的流程還是沿用之前的模式,但是 CD 這一側(cè)則描述一個獨立的配置倉庫,首先從 Git 倉庫配置層面,兩個倉庫的權(quán)限是完全隔離的。通過統(tǒng)一的應(yīng)用模型,用戶可以在配置倉庫完整的描述應(yīng)用,同時 KubeVela 也可以監(jiān)聽完整應(yīng)用描述的變化,從而主動拉取應(yīng)用配置。這個過程中,Git 倉庫不持有交付系統(tǒng)的任何秘鑰。在交付系統(tǒng)完成編排以后,管控數(shù)據(jù)則通過 OCM 完成下發(fā),整個過程也是由運行時集群主動拉取的,交付系統(tǒng)沒有中央管控任何子集群的秘鑰。管控數(shù)據(jù)下發(fā)到子集群以后,就可以由子集群的 GitOps agent 主動獲取交付制品的變化,形成新的自治。


            我們可以看到,每一個環(huán)節(jié)都獨立工作、自成體系,每一個環(huán)節(jié)都根據(jù)需要進(jìn)行授權(quán)和審核,安全可靠。KubeVela 和 OCM 的協(xié)同可以統(tǒng)一編排和管理混合云、多集群、以及邊緣應(yīng)用,最終實現(xiàn)云邊協(xié)同的安全交付。


            06

            開啟你的端到端平臺化之路

            Cloud Native


            在我們了解了以 KubeVela 和 OCM 為核心的應(yīng)用交付和管理引擎設(shè)計原理以后,我可以看到,這一套模式帶給我們的最大好處是自動化、低門檻以及安全性。那么如何展開實踐呢?從最新的 KubeVela v1.2 版本開始,我們增強(qiáng)了端到端的完整用戶實踐,你可以通過可視化的方式交付和管理應(yīng)用。


            首先,KubeVela 的架構(gòu)是完全基于微內(nèi)核以及高可擴(kuò)展的模式打造的,它可以幫助用戶以最小的成本,按需構(gòu)建自己的云原生解決方案。如下圖 8 所示是 KubeVela 的插件管理頁面,包括 KubeVela 自身的 UI 功能以及 OCM 多集群功能,都是 KubeVela 的插件,在微內(nèi)核的基礎(chǔ)上,用戶可以任意定制和切換自己的擴(kuò)展功能。同時,它也幫助用戶敏捷地獲取更多的云原生生態(tài)能力,幫助企業(yè)更好的實現(xiàn)資源管理、 DevOps 、應(yīng)用治理等場景。實現(xiàn)層面,KubeVela 的插件體系完全基于開源社區(qū)的模式共建互助,一切提交到社區(qū)插件倉庫[6]的內(nèi)容,就會自動化的被 KubeVela 內(nèi)核發(fā)現(xiàn),我們相信在不久的將來其即可有眾多的選擇。

            KubeVela 可視化插件頁面

            圖 8. KubeVela 可視化插件頁面


            KubeVela 也默認(rèn)支持了一系列組件類型,如圖 9 所示,包括基于容器鏡像的應(yīng)用交付,該模式門檻低、無需了解 Kubernetes 知識,適用于大多數(shù)企業(yè)用戶;當(dāng)然也支持 Kubernetes 的 YAML 應(yīng)用,圍繞 OCM 技術(shù)將應(yīng)用交付到多個集群;另外,用戶通過安裝官方維護(hù)的插件,可以獲取到 Helm Chart 包、多種云廠商的云資源等組件類型,并獲得對應(yīng)的完整應(yīng)用交付和管理能力。你可以充分發(fā)揮想象,通過擴(kuò)展,KubeVela 還能交付哪些類型的應(yīng)用呢?

             KubeVela 的組件圖 9. KubeVela 的組件


            KubeVela 端到端的 UI 體系中,也默認(rèn)添加了環(huán)境的概念,支持應(yīng)用開發(fā)和交付生命周期中涉及到的不同環(huán)境,例如開發(fā)、測試、生產(chǎn)環(huán)境等。同一個應(yīng)用在不同的環(huán)境中部署完全隔離,安全可靠,同時又無需用戶重復(fù)配置,給用戶帶來了一致的體驗。同一個環(huán)境中定義交付到多個集群KubeVela 1.2通過可配置的工作流控制交付流程

            圖 11. 通過可配置的工作流控制交付流程


            目前,KubeVela 1.2 已發(fā)布預(yù)覽版本 1.2.0-beta.3[7] ,歡迎社區(qū)用戶下載體驗。


            未來 KubeVela 將更多的提供端到端的完整用戶體驗,豐富更多垂直場景下的能力,朝著開發(fā)者能夠自助完成應(yīng)用交付的方向演進(jìn),讓混合環(huán)境下的應(yīng)用交付就像我們今天使用 App Store 一樣簡單。