日前,KubeSphere v4 釋出,相較於之前的版本,新版本在架構上有了較大的變化。其中,有一個新的概念——擴充套件元件。
本文我們將針對擴充套件元件做一個詳細的說明,讓大家對擴充套件元件能夠了解、理解和絲滑使用。
關於 KubeSphere v4 的介紹,請閱讀本文:KubeSphere v4 開源併發布全新可插拔架構 LuBan。
如何安裝 KubeSphere v4,請參考本文:KubeSphere v4 安裝指南。
擴充套件市場介紹
KubeSphere 擴充套件元件用於擴充套件 KubeSphere 的平臺能力,使用者可在系統執行時動態地安裝、解除安裝、啟用、禁用擴充套件元件。
監控、告警、通知、專案閘道器和叢集閘道器、卷快照、網路隔離等功能,將由擴充套件元件來提供。
擴充套件元件的方式,解決了 KubeSphere 之前版本諸如“發版週期長”、“程式碼耦合”、“系統資源佔用過多”等問題。使用者可以根據自己的需求來安裝和啟用擴充套件元件,真正做到按需使用,實現輕量化。另外,使用者還可以根據自己的需求進行定製和擴充套件,以滿足不同的設計和功能要求。
目前,我們已經開源了 21 個擴充套件元件,您可以根據對應 v3.4 中的功能決定是否安裝,分別是:
擴充套件元件名稱 | 對應 v3.4 功能點 | 新增功能點 | 掛載位置 |
---|---|---|---|
KubeSphere 網路 | IP池、網路隔離 | 無 | 專案、企業空間、叢集管理頁面左側導航欄 |
KubeSphere 應用商店管理 | 應用上架稽核,chart 包上傳 | 全域性應用例項管理 | 九宮格,企業空間導航 |
KubeSphere 儲存 | 儲存類授權規則,PVC 自動擴容,快照 | 無 | 叢集和專案的左側導航欄 |
KubeSphere 服務網格 | 灰度釋出 自制應用 |
無 | 專案管理頁面左側導航欄 |
KubeSphere 多叢集代理連線 | 使用代理連線模式納管叢集 | 無 | 新增叢集模式選擇下拉框 |
KubeSphere 閘道器 | 專案、企業空間、叢集閘道器 | 建立 Ingress 時支援配置 Ingress class | 專案、企業空間、叢集管理頁面左側導航欄 |
DevOps | 流水線、持續部署、程式碼倉庫、S2I/B2I | 無 | 企業空間左側導航欄 |
KubeEdge | 邊緣計算 | 無 | 叢集左側導航欄 |
聯邦叢集應用管理 | 聯邦專案以及聯邦應用 | 無 | 企業空間左側導航欄 |
OpenSearch 分散式檢索與分析引擎 | OpenSearch | 無 | 無掛載點,直接暴露服務進行訪問 |
Grafana for WhizardTelemetry | - | 新增擴充套件,增強 WhizardTelemetry 可觀測平臺的視覺化能力 | 無掛載點,直接暴露服務進行訪問 |
Grafana Loki for WhizardTelemetry | - | 部署 Grafana Loki | 無 |
WhizardTelemetry 資料流水線 | 提供日誌、事件、審計等資料收集能力,用以替代 FluentBit | 無 | 無 |
WhizardTelemetry 平臺服務 | 提供監控、日誌、審計、事件、通知查詢介面 | 無 | 無 |
WhizardTelemetry 告警 | KubeSphere 告警 | 無 | 叢集和專案的左側導航欄 |
WhizardTelemetry 事件 | KubeSphere 事件 | 支援使用 Loki 作為後端儲存 | ⼯具箱 |
WhizardTelemetry 日誌 | KubeSphere 日誌 | 支援使用 Loki 作為後端儲存 | ⼯具箱、叢集設定 |
WhizardTelemetry 監控 | KubeSphere 監控 | 增強叢集概覽與專案概覽頁面監控 | 叢集和專案的左側導航欄將顯示監控告警,可檢視叢集狀態等,叢集、企業空間、專案下等諸多頁面也將顯示相關監控資料 |
WhizardTelemetry 通知 | KubeSphere 通知 | 支援使用 Loki 作為通知歷史的後端儲存。通知只需要在 host 叢集部署了 | 平臺設定左側導航欄 |
Metrics Server | 視覺化建立和管理 HPA | 無 | 工作負載(Deployment/SatetfulSet) 詳情頁支援視覺化建立和管理 HPA |
Gatekeeper | 安全准入策略管理 | UI 支援 版本更新 |
叢集管理頁面左側導航欄 |
擴充套件元件倉庫:https://github.com/kubesphere-extensions/ks-extensions/
您可以在擴充套件元件倉庫中瞭解每個擴充套件元件的具體功能以及詳細的安裝及使用方法。
注意:擴充套件市場不等同於應用商店,兩者的對比,可參考對比文件。
關於應用商店的使用方法,詳見文章 KubeSphere v4 應用商店配置指南。
擴充套件元件使用方式
KubeSphere v4 除賬戶、許可權、租戶、實時監控和日誌功能外,其他功能都以擴充套件元件提供且不預設安裝。
在安裝完成後,請從左上角“擴充套件市場”導航選單進入擴充套件市場,按需開啟擴充套件元件。
💡 如果擴充套件市場是空的,怎麼排查?
kubectl -n kubesphere-system get deploy extensions-museum
檢查本地擴充套件元件倉庫是否正常 Runningkubectl describe repository.kubesphere.io extensions-museum
檢查擴充套件元件倉庫是否正常同步- 主動觸發同步
kubectl patch repository extensions-museum --type=merge -p '{"status":null}'
接下來以 Gatekeeper 擴充套件元件為例進行演示。
開啟需要安裝的擴充套件元件詳情頁面:
依次點選“管理”、“安裝”,選擇合適的擴充套件元件版本:
對擴充套件元件進行配置:
點選開始安裝:
等待安裝完成後點選下一步,選擇需要開啟擴充套件元件的目標叢集:
對目標叢集中擴充套件元件進行差異化配置,在差異化配置頁籤,分別編輯選中叢集的 YAML 配置,也可不修改,使用初始預設配置。點選確定,開始配置叢集 Agent:
等待擴充套件元件叢集 Agent 安裝完成後重新整理頁面:
安裝完成後,預設啟用該元件。您可以在擴充套件中心對擴充套件元件進行啟用、禁用、配置變更、解除安裝等操作:
不同的擴充套件元件會有不同的整合方式,有的會將擴充套件元件的功能入口放在頂部導航欄,有的擴充套件元件會將功能入口放在企業空間或專案的側邊欄,有的擴充套件元件會將功能入口放在快捷訪問入口。
還是以 Gatekeeper 擴充套件元件為例,擴充套件元件安裝完成之後,進入到叢集管理頁面,從左側導航欄可以進入擴充套件元件的功能入口。
檢視擴充套件元件的預設配置:
目前官網文件也已更新,詳細介紹瞭如何使用 KubeSphere 的各個擴充套件元件,您也可以參考。
開發自己的擴充套件元件,創造屬於您自己的價值
社群目前正在逐步釋出開源的擴充套件元件,為各位使用者提供更多的功能,讓各位使用者有更多的選擇。同時您可以開發自己的擴充套件元件,並將其上架到 Marketplace,為其定價,如果是確實有價值的擴充套件元件,相信您可以收穫到對應的回報。
目前,已經有一位參與開源之夏的學生貢獻者張豈明,開發了一款擴充套件元件 Pod Status Analysis Tool,地址:https://github.com/kubesphere-extensions/ks-extensions-contrib/tree/main/pod-analyzer。
貢獻倉庫:https://github.com/kubesphere-extensions/ks-extensions-contrib
開發指南:https://dev-guide.kubesphere.io/extension-dev-guide/zh/
總結
以上就是擴充套件元件使用的方法說明。如果您在使用過程中出現問題,可去論壇搜尋是否有解答,如沒有,可在論壇提問:https://ask.kubesphere.io/forum/。