Kula 是一款輕量級且自包含的 Linux® 伺服器監控工具。
它不依賴任何外部資料庫,僅需單一二進位檔即可部署並立即使用。
Kula 每秒透過直接讀取 /proc 和 /sys 來收集系統指標,並將數據存入內建的分層環形緩衝存儲引擎,透過即時的網頁使用者介面儀表板以及終端文字介面(TUI)提供服務。
注意:監控 NVIDIA GPU 可能需要額外設定,請參考 GPU 監控相關說明。
Kula 採用自訂的高效能環形緩衝存儲系統,將指標直接寫入固定大小的二進位檔案。由於檔案容量有限,新的數據會自動覆寫最舊的資料。啟動時,Kula 會還原最新樣本快取並重建任何待處理的彙總緩衝區,以便在重啟後繼續提供近期數據並完成分層彙總。
為了最大化效率,Kula 採用多層架構,智慧地對較舊資料進行降採樣:
前端為嵌入二進位檔的單頁應用程式,基於 Chart.js 並搭配自訂 SVG 儀表,透過 WebSocket 連線以獲取即時更新,並在較長時間範圍內回退至歷史 API。功能包括:
Kula 內建 AI 助理,透過 Ollama 提供支援。
當在 config.yaml 啟用 Ollama 時,儀表板標題列會出現一個 🤖 按鈕。該面板支援多種功能,所有 AI 推論皆在本地透過 Ollama API 執行。
Kula 設計為單一二進位檔,無需安裝其他依賴,直接上傳至伺服器即可使用,非常適合需要快速啟動即時監控的場景。
提供 amd64 (x86_64) GNU/Linux 的安裝範例,並有 ARM 及 RISC-V 套件可供下載。
注意:切勿盲目在終端機貼上指令,檢查校驗碼也無法取代審查程式碼的重要性。
Kula 也可透過 Arch Linux AUR 安裝。
Snap 套件採用嚴格沙箱機制,預設功能有限,可透過 snap connect 擴充。
啟動 Kula 非常簡單,只需執行相應指令即可。
儀表板預設位於 http://localhost:27960(舊版本為 :8080),可在 config.yaml 或環境變數中更改預設埠號與監聽地址。
終端監控介面設計為快速即時讀取,非第二個網頁儀表板,能在標準終端機中顯示 CPU、記憶體、流量、儲存壓力、主機健康狀態及短期趨勢。
更多資訊請參考 Prometheus 指標。
Kula 提供輕量的存活檢查端點。
啟用認證後,Kula 會在登入後發行隨機會話令牌,僅將其雜湊值存於磁碟,並透過令牌有效期限與有效性驗證請求,而非綁定客戶端 IP 或 User-Agent。
系統初始化檔案位於 addons/init/ 目錄。
所有設定集中於 config.yaml,預設設定可參考 config.example.yaml。
若要安全更新 Kula 使用的 Go 模組至最新小版本並移除未使用依賴,可使用相關工具。
隱私是 Kula 的核心設計理念,而非事後考量。
本專案採用 GNU Affero General Public License v3.0 授權。