在Windows上部署開源的輕量級自動化運維監控工具Uptime Kuma
[重要通告]如您遇疑難雜癥,本站支持知識付費業務,掃右邊二維碼加博主微信,可節省您寶貴時間哦!
現在大家玩NAS的朋友們越來越多,是否對NAS的穩定性感到焦慮?你是否在需要用的時候,發現你的服務已經停擺許久?要是有個可以隨時隨地為你提供線上服務的健康狀況的工具就好了,這不就有了Uptime Kuma,Uptime Kuma?是一個類似 "Uptime Robot" 的自托管監控工具。
在Windows上部署開源的輕量級自動化運維監控工具Uptime Kuma
一、什么是Uptime Kuma?
Uptime Kuma 是一款開源自托管的輕量級監控工具,擁有簡潔美觀的界面和豐富的告警方式。
但在實際部署中,發現幾乎所有教程都是在寫使用Docker部署。本次是記錄一下作者提供的第二種部署方式在Windows平臺的踩坑歷程。
項目地址:https://github.com/louislam/uptime-kuma
體驗地址:https://demo.kuma.pet/start-demo (自動生成一個十分鐘的臨時項目)
特點:Uptime Kuma可以添加的監控項包括HTTP(s)、TCP、HTTP(s)關鍵詞、HTTP(s) JSON查詢、Ping、DNS記錄、推送、Docker容器運行時間、Steam游戲服務等常見網站運行參數。
支持70多種通知服務,例如阿里云短信,釘釘,企業微信,電子郵件等
二、Uptime Kuma 環境要求
① Windows 10 (x64)、Windows Server 2012 R2 (x64) 或更高版本(作者表示主流Linux也可以)
② Node.js 18 或 20.4及以上
③ NPM 9 (Nodejs自帶)
④ GIT (用于git項目到本地,沒有也可以,但是影響部署環節)
⑤ PM2 (用于在后臺運行)
三、Uptime Kuma 項目部署
① 下載項目到本地 git clone https://github.com/louislam/uptime-kuma.git ② 進入項目目錄 cd uptime-kuma ③ 設置npm鏡像源 //用于npm加速 npm config set registry https://registry.npmmirror.com/ ④ 初始化前端資源 (踩坑點) npm run setup 等同于 -如果以上命令報錯,可以嘗試手動執行以下 git checkout 1.23.15 // 切換版本。如果網絡不好或者沒有git,此條有可能報錯,可以暫時忽略 npm ci --production //安裝依賴 npm run download-dist //下載前端資源 如果以上步驟無法完成,可以嘗試以下命令 //安裝依賴 (踩坑點 node版本最好使用推薦的18或者20.4,國內最好設置鏡像加速,否則依賴有可能安裝失敗) npm install //重構前端資源 // 似乎可以替代npm run download-dist npm run build ⑤ 啟動項目 -到此項目已經可以嘗試啟動了 node server/server.js 等同于 npm run start 或 npm run start-server
成功啟動以后,訪問地址為 http://127.0.0.1:3001
⑥ 后臺運行與自啟動
// 安裝PM2管理器與PM2日志管理器 [mw_shl_code=asm,true]npm install pm2 -g && pm2 install pm2-logrotate //使用pm2啟動項目 pm2 start server/server.js --name uptime-kuma //停止項目 pm2 stop uptime-kuma
至于自啟動,木有搞,直接使用的bat執行pm2 start也可;想實現的,市面上有很多基于pm2的自啟動項目,可以自行研究
四、常見的設置項
① 端口 :在server/config.js改 搜3001
② 數據位置:data/kuma.db (使用sqline的情況下)
五、UptimeKuma 的特點包括:
- 花哨、反應式的、快速的 UI/UX:Uptime Kuma 提供了一個美觀且直觀的用戶界面,使用戶能夠輕松配置和管理監控項。
- 多種通知方式:支持通過 Telegram、Discord、Gotify、Slack、Pushover、電子郵件 (SMTP) 等多種通知服務發送警報。
- 多語言支持:支持超過 50 種語言,方便不同語言的用戶使用。
- 監控圖表信息:提供實時的監控圖表,幫助用戶更好地理解服務狀態。
- 證書信息:提供證書信息,幫助用戶了解 SSL/TLS 證書的狀態。
- 代理支持:支持通過代理進行監控,增加監控的靈活性。
- 2FA 支持:提供雙因素認證,增加賬戶的安全性。
延伸閱讀:Nagios、Zabbix、Prometheus 這三款開源的監控平臺大致分析
運維人(很多時候我們也會被大伙親切的稱為背鍋俠),基本都了解或者使用過 Nagios、Zabbix、Prometheus 這三款開源的監控平臺,三款監控工具都各有各的優缺點,如下表:
監控平臺 | 優點 | 缺點 |
Nagios | 功能豐富:Nagios支持對網絡設備、服務器、應用程序等進行全面監控,并提供豐富的監控指標和報警機制。可擴展性強:Nagios支持自定義監控插件,用戶可以根據需要添加或修改監控項,以滿足特定的監控需求 | 配置復雜:Nagios的配置相對復雜,需要一定的技術水平和經驗,對于初學者來說可能存在一定的學習成本。界面不友好:Nagios的界面設計相對簡單,且界面較為陳舊,可能不夠直觀和用戶友好,對于非技術人員來說可能不太容易上手。 |
Zabbix | 界面友好:Zabbix提供了一個基于Web的圖形化界面,易于使用和管理,適合不同技術水平的用戶。功能全面:Zabbix支持對網絡設備、服務器、應用程序等進行全面的監控,包括性能監控、故障排查、安全審計等功能。自動化配置:Zabbix支持自動發現和自動配置,可以自動添加和刪除監控對象,減少了手動配置的工作量。 | 資源消耗較大:Zabbix在監控過程中可能會消耗較多的系統資源,對于資源有限的環境來說可能存在一定的壓力。學習成本:雖然Zabbix提供了友好的界面,但對于初學者來說,仍然需要一定的時間來熟悉和掌握其使用方法和功能。 |
Prometheus | 強大的查詢語言:Prometheus提供了PromQL查詢語言,支持復雜的查詢和聚合操作,方便用戶進行靈活的數據分析和可視化。易于集成:Prometheus支持多種導出器(exporter),可以與各種主流的服務和系統進行集成,實現統一的監控和管理。云原生環境支持:Prometheus本身就是作為云原生監控出現的,所以對云原生服務發現支持具有天然優勢。 | 學習曲線陡峭:Prometheus的查詢語言和概念對于初學者來說可能較為陌生,需要一定的時間來學習和掌握。報警功能相對簡單:雖然Prometheus支持基本的報警功能,但相對于一些其他監控工具來說,其報警機制可能不夠靈活和全面。 |
估計有不少朋友都在玩各種各樣的監控軟件,大致都差不多,只要不太花里胡哨,又穩定的,就是好玩的!
問題未解決?付費解決問題加Q或微信 2589053300 (即Q號又微信號)右上方掃一掃可加博主微信
所寫所說,是心之所感,思之所悟,行之所得;文當無敷衍,落筆求簡潔。 以所舍,求所獲;有所依,方所成!