隨著 DevOps 的成熟,在其概念和思維方式的指導(dǎo)下也衍生出了 DevSecOps、AIOps、SecOps、GitOps 等開發(fā)模型。GitOps 是其中的一個,該模型旨在使開發(fā)人員能夠使用 git 創(chuàng)建 CI/CD 流程來自動化多云和多容器編排集群的開發(fā)和運營。
在 GitOps 開發(fā)流程中,包管理是持續(xù)交付過程中的重要環(huán)節(jié)。
Carvel 項目是由 VMWare 開源的一套云原生開發(fā)工具集,提供了一套遵循 Unix 哲學(xué)的工具來幫助開發(fā)者將應(yīng)用構(gòu)建和部署到 Kubernetes 集群。每個工具只做一件事情,可自由組合,這些工具包括:
ytt:通過YAML結(jié)構(gòu)而不是文本文檔為Kubernetes配置生成模板和覆蓋
kapp:將多個 Kubernetes 資源當做一個“應(yīng)用”一樣進行管理,比如安裝、升級和刪除等操作
kbld:以不可變的方式在 Kubernetes 配置中構(gòu)建或引用容器鏡像
imgpkg:通過 Docker 鏡像倉庫來打包和遷移應(yīng)用程序的容器鏡像及其配置文件
kapp-controller:符合 GitOps 理念的包管理器,實現(xiàn) K8s 應(yīng)用程序與包的持續(xù)交付
vendir:聲明性地說明目錄中應(yīng)該包含哪些文件
其中,kapp-controller 是一個輕量級、聲明式的包管理器,專注于部署過程,并且可以與 ytt、kustomize、helm template 等工具配合使用,負責(zé)在 Kubernetes 集群中安裝和管理軟件的生命周期,用戶無需了解其內(nèi)部實現(xiàn)細節(jié)。
kapp-controller 利用了包和包存儲庫的概念。在高層次上,包是版本化的元數(shù)據(jù),它通知 kapp-controller 如何獲取、模板化和安裝底層軟件內(nèi)容。這些內(nèi)容通常由配置和容器鏡像組成,它們被捆綁在一起并存儲在某個位置,比如 OCI 鏡像倉庫、git repo、http 服務(wù)器等,而 kapp-controller 可以自動處理安裝和管理這些內(nèi)容細節(jié)。
一旦作者創(chuàng)建了許多包的集合,就可以使用包存儲庫來捆綁它們并通過 OCI 鏡像倉庫分發(fā)它們。這允許消費者發(fā)現(xiàn)包的集合,并快速地將它們提供在他們的集群上以供安裝。從這里,用戶可以選擇他們想要安裝的軟件包,kapp-controller 將安裝它們并保持版本更新。
總而言之,kapp-controller 的聲明式 API 和分層方法能夠幫助開發(fā)者構(gòu)建、部署和管理自己的應(yīng)用程序。它還有助于將開發(fā)好的軟件打包成易于分發(fā)的軟件包,并使用戶能夠在 Kubernetes 集群上發(fā)現(xiàn)、配置和安裝這些軟件包。
若想了解更多 Carvel 項目信息以及 Kubernetes 技術(shù)發(fā)展趨勢,敬請關(guān)注 12 月 9 日 - 10 日舉辦的 KubeCon + CloudNativeCon + Open Source Summit China 2021 線上虛擬大會。VMWare 是本屆大會的黃金贊助商,對本次活動提供了大力的支持。屆時還將有來自 VMWare 的云原生技術(shù)專家為大家?guī)砭实募夹g(shù)分享:
議題簡介:等等,您在 Kubernetes 上運行打包的應(yīng)用程序,但您還在從命令行更新它們?這似乎不對,不是嗎?
今天,我們可以取代傳統(tǒng)的“命令式”包管理方法,使用 Kubernetes 來確保打包的應(yīng)用程序以我們需要的方式自動更新。想要使用一個軟件包的最新版本,但總是自動地為另一個軟件包選擇補丁版本嗎?想要利用 GitOps 來管理應(yīng)用程序更新嗎?是的,您可以使用輕量級、易于使用的 Kubernetes 工具。而這僅僅是開始,加入我們一起看看 Carvel 項目團隊如何重新構(gòu)想 Kubernetes 的軟件包管理,為您帶來一種現(xiàn)代的、“聲明式”的方式對打包的應(yīng)用程序及其依賴進行端到端的自動化生命周期管理。
KubeCon + CloudNativeCon + Open Source Summit China 2021 由云原生計算基金會 CNCF 主辦。作為云原生領(lǐng)域的頂級技術(shù)盛會,歷年的 KubeCon + CloudNativeCon + Open Source Summit China 都匯聚了國內(nèi)外最活躍的開源云原生社區(qū)、最先進的技術(shù)代表與行業(yè)的最佳落地實踐,推動云原生計算領(lǐng)域的知識更新和技術(shù)進步。本屆大會的議程安排已全面上線,更多詳情請查看大會官網(wǎng)。
(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準確性及可靠性,但不保證有關(guān)資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責(zé)。本網(wǎng)站對有關(guān)資料所引致的錯誤、不確或遺漏,概不負任何法律責(zé)任。
任何單位或個人認為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權(quán)或存在不實內(nèi)容時,應(yīng)及時向本網(wǎng)站提出書面權(quán)利通知或不實情況說明,并提供身份證明、權(quán)屬證明及詳細侵權(quán)或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關(guān)文章源頭核實,溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。 )