dsh-k8s-manager:DSH 中的 Lens 風格 Kubernetes 集羣管理插件

前言

DeepSeek Harness (DSH) 採用了插件化架構,旨在爲用戶提供靈活的擴展能力。dsh-k8s-manager 是一個專門爲 DSH 設計的插件,它提供了 Lens 風格的 Kubernetes 集羣管理界面。該插件解決了在瀏覽器環境中管理多個 K8s 集羣時的操作痛點,通過複用本地的 kubectl 和 kubeconfig,實現了無需遠程依賴的集羣管理體驗。

功能特性

  • 多集羣管理:支持添加、切換和刪除多個 kubeconfig,通過頂部下拉框快速切換上下文。
  • 資源瀏覽:支持瀏覽 Pods、Deployments、StatefulSets、DaemonSets、Jobs、CronJobs、ReplicaSets、Services、Ingresses、Endpoints、ConfigMaps、Secrets、PV、PVC、StorageClasses、Nodes、Namespaces 和 Events。
  • Namespace 篩選:在資源列表中按 Namespace 進行過濾。
  • 詳情與日誌:查看任意資源的 YAML 詳情和實時 Logs。
  • 交互式 Shell:利用 xterm.js 和 node-pty 進入任意 Pod 內部進行調試。
  • 寫操作:支持 Restart(重啓)、Scale(擴縮容)和 Edit & Apply(編輯並應用 YAML)。
  • 無遠程依賴:所有操作基於本地已配置的 kubectl,不消耗遠程 API 資源。

安裝與啓用

使用官方安裝命令將插件添加到 DSH Web 配置中:

dsh plugin --profile web add github:MrYangyt/dsh-k8s

安裝完成後,需要重啓 DSH Web 進程以使插件生效:

dsh web

使用方法

  1. 打開 DSH 並新建一個會話。
  2. 在視圖切換欄點擊 Kubernetes tab(與 Chat / Trajectory 並列)。
  3. 點擊頂部工具欄的 Add Config。
  4. 輸入集羣名稱,粘貼 kubeconfig YAML 內容,點擊確認。
  5. 通過頂部下拉框切換不同的集羣。
  6. 在左側資源樹中選擇資源,點擊查看詳情或操作。

添加配置

插件會將每個集羣的配置保存到 ~/.kube/configs/<name>.yaml,並將所有配置合併到主配置文件 ~/.kube/config 中。YAML 中的 context 名稱會自動重命名爲你填寫的集羣名字。

Pod Shell 調試

選擇一個 Pod,打開 Shell tab,選擇 container 並點擊 Connect。插件會嘗試通過 node-pty 啓動交互式終端。如果當前平臺沒有預編譯的 node-pty 二進制文件,插件會自動降級到 kubectl exec -i 模式。

手動刷新

資源列表默認會自動刷新。如果需要手動更新,可以點擊工具欄上的 Refresh 按鈕。

注意事項

  • 二次確認:所有寫操作(Restart、Scale、Apply YAML)在執行前都需要二次確認。
  • 風險提示:執行 Apply YAML 操作時,插件會明確提示“請確保你在測試資源上操作”。
  • 配置路徑:插件不會直接覆蓋你現有的 ~/.kube/config,而是將其作爲備份或合併源,確保原有配置安全。
  • 前置要求:必須先安裝 kubectl 並確保其在系統 PATH 中。交互式 Shell 的完整功能依賴 node-pty,Linux 可能需要 make g++ python3,macOS 需要 Xcode Command Line Tools,Windows 需要 Visual Studio Build Tools。
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜